mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
api/ds/query: simplify data sources lookup for queries and expressions (#41172)
This commit is contained in:
@@ -112,7 +112,7 @@ export class QueryGroup extends PureComponent<Props, State> {
|
||||
|
||||
onChangeDataSource = async (newSettings: DataSourceInstanceSettings) => {
|
||||
const { dsSettings } = this.state;
|
||||
const queries = updateQueries(newSettings, this.state.queries, expressionDatasource.name, dsSettings);
|
||||
const queries = updateQueries(newSettings, this.state.queries, dsSettings);
|
||||
|
||||
const dataSource = await this.dataSourceSrv.get(newSettings.name);
|
||||
this.onChange({
|
||||
|
||||
@@ -22,13 +22,10 @@ import {
|
||||
} from '@grafana/data';
|
||||
import { toDataQueryError } from '@grafana/runtime';
|
||||
import { emitDataRequestEvent } from './queryAnalytics';
|
||||
import {
|
||||
dataSource as expressionDatasource,
|
||||
ExpressionDatasourceID,
|
||||
ExpressionDatasourceUID,
|
||||
} from 'app/features/expressions/ExpressionDatasource';
|
||||
import { dataSource as expressionDatasource } from 'app/features/expressions/ExpressionDatasource';
|
||||
import { ExpressionQuery } from 'app/features/expressions/types';
|
||||
import { cancelNetworkRequestsOnUnsubscribe } from './processing/canceler';
|
||||
import { isExpressionReference } from '@grafana/runtime/src/utils/DataSourceWithBackend';
|
||||
|
||||
type MapOfResponsePackets = { [str: string]: DataQueryResponse };
|
||||
|
||||
@@ -174,7 +171,7 @@ export function callQueryMethod(
|
||||
) {
|
||||
// If any query has an expression, use the expression endpoint
|
||||
for (const target of request.targets) {
|
||||
if (target.datasource === ExpressionDatasourceID || target.datasource === ExpressionDatasourceUID) {
|
||||
if (isExpressionReference(target.datasource)) {
|
||||
return expressionDatasource.query(request as DataQueryRequest<ExpressionQuery>);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user