diff options
author | vvvv <[email protected]> | 2023-06-13 12:41:43 +0300 |
---|---|---|
committer | vvvv <[email protected]> | 2023-06-13 12:41:43 +0300 |
commit | 6a63f5c36674a7d5656ab2e5f008635bad2247f4 (patch) | |
tree | 80b94d7988264ccd8144d902b745ea6af68e81ea | |
parent | 8d5fbc6b3eefbde35de61a8c6592241133e72e6e (diff) |
PG clickbench passed tests
-rw-r--r-- | ydb/library/yql/sql/pg/pg_sql.cpp | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/ydb/library/yql/sql/pg/pg_sql.cpp b/ydb/library/yql/sql/pg/pg_sql.cpp index bd4716e4b54..738a9856dea 100644 --- a/ydb/library/yql/sql/pg/pg_sql.cpp +++ b/ydb/library/yql/sql/pg/pg_sql.cpp @@ -1425,7 +1425,7 @@ public: AddError(TStringBuilder() << "VariableSetStmt, expected string literal for " << value->name << " option"); return nullptr; } - } else if (name.StartsWith("dq.") || name.StartsWith("yt.")) { + } else if (name.StartsWith("dq.") || name.StartsWith("yt.") || name.StartsWith("s3.")) { if (ListLength(value->args) != 1) { AddError(TStringBuilder() << "VariableSetStmt, expected 1 arg, but got: " << ListLength(value->args)); return nullptr; @@ -1435,7 +1435,16 @@ public: if (NodeTag(arg) == T_A_Const && (NodeTag(CAST_NODE(A_Const, arg)->val) == T_String)) { auto dotPos = name.find('.'); auto provider = name.substr(0, dotPos); - auto providerSource = L(A("DataSource"), QA(TString(name.StartsWith("dq.") ? NYql::DqProviderName : NYql::YtProviderName)), QA("$all")); + TString providerName; + if (name.StartsWith("dq.")) { + providerName = NYql::DqProviderName; + } else if (name.StartsWith("yt.")) { + providerName = NYql::YtProviderName; + } else { + providerName = NYql::S3ProviderName; + } + + auto providerSource = L(A("DataSource"), QA(providerName), QA("$all")); auto rawStr = StrVal(CAST_NODE(A_Const, arg)->val); |