diff options
| author | aneporada <[email protected]> | 2023-03-05 23:06:59 +0300 |
|---|---|---|
| committer | aneporada <[email protected]> | 2023-03-05 23:06:59 +0300 |
| commit | 43de188852f5b2e541b81a48eb17d1cc1dc35822 (patch) | |
| tree | 6f540fcdb6a7cc265cb06e86d42b25f73baa4d5e | |
| parent | 2c83c46070eaada689fbf64a3d60965cb8dd958e (diff) | |
Fix AnsiOptionalAs + new keywords
| -rw-r--r-- | ydb/library/yql/sql/v1/SQLv1.g.in | 8 | ||||
| -rw-r--r-- | ydb/library/yql/sql/v1/sql_ut.cpp | 9 |
2 files changed, 11 insertions, 6 deletions
diff --git a/ydb/library/yql/sql/v1/SQLv1.g.in b/ydb/library/yql/sql/v1/SQLv1.g.in index 124c48827f9..1b2bba95de6 100644 --- a/ydb/library/yql/sql/v1/SQLv1.g.in +++ b/ydb/library/yql/sql/v1/SQLv1.g.in @@ -791,7 +791,6 @@ id_hint: ; id_as_compat: identifier | keyword_as_compat; -keyword_as_compat: TYPE; // ANSI-aware versions of various identifiers with support double-quoted identifiers when PRAGMA AnsiQuotedIdentifiers; is present an_id: id | STRING_VALUE; @@ -895,6 +894,13 @@ keyword_hint_uncompat: | COLUMNS ; +keyword_as_compat: + DATA + | SOURCE + | TYPE +; + +// insert new keyword into keyword_as_compat also keyword_compat: ( ABORT | ACTION diff --git a/ydb/library/yql/sql/v1/sql_ut.cpp b/ydb/library/yql/sql/v1/sql_ut.cpp index e6fe98f3d9c..50a336c161c 100644 --- a/ydb/library/yql/sql/v1/sql_ut.cpp +++ b/ydb/library/yql/sql/v1/sql_ut.cpp @@ -706,7 +706,6 @@ Y_UNIT_TEST_SUITE(SqlParsingOnly) { Y_UNIT_TEST(AlterObjectNoFeatures) { NYql::TAstParseResult res = SqlToYql("USE plato; ALTER OBJECT secretId (TYPE SECRET);"); UNIT_ASSERT(!res.Root); - Cerr << Err2Str(res) << Endl; } Y_UNIT_TEST(DropObjectNoFeatures) { @@ -1191,8 +1190,6 @@ Y_UNIT_TEST_SUITE(SqlParsingOnly) { SELECT * FROM $squ2; SELECT * FROM $squ3; )"); - - Cerr << Err2Str(res) << Endl; UNIT_ASSERT(res.Root); } @@ -1207,8 +1204,6 @@ Y_UNIT_TEST_SUITE(SqlParsingOnly) { JOIN $right AS r ON l.key == r.key; )"); - - Cerr << Err2Str(res) << Endl; UNIT_ASSERT(res.Root); } @@ -4406,6 +4401,10 @@ Y_UNIT_TEST_SUITE(AnsiOptionalAs) { "SELECT a b, c FROM plato.Input;", "<main>:2:10: Error: Expecting mandatory AS here. Did you miss comma? Please add PRAGMA AnsiOptionalAs; for ANSI compatibility\n"); } + + Y_UNIT_TEST(OptionalAsWithKeywords) { + UNIT_ASSERT(SqlToYql("PRAGMA AnsiOptionalAs; SELECT a type, b data, c source FROM plato.Input;").IsOk()); + } } Y_UNIT_TEST_SUITE(SessionWindowNegative) { |
