From a889ea88ca595c184c14a3c65fe64027d9ed23a6 Mon Sep 17 00:00:00 2001 From: Ruihang Xia Date: Mon, 14 Oct 2024 11:18:59 +0800 Subject: [PATCH] fix: case sensitive for __field__ matcher (#4822) Signed-off-by: Ruihang Xia --- src/query/src/promql/planner.rs | 3 ++- .../cases/standalone/common/tql/basic.result | 27 +++++++++++++++++++ tests/cases/standalone/common/tql/basic.sql | 10 +++++++ 3 files changed, 39 insertions(+), 1 deletion(-) diff --git a/src/query/src/promql/planner.rs b/src/query/src/promql/planner.rs index ad00c900c8..bafd69aa95 100644 --- a/src/query/src/promql/planner.rs +++ b/src/query/src/promql/planner.rs @@ -805,10 +805,11 @@ impl PromPlanner { let exprs = result_set .into_iter() - .map(|col| DfExpr::Column(col.into())) + .map(|col| DfExpr::Column(Column::new_unqualified(col))) .chain(self.create_tag_column_exprs()?) .chain(Some(self.create_time_index_column_expr()?)) .collect::>(); + // reuse this variable for simplicity table_scan = LogicalPlanBuilder::from(table_scan) .project(exprs) diff --git a/tests/cases/standalone/common/tql/basic.result b/tests/cases/standalone/common/tql/basic.result index f38055ea1a..5c6725dbcd 100644 --- a/tests/cases/standalone/common/tql/basic.result +++ b/tests/cases/standalone/common/tql/basic.result @@ -123,3 +123,30 @@ DROP TABLE test; Affected Rows: 0 +CREATE TABLE test (`Field_I` DOUBLE, `Ts_J` TIMESTAMP TIME INDEX, `Tag_K` STRING PRIMARY KEY); + +Affected Rows: 0 + +INSERT INTO test VALUES (1, 1, "a"), (1, 1, "b"), (2, 2, "a"); + +Affected Rows: 3 + +TQL EVAL (0, 10, '5s') test{__field__="Field_I"}; + ++---------+-------+---------------------+ +| Field_I | Tag_K | Ts_J | ++---------+-------+---------------------+ +| 2.0 | a | 1970-01-01T00:00:05 | +| 2.0 | a | 1970-01-01T00:00:10 | +| 1.0 | b | 1970-01-01T00:00:05 | +| 1.0 | b | 1970-01-01T00:00:10 | ++---------+-------+---------------------+ + +TQL EVAL (0, 10, '5s') test{__field__="field_i"}; + +Error: 1004(InvalidArguments), Cannot find column field_i + +drop table test; + +Affected Rows: 0 + diff --git a/tests/cases/standalone/common/tql/basic.sql b/tests/cases/standalone/common/tql/basic.sql index 3cd8da8fcf..85f2948148 100644 --- a/tests/cases/standalone/common/tql/basic.sql +++ b/tests/cases/standalone/common/tql/basic.sql @@ -32,3 +32,13 @@ TQL EVAL ('1970-01-01T00:00:00'::timestamp, '1970-01-01T00:00:00'::timestamp + ' TQL EVAL (now() - now(), now() - (now() - '10 seconds'::interval), '1s') test{k="a"}; DROP TABLE test; + +CREATE TABLE test (`Field_I` DOUBLE, `Ts_J` TIMESTAMP TIME INDEX, `Tag_K` STRING PRIMARY KEY); + +INSERT INTO test VALUES (1, 1, "a"), (1, 1, "b"), (2, 2, "a"); + +TQL EVAL (0, 10, '5s') test{__field__="Field_I"}; + +TQL EVAL (0, 10, '5s') test{__field__="field_i"}; + +drop table test;