From 5d77ed00bb72f32d86767265d3f84eb2f81ec2ed Mon Sep 17 00:00:00 2001 From: Ruihang Xia Date: Sun, 23 Apr 2023 11:34:42 +0800 Subject: [PATCH] test: add basic cases for distributed TQL (#1437) * test: add basic cases for distributed TQL Signed-off-by: Ruihang Xia * drop table Signed-off-by: Ruihang Xia --------- Signed-off-by: Ruihang Xia --- src/sql/src/parsers/tql_parser.rs | 3 +- .../cases/standalone/common/tql/basic.result | 32 +++++++++++++++++++ tests/cases/standalone/common/tql/basic.sql | 12 +++++++ 3 files changed, 46 insertions(+), 1 deletion(-) create mode 100644 tests/cases/standalone/common/tql/basic.result create mode 100644 tests/cases/standalone/common/tql/basic.sql diff --git a/src/sql/src/parsers/tql_parser.rs b/src/sql/src/parsers/tql_parser.rs index 2433704fbe..8b82a9082e 100644 --- a/src/sql/src/parsers/tql_parser.rs +++ b/src/sql/src/parsers/tql_parser.rs @@ -114,7 +114,8 @@ impl<'a> ParserContext<'a> { // TODO(dennis): supports multi TQL statements separated by ';'? } - Ok(query.trim().to_string()) + // remove the last ';' or tailing space if exists + Ok(query.trim().trim_end_matches(';').to_string()) } else { Err(ParserError::ParserError(format!("{delimiter} not found",))) } diff --git a/tests/cases/standalone/common/tql/basic.result b/tests/cases/standalone/common/tql/basic.result new file mode 100644 index 0000000000..0bbbedf77f --- /dev/null +++ b/tests/cases/standalone/common/tql/basic.result @@ -0,0 +1,32 @@ +CREATE TABLE test(i DOUBLE, j TIMESTAMP TIME INDEX, 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; + ++-----+---------------------+---+ +| i | j | k | ++-----+---------------------+---+ +| 2.0 | 1970-01-01T00:00:05 | a | +| 2.0 | 1970-01-01T00:00:10 | a | +| 1.0 | 1970-01-01T00:00:05 | b | +| 1.0 | 1970-01-01T00:00:10 | b | ++-----+---------------------+---+ + +TQL EVAL (0, 10, '5s') test{k="a"}; + ++-----+---------------------+---+ +| i | j | k | ++-----+---------------------+---+ +| 2.0 | 1970-01-01T00:00:05 | a | +| 2.0 | 1970-01-01T00:00:10 | a | ++-----+---------------------+---+ + +DROP TABLE test; + +Affected Rows: 1 + diff --git a/tests/cases/standalone/common/tql/basic.sql b/tests/cases/standalone/common/tql/basic.sql new file mode 100644 index 0000000000..8ff1970a1a --- /dev/null +++ b/tests/cases/standalone/common/tql/basic.sql @@ -0,0 +1,12 @@ +CREATE TABLE test(i DOUBLE, j TIMESTAMP TIME INDEX, k STRING PRIMARY KEY); + +-- insert two points at 1ms and one point at 2ms +INSERT INTO test VALUES (1, 1, "a"), (1, 1, "b"), (2, 2, "a"); + +-- evaluate at 0s, 5s and 10s. No point at 0s. +TQL EVAL (0, 10, '5s') test; + +-- the point at 1ms will be shadowed by the point at 2ms +TQL EVAL (0, 10, '5s') test{k="a"}; + +DROP TABLE test;