diff options
author | spuchin <spuchin@ydb.tech> | 2022-10-27 12:26:10 +0300 |
---|---|---|
committer | spuchin <spuchin@ydb.tech> | 2022-10-27 12:26:10 +0300 |
commit | 2419d757a143493a853a1aacc3152e5682617468 (patch) | |
tree | 3e280fbf1cc2b730a3aed0c466e8a8dfca410a84 | |
parent | 5819083163f7e591bb0ec4fd36bc63088a59ce9d (diff) | |
download | ydb-2419d757a143493a853a1aacc3152e5682617468.tar.gz |
Restrict OldEngine execution. ()
-rw-r--r-- | ydb/core/kqp/host/kqp_runner.cpp | 4 | ||||
-rw-r--r-- | ydb/core/kqp/kqp_ic_gateway.cpp | 4 | ||||
-rw-r--r-- | ydb/core/kqp/provider/yql_kikimr_gateway_ut.cpp | 48 | ||||
-rw-r--r-- | ydb/core/sys_view/ut_kqp.cpp | 15 |
4 files changed, 8 insertions, 63 deletions
diff --git a/ydb/core/kqp/host/kqp_runner.cpp b/ydb/core/kqp/host/kqp_runner.cpp index 55ec3c395e4..fb41511d93f 100644 --- a/ydb/core/kqp/host/kqp_runner.cpp +++ b/ydb/core/kqp/host/kqp_runner.cpp @@ -294,6 +294,8 @@ public: const NKikimrKqp::TPreparedKql& kql, TExprContext& ctx, const IKikimrQueryExecutor::TExecuteSettings& settings) override { + YQL_ENSURE(false, "Unexpected query execute in OldEngine mode."); + YQL_ENSURE(queryExpr->Type() == TExprNode::World); YQL_ENSURE(cluster == Cluster); @@ -411,6 +413,8 @@ private: return PrepareQueryNewEngine(cluster, dataQuery, ctx, settings, sysColumnsEnabled); } + YQL_ENSURE(false, "Unexpected query prepare in OldEngine mode."); + // OldEngine only YQL_ENSURE(!engine.has_value() || *engine == TKqpTransactionInfo::EEngine::OldEngine); diff --git a/ydb/core/kqp/kqp_ic_gateway.cpp b/ydb/core/kqp/kqp_ic_gateway.cpp index ce236e1f75f..9002562850b 100644 --- a/ydb/core/kqp/kqp_ic_gateway.cpp +++ b/ydb/core/kqp/kqp_ic_gateway.cpp @@ -1652,16 +1652,20 @@ public: TFuture<TMkqlResult> ExecuteMkql(const TString& cluster, const TString& program, TKqpParamsMap&& params, const TMkqlSettings& settings, const TKqpSnapshot& snapshot) override { + YQL_ENSURE(false, "Unexpected exec mkql in OldEngine mode."); + return RunInternal(cluster, program, std::move(params), false, false, settings, snapshot); } TFuture<TMkqlResult> ExecuteMkqlPrepared(const TString& cluster, const TString& program, TKqpParamsMap&& params, const TMkqlSettings& settings, const TKqpSnapshot& snapshot) override { + YQL_ENSURE(false, "Unexpected exeс prepared mkql in OldEngine mode."); return RunInternal(cluster, program, std::move(params), false, true, settings, snapshot); } TFuture<TMkqlResult> PrepareMkql(const TString& cluster, const TString& program) override { + YQL_ENSURE(false, "Unexpected prepare mkql in OldEngine mode."); return RunInternal(cluster, program, TKqpParamsMap(), true, false, TMkqlSettings()); } diff --git a/ydb/core/kqp/provider/yql_kikimr_gateway_ut.cpp b/ydb/core/kqp/provider/yql_kikimr_gateway_ut.cpp index df63a72aff9..30eb9642409 100644 --- a/ydb/core/kqp/provider/yql_kikimr_gateway_ut.cpp +++ b/ydb/core/kqp/provider/yql_kikimr_gateway_ut.cpp @@ -118,48 +118,6 @@ void TestLoadTableMetadataCommon(TIntrusivePtr<IKikimrGateway> gateway) { UNIT_ASSERT_VALUES_EQUAL(metadata.KeyColumnNames[1], "UserSubkey"); } -void TestRunSimpleCommon(TIntrusivePtr<IKqpGateway> gateway) { - const TString program(R"( - ( - (let key '( - '('Group (Uint32 '1)) - '('Name (String 'Paul)) - )) - (let row '( - 'Group - 'Name - 'Amount - )) - (let table '( - '"/Root/Test/TestTable2" - '"0" - '"" - )) - (let data (SelectRow table key row)) - (let r (SetResult 'Result data)) - (let pgmReturn (AsList r)) - (return pgmReturn) - ) - )"); - - auto responseFuture = gateway->ExecuteMkql(TestCluster, program, TKqpParamsMap(), - IKqpGateway::TMkqlSettings(), IKqpGateway::TKqpSnapshot::InvalidSnapshot); - responseFuture.Wait(); - auto response = responseFuture.GetValue(); - response.Issues().PrintTo(Cerr); - UNIT_ASSERT(response.Success()); - - auto result = ConvertResult(response.Result.GetValue(), response.Result.GetType()); - const TOptional resOpt = result.GetMember<TOptional>("Result"); - UNIT_ASSERT(resOpt.HasItem()); - const TOptional rowOpt = resOpt.GetItem<TOptional>(); - UNIT_ASSERT(rowOpt.HasItem()); - TStruct row = rowOpt.GetItem<TStruct>(); - UNIT_ASSERT_VALUES_EQUAL(row.GetMember<TOptional>("Group").GetItem<ui32>(), 1); - UNIT_ASSERT_VALUES_EQUAL(row.GetMember<TOptional>("Name").GetItem<TStringBuf>(), "Paul"); - UNIT_ASSERT_VALUES_EQUAL(row.GetMember<TOptional>("Amount").GetItem<ui64>(), 300); -} - void CheckPolicies(Tests::TClient& client, const TString& tableName) { auto describeResult = client.Ls(tableName); UNIT_ASSERT(describeResult->Record.GetPathDescription().HasTableStats()); @@ -320,12 +278,6 @@ Y_UNIT_TEST_SUITE(KikimrIcGateway) { TestLoadTableMetadataCommon(GetIcGateway(kikimr.GetTestServer())); } - Y_UNIT_TEST(TestRunSimple) { - TKikimrRunner kikimr(NKqp::TKikimrSettings().SetWithSampleTables(false)); - CreateSampleTables(kikimr); - TestRunSimpleCommon(GetIcGateway(kikimr.GetTestServer())); - } - Y_UNIT_TEST(TestCreateTable) { TKikimrRunner kikimr(NKqp::TKikimrSettings().SetWithSampleTables(false)); CreateSampleTables(kikimr); diff --git a/ydb/core/sys_view/ut_kqp.cpp b/ydb/core/sys_view/ut_kqp.cpp index 01ff0e916e2..db28272aa77 100644 --- a/ydb/core/sys_view/ut_kqp.cpp +++ b/ydb/core/sys_view/ut_kqp.cpp @@ -1335,21 +1335,6 @@ Y_UNIT_TEST_SUITE(SystemView) { } } - Y_UNIT_TEST(OldEngineSystemView) { - TTestEnv env; - CreateRootTable(env); - - TTableClient client(env.GetDriver()); - auto session = client.CreateSession().GetValueSync().GetSession(); - auto result = session.ExecuteDataQuery( - "PRAGMA Kikimr.UseNewEngine='false'; " - "SELECT * from `/Root/.sys/partition_stats`", TTxControl::BeginTx().CommitTx() - ).GetValueSync(); - - UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::GENERIC_ERROR); - result.GetIssues().PrintTo(Cerr); - } - Y_UNIT_TEST(Describe) { TTestEnv env; CreateRootTable(env); |