From 75e435fb00942483c421d052066225b9f5fe9ce4 Mon Sep 17 00:00:00 2001 From: Oscar Kilhed Date: Fri, 11 Nov 2022 22:41:38 +0100 Subject: [PATCH] SQL: Fix issue where testing the datasource would always be successful if the `datasourceQueryMultiStatus` feature was enabled (#58671) SQL Datasources: fix issue where testing the datasource connection would show success even when there was an error. Co-authored-by: Victor Marin --- .../plugins/sql/datasource/SqlDatasource.ts | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/public/app/features/plugins/sql/datasource/SqlDatasource.ts b/public/app/features/plugins/sql/datasource/SqlDatasource.ts index bc341e3f98e..9a71dbe11bc 100644 --- a/public/app/features/plugins/sql/datasource/SqlDatasource.ts +++ b/public/app/features/plugins/sql/datasource/SqlDatasource.ts @@ -165,9 +165,10 @@ export abstract class SqlDatasource extends DataSourceWithBackend { + const refId = 'A'; return lastValueFrom( getBackendSrv() - .fetch({ + .fetch({ url: '/api/ds/query', method: 'POST', data: { @@ -175,7 +176,7 @@ export abstract class SqlDatasource extends DataSourceWithBackend ({ status: 'success', message: 'Database Connection OK' })), + map((r) => { + const error = r.data.results[refId].error; + if (error) { + return { status: 'error', message: error }; + } + return { status: 'success', message: 'Database Connection OK' }; + }), catchError((err) => { return of(toTestingStatus(err)); })