diff options
author | vvvv <vvvv@ydb.tech> | 2023-02-17 19:15:37 +0300 |
---|---|---|
committer | vvvv <vvvv@ydb.tech> | 2023-02-17 19:15:37 +0300 |
commit | 6e9a0973df677fc99a797c1b48c579b71d2c46a1 (patch) | |
tree | 7d07dd89661642cdcd8f16fc98d3d9277fb9de4d | |
parent | 458c063b727f8f733c8d546deeadc8025a5eb8b9 (diff) | |
download | ydb-6e9a0973df677fc99a797c1b48c579b71d2c46a1.tar.gz |
test for user libraries
-rw-r--r-- | ydb/library/yql/core/yql_library_compiler.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/ydb/library/yql/core/yql_library_compiler.cpp b/ydb/library/yql/core/yql_library_compiler.cpp index c5cf012d7a..7145b8c715 100644 --- a/ydb/library/yql/core/yql_library_compiler.cpp +++ b/ydb/library/yql/core/yql_library_compiler.cpp @@ -1,6 +1,8 @@ #include "yql_library_compiler.h" #include "yql_expr_optimize.h" +#include <ydb/library/yql/sql/sql.h> + #include <util/system/file.h> #include <unordered_set> @@ -89,7 +91,15 @@ bool OptimizeLibrary(TLibraryCohesion& cohesion, TExprContext& ctx) { bool CompileLibrary(const TString& alias, const TString& script, TExprContext& ctx, TLibraryCohesion& cohesion, bool optimize) { - const auto& res = ParseAst(script, nullptr, alias); + TAstParseResult res; + if (alias.EndsWith(".sql")) { + NSQLTranslation::TTranslationSettings translationSettings; + translationSettings.SyntaxVersion = 1; + translationSettings.Mode = NSQLTranslation::ESqlMode::LIBRARY; + res = NSQLTranslation::SqlToYql(script, translationSettings); + } else { + res = ParseAst(script, nullptr, alias); + } if (!res.IsOk()) { for (const auto& originalError : res.Issues) { TIssue error(originalError); |