Skip to content

Commit df9f894

Browse files
authored
Merge pull request #107 from questdb/update-query-builder-settings
Enclose variables in quotes
2 parents 002b2be + d09adb7 commit df9f894

File tree

7 files changed

+584
-440
lines changed

7 files changed

+584
-440
lines changed

CHANGELOG.md

+8
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,14 @@ and this project adheres to
1616
- `Fixed` for any bug fixes.
1717
- `Security` in case of vulnerabilities.
1818

19+
## 0.1.4
20+
21+
## Changed
22+
23+
- Enclose variables and column names in quotes in the generated SQL [#107](https://github.com/questdb/grafana-questdb-datasource/pull/107)
24+
- Add VARCHAR type [#107](https://github.com/questdb/grafana-questdb-datasource/pull/107)
25+
- Update docker-compose yaml to use QuestDB 8.0.3 [#107](https://github.com/questdb/grafana-questdb-datasource/pull/107)
26+
1927
## 0.1.3
2028

2129
## Changed

docker-compose.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ services:
1616
- grafana
1717

1818
questdb:
19-
image: 'questdb/questdb:7.3.9'
19+
image: 'questdb/questdb:8.0.3'
2020
container_name: 'grafana-questdb-server'
2121
ports:
2222
- '8812:8812'
@@ -29,4 +29,4 @@ services:
2929
- grafana
3030

3131
networks:
32-
grafana:
32+
grafana:

package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "questdb-questdb-datasource",
3-
"version": "0.1.3",
3+
"version": "0.1.4",
44
"description": "QuestDB Datasource for Grafana",
55
"engines": {
66
"node": ">=18"

src/components/QueryTypeSwitcher.tsx

+10-5
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
import React, { useState } from 'react';
2-
import { SelectableValue } from '@grafana/data';
2+
import { SelectableValue, VariableWithMultiSupport } from '@grafana/data';
33
import { RadioButtonGroup, ConfirmModal } from '@grafana/ui';
44
import { getQueryOptionsFromSql, getSQLFromQueryOptions } from './queryBuilder/utils';
55
import { selectors } from './../selectors';
66
import { QuestDBQuery, QueryType, defaultBuilderQuery, SqlBuilderOptions, QuestDBSQLQuery } from 'types';
77
import { isString } from 'lodash';
8-
import {Datasource} from "../data/QuestDbDatasource";
8+
import { Datasource } from '../data/QuestDbDatasource';
9+
import { getTemplateSrv } from '@grafana/runtime';
910

1011
interface QueryTypeSwitcherProps {
1112
query: QuestDBQuery;
@@ -26,6 +27,8 @@ export const QueryTypeSwitcher = ({ query, onChange, datasource }: QueryTypeSwit
2627
{ label: queryTypeLabels.QueryBuilder, value: QueryType.Builder },
2728
];
2829
const [errorMessage, setErrorMessage] = useState<string>('');
30+
const templateVars = getTemplateSrv().getVariables() as VariableWithMultiSupport[];
31+
2932
async function onQueryTypeChange(queryType: QueryType, confirm = false) {
3033
if (query.queryType === QueryType.SQL && queryType === QueryType.Builder && !confirm) {
3134
const queryOptionsFromSql = await getQueryOptionsFromSql(query.rawSql);
@@ -43,7 +46,9 @@ export const QueryTypeSwitcher = ({ query, onChange, datasource }: QueryTypeSwit
4346
builderOptions = query.builderOptions;
4447
break;
4548
case QueryType.SQL:
46-
builderOptions = (await getQueryOptionsFromSql(query.rawSql, datasource) as SqlBuilderOptions) || defaultBuilderQuery.builderOptions;
49+
builderOptions =
50+
((await getQueryOptionsFromSql(query.rawSql, datasource)) as SqlBuilderOptions) ||
51+
defaultBuilderQuery.builderOptions;
4752
break;
4853
default:
4954
builderOptions = defaultBuilderQuery.builderOptions;
@@ -53,13 +58,13 @@ export const QueryTypeSwitcher = ({ query, onChange, datasource }: QueryTypeSwit
5358
onChange({
5459
...query,
5560
queryType,
56-
rawSql: getSQLFromQueryOptions(builderOptions),
61+
rawSql: getSQLFromQueryOptions(builderOptions, templateVars),
5762
meta: { builderOptions },
5863
format: query.format,
5964
selectedFormat: query.selectedFormat,
6065
});
6166
} else if (queryType === QueryType.Builder) {
62-
onChange({ ...query, queryType, rawSql: getSQLFromQueryOptions(builderOptions), builderOptions });
67+
onChange({ ...query, queryType, rawSql: getSQLFromQueryOptions(builderOptions, templateVars), builderOptions });
6368
}
6469
}
6570
}

0 commit comments

Comments
 (0)