diff options
author | Sergei Puchin <s.puchin@gmail.com> | 2022-02-16 15:48:22 +0300 |
---|---|---|
committer | Sergei Puchin <s.puchin@gmail.com> | 2022-02-16 15:48:22 +0300 |
commit | b95ffa12c2d7a36459f4317bd68e9b77451c5993 (patch) | |
tree | bef3a8bc8db33cb70e8127070d537ac80300993d | |
parent | 7ac7666495e3f3ab80bd93ed6bf29755d90b54c4 (diff) | |
download | ydb-b95ffa12c2d7a36459f4317bd68e9b77451c5993.tar.gz |
Allow pragma warning for YDB queries. (KIKIMR-14258)
ref:4252c0f1c18fb1cd784e529dee008fb143471991
-rw-r--r-- | ydb/core/kqp/host/kqp_host.cpp | 5 | ||||
-rw-r--r-- | ydb/core/kqp/ut/kqp_pragma_ut.cpp | 15 |
2 files changed, 19 insertions, 1 deletions
diff --git a/ydb/core/kqp/host/kqp_host.cpp b/ydb/core/kqp/host/kqp_host.cpp index 44af6d11682..b35a0772597 100644 --- a/ydb/core/kqp/host/kqp_host.cpp +++ b/ydb/core/kqp/host/kqp_host.cpp @@ -1065,7 +1065,10 @@ public: // Config provider const TGatewaysConfig* gatewaysConfig = nullptr; // TODO: can we get real gatewaysConfig here? auto allowSettings = [](TStringBuf settingName) { - return settingName == "OrderedColumns" || settingName == "DisableOrderedColumns"; + return + settingName == "OrderedColumns" || + settingName == "DisableOrderedColumns" || + settingName == "Warning"; }; auto configProvider = CreateConfigProvider(*TypesCtx, gatewaysConfig, allowSettings); TypesCtx->AddDataSource(ConfigProviderName, configProvider); diff --git a/ydb/core/kqp/ut/kqp_pragma_ut.cpp b/ydb/core/kqp/ut/kqp_pragma_ut.cpp index cdf99e40430..9d2fd4c53c8 100644 --- a/ydb/core/kqp/ut/kqp_pragma_ut.cpp +++ b/ydb/core/kqp/ut/kqp_pragma_ut.cpp @@ -96,6 +96,21 @@ Y_UNIT_TEST_SUITE(KqpPragma) { [[3u];[2u];[1u]] ])", FormatResultSetYson(result.GetResultSet(0))); } + + Y_UNIT_TEST_NEW_ENGINE(Warning) { + TKikimrRunner kikimr; + auto db = kikimr.GetTableClient(); + auto session = db.CreateSession().GetValueSync().GetSession(); + + auto result = session.ExecuteDataQuery(Q1_(R"( + PRAGMA Warning("disable", "1108"); + + SELECT * FROM `/Root/KeyValue` WHERE Key IN (1, 2); + )"), TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); + + UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); + UNIT_ASSERT_C(result.GetIssues().Empty(), result.GetIssues().ToString()); + } } } // namspace NKqp |