diff options
author | spuchin <spuchin@ydb.tech> | 2022-10-26 21:19:38 +0300 |
---|---|---|
committer | spuchin <spuchin@ydb.tech> | 2022-10-26 21:19:38 +0300 |
commit | d0bbfbccc385801bbeafb08e22170c8b3349f51d (patch) | |
tree | b4060e7226b93d9b527c077f27ea3ce7cda7e9b0 | |
parent | c943ac86caeb0daa18266c601b4c7314c2d34e81 (diff) | |
download | ydb-d0bbfbccc385801bbeafb08e22170c8b3349f51d.tar.gz |
Disable OldEngine coverage in KQP UTs. ()
35 files changed, 717 insertions, 2158 deletions
diff --git a/ydb/core/kqp/ut/common/kqp_ut_common.cpp b/ydb/core/kqp/ut/common/kqp_ut_common.cpp index 19d4a173e33..0dd55ca0d03 100644 --- a/ydb/core/kqp/ut/common/kqp_ut_common.cpp +++ b/ydb/core/kqp/ut/common/kqp_ut_common.cpp @@ -291,7 +291,6 @@ void TKikimrRunner::CreateSampleTables() { )").GetValueSync()); AssertSuccessResult(session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; REPLACE INTO `TwoShard` (Key, Value1, Value2) VALUES (1u, "One", -1), @@ -883,7 +882,6 @@ void CreateSampleTablesWithIndex(TSession& session) { UNIT_ASSERT_C(res.IsSuccess(), res.GetIssues().ToString()); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; REPLACE INTO `KeyValue` (Key, Value) VALUES (3u, "Three"), @@ -928,7 +926,6 @@ void WaitForKqpProxyInit(const NYdb::TDriver& driver) { while (true) { auto it = client.RetryOperationSync([=](TSession session) { return session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT 1; )", TTxControl::BeginTx().CommitTx() diff --git a/ydb/core/kqp/ut/common/kqp_ut_common.h b/ydb/core/kqp/ut/common/kqp_ut_common.h index cf4a95efefd..87f6c8f9762 100644 --- a/ydb/core/kqp/ut/common/kqp_ut_common.h +++ b/ydb/core/kqp/ut/common/kqp_ut_common.h @@ -37,8 +37,6 @@ template <bool OPT> \ void TTestCase##N<OPT>::Execute_(NUnitTest::TTestContext& ut_context Y_DECLARE_UNUSED) -#define Y_UNIT_TEST_NEW_ENGINE(N) Y_UNIT_TEST_TWIN(N, UseNewEngine) - #define Y_UNIT_TEST_QUAD(N, OPT1, OPT2) \ template<bool OPT1, bool OPT2> void N(NUnitTest::TTestContext&); \ struct TTestRegistration##N { \ @@ -53,17 +51,15 @@ template<bool OPT1, bool OPT2> \ void N(NUnitTest::TTestContext&) -template <bool UseNewEngine, bool ForceVersionV1 = false> +template <bool ForceVersionV1> TString Query(const TString& tmpl) { return TStringBuilder() << (ForceVersionV1 ? "--!syntax_v1\n" : "") - << "PRAGMA Kikimr.UseNewEngine = '" << (UseNewEngine ? "true" : "false") << "';" << Endl - //<< (UseNewEngine ? "PRAGMA Kikimr.UseNewEngine = 'true';" : "") << tmpl; } -#define Q_(expr) Query<UseNewEngine, false>(expr) -#define Q1_(expr) Query<UseNewEngine, true>(expr) +#define Q_(expr) Query<false>(expr) +#define Q1_(expr) Query<true>(expr) namespace NKikimr { namespace NKqp { diff --git a/ydb/core/kqp/ut/kqp_acl_ut.cpp b/ydb/core/kqp/ut/kqp_acl_ut.cpp index 6d774d54a6e..e4bf99bf78b 100644 --- a/ydb/core/kqp/ut/kqp_acl_ut.cpp +++ b/ydb/core/kqp/ut/kqp_acl_ut.cpp @@ -17,7 +17,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngineAcl) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard`; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::SCHEME_ERROR); @@ -46,7 +45,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngineAcl) { { auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard`; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); // TODO: Should be UNAUTHORIZED @@ -54,7 +52,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngineAcl) { } { auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; UPSERT INTO `/Root/TwoShard` (Key, Value1, Value2) VALUES (10u, "One", -10); )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); @@ -87,7 +84,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngineAcl) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard`; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); AssertSuccessResult(result); @@ -116,7 +112,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngineAcl) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; UPSERT INTO `/Root/TwoShard` (Key, Value1, Value2) VALUES (10u, "One", -10); )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); @@ -147,7 +142,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngineAcl) { auto session = db.CreateSession().GetValueSync().GetSession(); const char* queryTmpl = R"( - PRAGMA kikimr.UseNewEngine = "true"; CREATE TABLE `/Root/PQ/%s` ( id Int64, name String, diff --git a/ydb/core/kqp/ut/kqp_explain_ut.cpp b/ydb/core/kqp/ut/kqp_explain_ut.cpp index 949e96167e4..706825b6f00 100644 --- a/ydb/core/kqp/ut/kqp_explain_ut.cpp +++ b/ydb/core/kqp/ut/kqp_explain_ut.cpp @@ -111,7 +111,6 @@ Y_UNIT_TEST_SUITE(KqpExplain) { auto it = db.StreamExecuteScanQuery(R"( --SELECT count(*) FROM `/Root/EightShard` AS t JOIN `/Root/KeyValue` AS kv ON t.Data = kv.Key; - PRAGMA Kikimr.UseNewEngine = "false"; DECLARE $value as Utf8; SELECT $value as value; )", settings).GetValueSync(); @@ -437,7 +436,6 @@ Y_UNIT_TEST_SUITE(KqpExplain) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExplainDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT Key, Value FROM `/Root/KeyValue` WHERE Key IN (1, 2, 3, 42) ORDER BY Key; SELECT Key, Value FROM `/Root/KeyValue` WHERE Key IN (1, 2, 3, 4*2) ORDER BY Key; SELECT count(distinct Value) FROM `/Root/KeyValue` WHERE Key > 20 and Key <= 120; @@ -462,7 +460,6 @@ Y_UNIT_TEST_SUITE(KqpExplain) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExplainDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; UPDATE `/Root/EightShard` SET Data=Data+1; UPDATE `/Root/EightShard` SET Data=Data-1 WHERE Key In (100,200,300); DELETE FROM `/Root/EightShard` WHERE Key > 350; @@ -516,14 +513,12 @@ Y_UNIT_TEST_SUITE(KqpExplain) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExplainDataQuery(R"( - PRAGMA Kikimr.UseNewEngine = "false"; DECLARE $value as Utf8; SELECT $value as value; )").ExtractValueSync(); UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); auto result2 = session.ExplainDataQuery(R"( - PRAGMA Kikimr.UseNewEngine = "true"; DECLARE $value as Utf8; SELECT $value as value; )").ExtractValueSync(); diff --git a/ydb/core/kqp/ut/kqp_flip_join_ut.cpp b/ydb/core/kqp/ut/kqp_flip_join_ut.cpp index 4ddeb365ef1..6ff608b19bb 100644 --- a/ydb/core/kqp/ut/kqp_flip_join_ut.cpp +++ b/ydb/core/kqp/ut/kqp_flip_join_ut.cpp @@ -78,7 +78,6 @@ Y_UNIT_TEST_SUITE(KqpFlipJoin) { auto test = [&](bool disableFlip, std::function<void(const TDataQueryResult&)> assertFn) { // join on key-column of left table and non-key column of right one const TString query = Sprintf(R"( - PRAGMA Kikimr.UseNewEngine = 'false'; %s SELECT t1.Value, t2.Value FROM `/Root/FJ_Table_1` AS t1 @@ -97,13 +96,13 @@ Y_UNIT_TEST_SUITE(KqpFlipJoin) { }); test(EnableJoinFlip, [](const TDataQueryResult& result) { - AssertTableReads(result, "/Root/FJ_Table_1", 2); + AssertTableReads(result, "/Root/FJ_Table_1", 4); AssertTableReads(result, "/Root/FJ_Table_2", 2); }); } // hierarchy of joins, flip on the last layer - Y_UNIT_TEST_NEW_ENGINE(Inner_2) { + Y_UNIT_TEST(Inner_2) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -133,13 +132,13 @@ Y_UNIT_TEST_SUITE(KqpFlipJoin) { test(EnableJoinFlip, [](const TDataQueryResult& result) { AssertTableReads(result, "/Root/FJ_Table_2", 2); - AssertTableReads(result, "/Root/FJ_Table_3", UseNewEngine ? 4 : 2); + AssertTableReads(result, "/Root/FJ_Table_3", 4); AssertTableReads(result, "/Root/FJ_Table_4", 1); }); } // hierarchy of joins, flip on the top layer - Y_UNIT_TEST_NEW_ENGINE(Inner_3) { + Y_UNIT_TEST(Inner_3) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -174,12 +173,12 @@ Y_UNIT_TEST_SUITE(KqpFlipJoin) { test(EnableJoinFlip, [](const TDataQueryResult& result) { AssertTableReads(result, "/Root/FJ_Table_1", 4); AssertTableReads(result, "/Root/FJ_Table_2", 2); - AssertTableReads(result, "/Root/FJ_Table_3", UseNewEngine ? 4 : 2); + AssertTableReads(result, "/Root/FJ_Table_3", 4); }); } // simple left semi join, only 2 tables - Y_UNIT_TEST_NEW_ENGINE(LeftSemi_1) { + Y_UNIT_TEST(LeftSemi_1) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -211,7 +210,7 @@ Y_UNIT_TEST_SUITE(KqpFlipJoin) { } // hierarchy of joins, flip on the last layer - Y_UNIT_TEST_NEW_ENGINE(LeftSemi_2) { + Y_UNIT_TEST(LeftSemi_2) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -246,7 +245,7 @@ Y_UNIT_TEST_SUITE(KqpFlipJoin) { } // hierarchy of joins, flip on the top layer - Y_UNIT_TEST_NEW_ENGINE(LeftSemi_3) { + Y_UNIT_TEST(LeftSemi_3) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -286,7 +285,7 @@ Y_UNIT_TEST_SUITE(KqpFlipJoin) { } // simple right semi join, only 2 tables - Y_UNIT_TEST_NEW_ENGINE(RightSemi_1) { + Y_UNIT_TEST(RightSemi_1) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -312,13 +311,13 @@ Y_UNIT_TEST_SUITE(KqpFlipJoin) { }); test(EnableJoinFlip, [](const TDataQueryResult& result) { - AssertTableReads(result, "/Root/FJ_Table_1", UseNewEngine ? 4 : 2); + AssertTableReads(result, "/Root/FJ_Table_1", 4); AssertTableReads(result, "/Root/FJ_Table_2", 2); }); } // hierarchy of joins, flip on the last layer - Y_UNIT_TEST_NEW_ENGINE(RightSemi_2) { + Y_UNIT_TEST(RightSemi_2) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -347,14 +346,14 @@ Y_UNIT_TEST_SUITE(KqpFlipJoin) { }); test(EnableJoinFlip, [](const TDataQueryResult& result) { - AssertTableReads(result, "/Root/FJ_Table_1", UseNewEngine ? 4 : 2); + AssertTableReads(result, "/Root/FJ_Table_1", 4); AssertTableReads(result, "/Root/FJ_Table_2", 2); AssertTableReads(result, "/Root/FJ_Table_3", 4); }); } // hierarchy of joins, flip on the top layer - Y_UNIT_TEST_NEW_ENGINE(RightSemi_3) { + Y_UNIT_TEST(RightSemi_3) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -389,7 +388,7 @@ Y_UNIT_TEST_SUITE(KqpFlipJoin) { test(EnableJoinFlip, [](const TDataQueryResult& result) { AssertTableReads(result, "/Root/FJ_Table_1", 4); AssertTableReads(result, "/Root/FJ_Table_2", 2); - AssertTableReads(result, "/Root/FJ_Table_3", UseNewEngine ? 4 : 2); + AssertTableReads(result, "/Root/FJ_Table_3", 4); }); } @@ -403,7 +402,6 @@ Y_UNIT_TEST_SUITE(KqpFlipJoin) { auto test = [&](bool disableFlip, std::function<void(const TDataQueryResult&)> assertFn) { const TString query = Sprintf(R"( - PRAGMA Kikimr.UseNewEngine = 'false'; %s SELECT t2.Value FROM `/Root/FJ_Table_1` AS t1 @@ -421,7 +419,7 @@ Y_UNIT_TEST_SUITE(KqpFlipJoin) { }); test(EnableJoinFlip, [](const TDataQueryResult& result) { - AssertTableReads(result, "/Root/FJ_Table_1", 2); + AssertTableReads(result, "/Root/FJ_Table_1", 4); AssertTableReads(result, "/Root/FJ_Table_2", 2); }); } @@ -436,7 +434,6 @@ Y_UNIT_TEST_SUITE(KqpFlipJoin) { auto test = [&](bool disableFlip, std::function<void(const TDataQueryResult&)> assertFn) { const TString query = Sprintf(R"( - PRAGMA Kikimr.UseNewEngine = 'false'; %s SELECT t3.Key, t3.Value FROM `/Root/FJ_Table_1` AS t1 @@ -457,7 +454,7 @@ Y_UNIT_TEST_SUITE(KqpFlipJoin) { }); test(EnableJoinFlip, [](const TDataQueryResult& result) { - AssertTableReads(result, "/Root/FJ_Table_1", 2); + AssertTableReads(result, "/Root/FJ_Table_1", 4); AssertTableReads(result, "/Root/FJ_Table_2", 2); AssertTableReads(result, "/Root/FJ_Table_3", 4); }); @@ -473,7 +470,6 @@ Y_UNIT_TEST_SUITE(KqpFlipJoin) { auto test = [&](bool disableFlip, std::function<void(const TDataQueryResult&)> assertFn) { const TString query = Sprintf(R"( - PRAGMA Kikimr.UseNewEngine = 'false'; %s $join = ( SELECT t1.Value AS Value1, t2.Value AS Value2, t1.Fk3 AS Fk3 @@ -500,7 +496,7 @@ Y_UNIT_TEST_SUITE(KqpFlipJoin) { test(EnableJoinFlip, [](const TDataQueryResult& result) { AssertTableReads(result, "/Root/FJ_Table_1", 4); AssertTableReads(result, "/Root/FJ_Table_2", 2); - AssertTableReads(result, "/Root/FJ_Table_3", 2); + AssertTableReads(result, "/Root/FJ_Table_3", 4); }); } @@ -514,7 +510,6 @@ Y_UNIT_TEST_SUITE(KqpFlipJoin) { auto test = [&](bool disableFlip, std::function<void(const TDataQueryResult&)> assertFn) { const TString query = Sprintf(R"( - PRAGMA Kikimr.UseNewEngine = 'false'; %s SELECT t2.Value FROM `/Root/FJ_Table_3` AS t1 @@ -533,7 +528,7 @@ Y_UNIT_TEST_SUITE(KqpFlipJoin) { test(EnableJoinFlip, [](const TDataQueryResult& result) { AssertTableReads(result, "/Root/FJ_Table_2", 2); - AssertTableReads(result, "/Root/FJ_Table_3", 2); + AssertTableReads(result, "/Root/FJ_Table_3", 4); }); } @@ -547,7 +542,6 @@ Y_UNIT_TEST_SUITE(KqpFlipJoin) { auto test = [&](bool disableFlip, std::function<void(const TDataQueryResult&)> assertFn) { const TString query = Sprintf(R"( - PRAGMA Kikimr.UseNewEngine = 'false'; %s $join = ( SELECT t2.Key AS Key, t2.Fk1 AS Fk1, t2.Fk2 AS Fk2, t2.Value AS Value @@ -571,7 +565,7 @@ Y_UNIT_TEST_SUITE(KqpFlipJoin) { }); test(EnableJoinFlip, [](const TDataQueryResult& result) { - AssertTableReads(result, "/Root/FJ_Table_1", 3); + AssertTableReads(result, "/Root/FJ_Table_1", 4); AssertTableReads(result, "/Root/FJ_Table_2", 0); AssertTableReads(result, "/Root/FJ_Table_3", 4); }); @@ -587,7 +581,6 @@ Y_UNIT_TEST_SUITE(KqpFlipJoin) { auto test = [&](bool disableFlip, std::function<void(const TDataQueryResult&)> assertFn) { const TString query = Sprintf(R"( - PRAGMA Kikimr.UseNewEngine = 'false'; %s $join = ( SELECT t1.Value AS Value1, t2.Value AS Value2, t1.Fk3 AS Fk3 @@ -614,7 +607,7 @@ Y_UNIT_TEST_SUITE(KqpFlipJoin) { test(EnableJoinFlip, [](const TDataQueryResult& result) { AssertTableReads(result, "/Root/FJ_Table_1", 4); AssertTableReads(result, "/Root/FJ_Table_2", 2); - AssertTableReads(result, "/Root/FJ_Table_4", 1); + AssertTableReads(result, "/Root/FJ_Table_4", 3); }); } diff --git a/ydb/core/kqp/ut/kqp_index_lookup_join_ut.cpp b/ydb/core/kqp/ut/kqp_index_lookup_join_ut.cpp index f439042f15a..da4fcf51491 100644 --- a/ydb/core/kqp/ut/kqp_index_lookup_join_ut.cpp +++ b/ydb/core/kqp/ut/kqp_index_lookup_join_ut.cpp @@ -10,7 +10,6 @@ using namespace NYdb::NTable; void PrepareTables(TSession session) { UNIT_ASSERT(session.ExecuteSchemeQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; CREATE TABLE `/Root/Left` ( Key Int32, Fk Int32, @@ -45,7 +44,6 @@ void PrepareTables(TSession session) { )").GetValueSync().IsSuccess()); UNIT_ASSERT(session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; REPLACE INTO `/Root/Left` (Key, Fk, Value) VALUES (1, 101, "Value1"), @@ -84,7 +82,6 @@ void PrepareTables(TSession session) { Y_UNIT_TEST_SUITE(KqpIndexLookupJoin) { -template <bool UseNewEngine> void Test(const TString& query, const TString& answer, size_t rightTableReads) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); @@ -101,24 +98,22 @@ void Test(const TString& query, const TString& answer, size_t rightTableReads) { CompareYson(answer, FormatResultSetYson(result.GetResultSet(0))); auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), kikimr.IsUsingSnapshotReads() && !UseNewEngine ? 2 : 3); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access().size(), 1); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).name(), "/Root/Left"); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).reads().rows(), 5); ui32 index = 1; - if (UseNewEngine) { - UNIT_ASSERT(stats.query_phases(1).table_access().empty()); // keys extraction for lookups - index = 2; - } + UNIT_ASSERT(stats.query_phases(1).table_access().empty()); // keys extraction for lookups + index = 2; UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(index).table_access().size(), 1); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(index).table_access(0).name(), "/Root/Right"); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(index).table_access(0).reads().rows(), rightTableReads); } -Y_UNIT_TEST_NEW_ENGINE(MultiJoins) { +Y_UNIT_TEST(MultiJoins) { TString query = R"( SELECT main.idx_processId AS `processId`, main.idx_launchNumber AS `launchNumber` @@ -161,8 +156,8 @@ Y_UNIT_TEST_NEW_ENGINE(MultiJoins) { CompareYson(answer, FormatResultSetYson(result.GetResultSet(0))); } -Y_UNIT_TEST_NEW_ENGINE(Inner) { - Test<UseNewEngine>( +Y_UNIT_TEST(Inner) { + Test( R"( SELECT l.Key, l.Fk, l.Value, r.Key, r.Value FROM `/Root/Left` AS l @@ -173,12 +168,11 @@ Y_UNIT_TEST_NEW_ENGINE(Inner) { )", R"([ [[1];[101];["Value1"];[101];["Value21"]] - ])", - 2); + ])", 2); } -Y_UNIT_TEST_NEW_ENGINE(Left) { - Test<UseNewEngine>( +Y_UNIT_TEST(Left) { + Test( R"( SELECT l.Key, l.Fk, l.Value, r.Key, r.Value FROM `/Root/Left` AS l @@ -191,12 +185,11 @@ Y_UNIT_TEST_NEW_ENGINE(Left) { [[3];[103];["Value2"];[103];["Value23"]]; [[4];[104];["Value2"];#;#]; [[5];[105];["Value3"];#;#] - ])", - 1); + ])", 1); } -Y_UNIT_TEST_NEW_ENGINE(LeftOnly) { - Test<UseNewEngine>( +Y_UNIT_TEST(LeftOnly) { + Test( R"( SELECT l.Key, l.Fk, l.Value FROM `/Root/Left` AS l @@ -208,12 +201,11 @@ Y_UNIT_TEST_NEW_ENGINE(LeftOnly) { R"([ [[4];[104];["Value2"]]; [[5];[105];["Value3"]] - ])", - UseNewEngine ? 1 : 3); + ])", 1); } -Y_UNIT_TEST_NEW_ENGINE(LeftSemi) { - Test<UseNewEngine>( +Y_UNIT_TEST(LeftSemi) { + Test( R"( SELECT l.Key, l.Fk, l.Value FROM `/Root/Left` AS l @@ -223,12 +215,11 @@ Y_UNIT_TEST_NEW_ENGINE(LeftSemi) { )", R"([ [[3];[103];["Value2"]] - ])", - UseNewEngine ? 1 : 3); + ])", 1); } -Y_UNIT_TEST_NEW_ENGINE(RightSemi) { - Test<UseNewEngine>( +Y_UNIT_TEST(RightSemi) { + Test( R"( SELECT r.Key, r.Value FROM `/Root/Left` AS l @@ -240,8 +231,7 @@ Y_UNIT_TEST_NEW_ENGINE(RightSemi) { R"([ [[101];["Value21"]]; [[103];["Value23"]] - ])", - 3); + ])", 3); } } // suite diff --git a/ydb/core/kqp/ut/kqp_indexes_multishard_ut.cpp b/ydb/core/kqp/ut/kqp_indexes_multishard_ut.cpp index b5f5cc85a31..fe2436bface 100644 --- a/ydb/core/kqp/ut/kqp_indexes_multishard_ut.cpp +++ b/ydb/core/kqp/ut/kqp_indexes_multishard_ut.cpp @@ -112,7 +112,6 @@ void FillTableWithDataColumn(NYdb::NTable::TTableClient& db) { UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); } -template<bool UseNewEngine> void FillTable(NYdb::NTable::TSession& session) { const TString query(Q_(R"( UPSERT INTO `/Root/MultiShardIndexed` (key, fk, value) VALUES @@ -129,12 +128,12 @@ void FillTable(NYdb::NTable::TSession& session) { } Y_UNIT_TEST_SUITE(KqpMultishardIndex) { - Y_UNIT_TEST_NEW_ENGINE(SortedRangeReadDesc) { + Y_UNIT_TEST(SortedRangeReadDesc) { TKikimrRunner kikimr(SyntaxV1Settings()); CreateTableWithMultishardIndex(kikimr.GetTestClient(), false); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); - FillTable<UseNewEngine>(session); + FillTable(session); { const TString query(Q_(R"( @@ -147,12 +146,12 @@ Y_UNIT_TEST_SUITE(KqpMultishardIndex) { } } - Y_UNIT_TEST_NEW_ENGINE(SecondaryIndexSelect) { + Y_UNIT_TEST(SecondaryIndexSelect) { TKikimrRunner kikimr(SyntaxV1Settings()); CreateTableWithMultishardIndex(kikimr.GetTestClient(), false); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); - FillTable<UseNewEngine>(session); + FillTable(session); { const TString query(Q1_(R"( @@ -253,17 +252,10 @@ Y_UNIT_TEST_SUITE(KqpMultishardIndex) { auto result = ExecuteDataQuery(session, query); - if (UseNewEngine) { - UNIT_ASSERT_C(HasIssue(result.GetIssues(), NYql::TIssuesIds::KIKIMR_WRONG_INDEX_USAGE, - [](const NYql::TIssue& issue) { - return issue.Message.Contains("Given predicate is not suitable for used index: index"); - }), result.GetIssues().ToString()); - } else { - UNIT_ASSERT_C(HasIssue(result.GetIssues(), NYql::TIssuesIds::KIKIMR_WRONG_INDEX_USAGE, - [](const NYql::TIssue& issue) { - return issue.Message.Contains("Given predicate is not suitable for used index"); - }), result.GetIssues().ToString()); - } + UNIT_ASSERT_C(HasIssue(result.GetIssues(), NYql::TIssuesIds::KIKIMR_WRONG_INDEX_USAGE, + [](const NYql::TIssue& issue) { + return issue.Message.Contains("Given predicate is not suitable for used index: index"); + }), result.GetIssues().ToString()); UNIT_ASSERT(result.IsSuccess()); UNIT_ASSERT_VALUES_EQUAL(NYdb::FormatResultSetYson(result.GetResultSet(0)), "[[[\"v2\"]]]"); @@ -276,14 +268,10 @@ Y_UNIT_TEST_SUITE(KqpMultishardIndex) { auto result = ExecuteDataQuery(session, query); - if (UseNewEngine) { - UNIT_ASSERT_C(HasIssue(result.GetIssues(), NYql::TIssuesIds::KIKIMR_WRONG_INDEX_USAGE, - [](const NYql::TIssue& issue) { - return issue.Message.Contains("Given predicate is not suitable for used index: index"); - }), result.GetIssues().ToString()); - } else { - UNIT_ASSERT_C(result.GetIssues().Empty(), result.GetIssues().ToString()); - } + UNIT_ASSERT_C(HasIssue(result.GetIssues(), NYql::TIssuesIds::KIKIMR_WRONG_INDEX_USAGE, + [](const NYql::TIssue& issue) { + return issue.Message.Contains("Given predicate is not suitable for used index: index"); + }), result.GetIssues().ToString()); UNIT_ASSERT(result.IsSuccess()); UNIT_ASSERT_VALUES_EQUAL(NYdb::FormatResultSetYson(result.GetResultSet(0)), "[[[2000000000u]]]"); } @@ -306,7 +294,7 @@ Y_UNIT_TEST_SUITE(KqpMultishardIndex) { auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); - FillTable<false>(session); + FillTable(session); kikimr.GetTestServer().GetRuntime()->GetAppData().AdministrationAllowedSIDs.push_back("root@builtin"); @@ -362,7 +350,7 @@ Y_UNIT_TEST_SUITE(KqpMultishardIndex) { UNIT_ASSERT_VALUES_EQUAL(NYdb::FormatResultSetYson(result.GetResultSet(0)), "[[[4294967295u];[4u];[\"v4\"]]]"); } - FillTable<false>(session); + FillTable(session); { // just for sure, public api got error when alter index auto settings = NYdb::NTable::TAlterTableSettings() @@ -394,7 +382,7 @@ Y_UNIT_TEST_SUITE(KqpMultishardIndex) { } - Y_UNIT_TEST_QUAD(DataColumnUpsertMixedSemantic, WithMvcc, UseNewEngine) { + Y_UNIT_TEST_TWIN(DataColumnUpsertMixedSemantic, WithMvcc) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(WithMvcc) @@ -439,7 +427,7 @@ Y_UNIT_TEST_SUITE(KqpMultishardIndex) { } } - Y_UNIT_TEST_QUAD(DataColumnWriteNull, WithMvcc, UseNewEngine) { + Y_UNIT_TEST_TWIN(DataColumnWriteNull, WithMvcc) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(WithMvcc) @@ -518,7 +506,7 @@ Y_UNIT_TEST_SUITE(KqpMultishardIndex) { } } - Y_UNIT_TEST_QUAD(DataColumnWrite, WithMvcc, UseNewEngine) { + Y_UNIT_TEST_TWIN(DataColumnWrite, WithMvcc) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(WithMvcc) @@ -915,7 +903,7 @@ Y_UNIT_TEST_SUITE(KqpMultishardIndex) { } } - Y_UNIT_TEST_QUAD(DataColumnSelect, WithMvcc, UseNewEngine) { + Y_UNIT_TEST_TWIN(DataColumnSelect, WithMvcc) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(WithMvcc) @@ -1009,7 +997,7 @@ Y_UNIT_TEST_SUITE(KqpMultishardIndex) { } } - Y_UNIT_TEST_QUAD(DuplicateUpsert, WithMvcc, UseNewEngine) { + Y_UNIT_TEST_TWIN(DuplicateUpsert, WithMvcc) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(WithMvcc) @@ -1042,7 +1030,7 @@ Y_UNIT_TEST_SUITE(KqpMultishardIndex) { } } - Y_UNIT_TEST_QUAD(SortByPk, WithMvcc, UseNewEngine) { + Y_UNIT_TEST_TWIN(SortByPk, WithMvcc) { auto serverSettings = TKikimrSettings() .SetEnableMvcc(WithMvcc) .SetEnableMvccSnapshotReads(WithMvcc); @@ -1051,7 +1039,7 @@ Y_UNIT_TEST_SUITE(KqpMultishardIndex) { auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); CreateTableWithMultishardIndex(kikimr.GetTestClient(), false); - FillTable<UseNewEngine>(session); + FillTable(session); AssertSuccessResult(session.ExecuteDataQuery(Q1_(R"( UPSERT INTO `/Root/MultiShardIndexed` (key, fk, value) VALUES @@ -1076,12 +1064,10 @@ Y_UNIT_TEST_SUITE(KqpMultishardIndex) { // Cerr << explainResult.GetPlan() << Endl; - if (UseNewEngine) { - NJson::TJsonValue plan; - NJson::ReadJsonTree(explainResult.GetPlan(), &plan, true); - auto node = FindPlanNodeByKv(plan, "Name", "TopSort"); - UNIT_ASSERT(node.IsDefined()); - } + NJson::TJsonValue plan; + NJson::ReadJsonTree(explainResult.GetPlan(), &plan, true); + auto node = FindPlanNodeByKv(plan, "Name", "TopSort"); + UNIT_ASSERT(node.IsDefined()); auto result = session.ExecuteDataQuery(query, TTxControl::BeginTx().CommitTx()).ExtractValueSync(); UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); @@ -1101,7 +1087,6 @@ Y_UNIT_TEST_SUITE(KqpMultishardIndex) { ])", FormatResultSetYson(result.GetResultSet(0))); } - template<bool UseNewEngine> void CheckWriteIntoRenamingIndex(bool asyncIndex) { TKikimrRunner kikimr; @@ -1220,12 +1205,12 @@ Y_UNIT_TEST_SUITE(KqpMultishardIndex) { } } - Y_UNIT_TEST_NEW_ENGINE(WriteIntoRenamingSyncIndex) { - CheckWriteIntoRenamingIndex<UseNewEngine>(false); + Y_UNIT_TEST(WriteIntoRenamingSyncIndex) { + CheckWriteIntoRenamingIndex(false); } - Y_UNIT_TEST_NEW_ENGINE(WriteIntoRenamingAsyncIndex) { - CheckWriteIntoRenamingIndex<UseNewEngine>(true); + Y_UNIT_TEST(WriteIntoRenamingAsyncIndex) { + CheckWriteIntoRenamingIndex(true); } } diff --git a/ydb/core/kqp/ut/kqp_indexes_ut.cpp b/ydb/core/kqp/ut/kqp_indexes_ut.cpp index 56bdbd9b56f..9a52865690e 100644 --- a/ydb/core/kqp/ut/kqp_indexes_ut.cpp +++ b/ydb/core/kqp/ut/kqp_indexes_ut.cpp @@ -102,7 +102,7 @@ void CreateTableWithIndexWithState( Y_UNIT_TEST_SUITE(KqpIndexMetadata) { - Y_UNIT_TEST_TWIN(HandleNotReadyIndex, UseNewEngine) { + Y_UNIT_TEST(HandleNotReadyIndex) { using namespace NYql; using namespace NYql::NNodes; @@ -139,24 +139,11 @@ Y_UNIT_TEST_SUITE(KqpIndexMetadata) { TExprContext exprCtx; VisitExpr(GetExpr(explainResult.QueryAst, exprCtx, moduleResolver.get()).Ptr(), [&indexName](const TExprNode::TPtr& exprNode) { - if (UseNewEngine) { - if (TMaybeNode<TKqpUpsertRows>(exprNode)) { - UNIT_ASSERT(!TKqpUpsertRows(exprNode).Table().Path().Value().Contains(indexName)); - } - if (TMaybeNode<TKqpDeleteRows>(exprNode)) { - UNIT_ASSERT(!TKqpDeleteRows(exprNode).Table().Path().Value().Contains(indexName)); - } - } else { - if (auto maybeupdate = TMaybeNode<TKiUpdateRow>(exprNode)) { - auto update = maybeupdate.Cast(); - TStringBuf toUpdate = update.Table().Path().Value(); - UNIT_ASSERT(!toUpdate.Contains(indexName)); - } - if (auto maybeerase = TMaybeNode<TKiEraseRow>(exprNode)) { - auto erase = maybeerase.Cast(); - TStringBuf toErase = erase.Table().Path().Value(); - UNIT_ASSERT(!toErase.Contains(indexName)); - } + if (TMaybeNode<TKqpUpsertRows>(exprNode)) { + UNIT_ASSERT(!TKqpUpsertRows(exprNode).Table().Path().Value().Contains(indexName)); + } + if (TMaybeNode<TKqpDeleteRows>(exprNode)) { + UNIT_ASSERT(!TKqpDeleteRows(exprNode).Table().Path().Value().Contains(indexName)); } return true; }); @@ -170,7 +157,7 @@ Y_UNIT_TEST_SUITE(KqpIndexMetadata) { } } - Y_UNIT_TEST_TWIN(HandleWriteOnlyIndex, UseNewEngine) { + Y_UNIT_TEST(HandleWriteOnlyIndex) { using namespace NYql; using namespace NYql::NNodes; @@ -206,31 +193,14 @@ Y_UNIT_TEST_SUITE(KqpIndexMetadata) { bool indexCleaned = false; VisitExpr(GetExpr(explainResult.QueryAst, exprCtx, moduleResolver.get()).Ptr(), [&indexName, &indexUpdated, &indexCleaned](const TExprNode::TPtr& exprNode) mutable { - if (UseNewEngine) { - if (TMaybeNode<TKqpUpsertRows>(exprNode)) { - if (TKqpUpsertRows(exprNode).Table().Path().Value().Contains(indexName)) { - indexUpdated = true; - } - } - if (TMaybeNode<TKqpDeleteRows>(exprNode)) { - if (TKqpDeleteRows(exprNode).Table().Path().Value().Contains(indexName)) { - indexCleaned = true; - } + if (TMaybeNode<TKqpUpsertRows>(exprNode)) { + if (TKqpUpsertRows(exprNode).Table().Path().Value().Contains(indexName)) { + indexUpdated = true; } - } else { - if (auto maybeupdate = TMaybeNode<TKiUpdateRow>(exprNode)) { - auto update = maybeupdate.Cast(); - TStringBuf toUpdate = update.Table().Path().Value(); - if (toUpdate.Contains(indexName)) { - indexUpdated = true; - } - } - if (auto maybeerase = TMaybeNode<TKiEraseRow>(exprNode)) { - auto erase = maybeerase.Cast(); - TStringBuf toErase = erase.Table().Path().Value(); - if (toErase.Contains(indexName)) { - indexCleaned = true; - } + } + if (TMaybeNode<TKqpDeleteRows>(exprNode)) { + if (TKqpDeleteRows(exprNode).Table().Path().Value().Contains(indexName)) { + indexCleaned = true; } } return true; @@ -249,7 +219,7 @@ Y_UNIT_TEST_SUITE(KqpIndexMetadata) { } Y_UNIT_TEST_SUITE(KqpIndexes) { - Y_UNIT_TEST_NEW_ENGINE(NullInIndexTableNoDataRead) { + Y_UNIT_TEST(NullInIndexTableNoDataRead) { auto setting = NKikimrKqp::TKqpSetting(); TKikimrRunner kikimr({setting}); auto db = kikimr.GetTableClient(); @@ -273,9 +243,9 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { UNIT_ASSERT_VALUES_EQUAL(NYdb::FormatResultSetYson(result.GetResultSet(0)), "[[#];[[7]]]"); auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), UseNewEngine ? 2 : 1); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 2); - int phase = UseNewEngine ? 1 : 0; + int phase = 1; UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(phase).table_access().size(), 1); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(phase).table_access(0).name(), "/Root/SecondaryKeys/Index/indexImplTable"); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(phase).table_access(0).reads().rows(), 2); @@ -283,7 +253,7 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { } } - Y_UNIT_TEST_NEW_ENGINE(NullInIndexTable) { + Y_UNIT_TEST(NullInIndexTable) { auto setting = NKikimrKqp::TKqpSetting(); TKikimrRunner kikimr({setting}); auto db = kikimr.GetTableClient(); @@ -303,39 +273,9 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { UNIT_ASSERT(result.IsSuccess()); UNIT_ASSERT_VALUES_EQUAL(NYdb::FormatResultSetYson(result.GetResultSet(0)), "[[#;#;[\"Payload8\"]];[#;[7];[\"Payload7\"]]]"); } -// We can't validate it now. Try to improve it after migrate to MVCC -#if 0 - if (UseNewEngine) { - NKikimrMiniKQL::TResult result; - auto& oldClient = kikimr.GetTestClient(); - bool success = oldClient.FlatQuery( - "(" - "(let row '('('Key (Int32 '7))))" - "(let pgmReturn (AsList" - " (EraseRow '/Root/SecondaryKeys row)" - "))" - "(return pgmReturn)" - ")", - result); - - UNIT_ASSERT(success); - - { - const TString query(Q_(R"( - SELECT * FROM `/Root/SecondaryKeys` : Index WHERE Fk IS NULL; - )")); - - auto result = session.ExecuteDataQuery( - query, - TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()) - .ExtractValueSync(); - UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), NYdb::EStatus::GENERIC_ERROR); - } - } -#endif } - Y_UNIT_TEST_NEW_ENGINE(WriteWithParamsFieldOrder) { + Y_UNIT_TEST(WriteWithParamsFieldOrder) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetKqpSettings({setting}); @@ -392,7 +332,7 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { } } - Y_UNIT_TEST_TWIN(SelectConcurentTX, UseNewEngine) { + Y_UNIT_TEST(SelectConcurentTX) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(true) @@ -473,7 +413,7 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { UNIT_ASSERT_VALUES_EQUAL_C(result2.GetStatus(), NYdb::EStatus::SUCCESS, result2.GetIssues().ToString()); } - Y_UNIT_TEST_TWIN(SelectConcurentTX2, UseNewEngine) { + Y_UNIT_TEST(SelectConcurentTX2) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(true) @@ -554,7 +494,7 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { UNIT_ASSERT_VALUES_EQUAL_C(result2.GetStatus(), NYdb::EStatus::ABORTED, result2.GetIssues().ToString().c_str()); } - Y_UNIT_TEST_TWIN(UpsertWithoutExtraNullDelete, UseNewEngine) { + Y_UNIT_TEST(UpsertWithoutExtraNullDelete) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(true) @@ -600,34 +540,18 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); - if (UseNewEngine) { - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 4); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access().size(), 1); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).name(), "/Root/TestTable"); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(3).table_access().size(), 2); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(3).table_access(0).name(), "/Root/TestTable"); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(3).table_access(0).updates().rows(), 1); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 4); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(3).table_access(1).name(), "/Root/TestTable/Index/indexImplTable"); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(3).table_access(1).updates().rows(), 1); - UNIT_ASSERT(!stats.query_phases(3).table_access(0).has_deletes()); - } else { - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access().size(), 1); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).name(), "/Root/TestTable"); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).reads().rows(), 0); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access().size(), 1); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).name(), "/Root/TestTable"); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access().size(), 2); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(0).name(), "/Root/TestTable"); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(0).updates().rows(), 1); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(3).table_access().size(), 2); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(3).table_access(0).name(), "/Root/TestTable"); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(3).table_access(0).updates().rows(), 1); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(1).name(), "/Root/TestTable/Index/indexImplTable"); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(1).updates().rows(), 1); - UNIT_ASSERT(!stats.query_phases(2).table_access(0).has_deletes()); - } + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(3).table_access(1).name(), "/Root/TestTable/Index/indexImplTable"); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(3).table_access(1).updates().rows(), 1); + UNIT_ASSERT(!stats.query_phases(3).table_access(0).has_deletes()); } { @@ -645,13 +569,13 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { .ExtractValueSync(); UNIT_ASSERT(result.IsSuccess()); auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), UseNewEngine ? 4 : 3); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 4); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access().size(), 1); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).name(), "/Root/TestTable"); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).reads().rows(), 1); - int idx = UseNewEngine ? 3 : 2; + int idx = 3; UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(idx).table_access().size(), 2); @@ -680,14 +604,14 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { .ExtractValueSync(); UNIT_ASSERT(result.IsSuccess()); auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), UseNewEngine ? 4 : 3); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 4); // One read from main table UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access().size(), 1); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).name(), "/Root/TestTable"); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).reads().rows(), 1); - int idx = UseNewEngine ? 3 : 2; + int idx = 3; UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(idx).table_access().size(), 2); // One update of main table @@ -696,10 +620,6 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { // No touching index UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(idx).table_access(1).name(), "/Root/TestTable/Index/indexImplTable"); - if (!UseNewEngine) { // BUG - UNIT_ASSERT(!stats.query_phases(idx).table_access(1).has_updates()); - UNIT_ASSERT(!stats.query_phases(idx).table_access(1).has_deletes()); - } { const auto& yson = ReadTablePartToYson(session, "/Root/TestTable/Index/indexImplTable"); @@ -724,9 +644,9 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { .ExtractValueSync(); UNIT_ASSERT(result.IsSuccess()); auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), UseNewEngine ? 4 : 2); // BUG + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 4); - int idx = UseNewEngine ? 1 : 0; + int idx = 1; UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(idx).table_access().size(), 1); // One read of main table @@ -734,7 +654,7 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(idx).table_access(0).reads().rows(), 1); // One update of index table - idx += (UseNewEngine ? 2 : 1); + idx += 2; UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(idx).table_access().size(), 1); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(idx).table_access(0).name(), "/Root/TestTable"); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(idx).table_access(0).updates().rows(), 1); @@ -785,7 +705,7 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { } - Y_UNIT_TEST_TWIN(UpsertWithNullKeysSimple, UseNewEngine) { + Y_UNIT_TEST(UpsertWithNullKeysSimple) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(true) @@ -881,7 +801,7 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { } - Y_UNIT_TEST_TWIN(UpsertWithNullKeysComplex, UseNewEngine) { + Y_UNIT_TEST(UpsertWithNullKeysComplex) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(true) @@ -1019,417 +939,7 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { } - Y_UNIT_TEST(KeyIndex) { - auto setting = NKikimrKqp::TKqpSetting(); - auto serverSettings = TKikimrSettings() - .SetEnableMvcc(true) - .SetEnableMvccSnapshotReads(true) - .SetKqpSettings({setting}); - TKikimrRunner kikimr(serverSettings); - auto db = kikimr.GetTableClient(); - auto session = db.CreateSession().GetValueSync().GetSession(); - - // Table with complex index - { - auto tableBuilder = db.GetTableBuilder(); - tableBuilder - .AddNullableColumn("Key", EPrimitiveType::String) - .AddNullableColumn("Index", EPrimitiveType::String); - tableBuilder.SetPrimaryKeyColumns(TVector<TString>{"Key"}); - tableBuilder.AddSecondaryIndex("Index", TVector<TString>{"Index", "Key"}); - auto result = session.CreateTable("/Root/TestTable", tableBuilder.Build()).ExtractValueSync(); - UNIT_ASSERT_VALUES_EQUAL(result.IsTransportError(), false); - UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::SUCCESS); - } - - { - const TString query1(R"( - PRAGMA Kikimr.UseNewEngine = 'false'; - UPSERT INTO `/Root/TestTable` (Key, Index) VALUES - ("Primary1", "Secondary1"); - )"); - - NYdb::NTable::TExecDataQuerySettings execSettings; - execSettings.CollectQueryStats(ECollectQueryStatsMode::Basic); - auto result = session.ExecuteDataQuery( - query1, - TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx(), - execSettings) - .ExtractValueSync(); - UNIT_ASSERT(result.IsSuccess()); - auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access().size(), 1); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).name(), "/Root/TestTable"); - // Empty table no read in stats - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).reads().rows(), 0); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access().size(), 2); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(0).name(), "/Root/TestTable"); - // One update - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(0).updates().rows(), 1); - - // Index update without detele - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(1).name(), "/Root/TestTable/Index/indexImplTable"); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(1).updates().rows(), 1); - UNIT_ASSERT(!stats.query_phases(2).table_access(1).has_deletes()); - { - const auto& yson = ReadTablePartToYson(session, "/Root/TestTable/Index/indexImplTable"); - const TString expected = R"([[["Secondary1"];["Primary1"]]])"; - UNIT_ASSERT_VALUES_EQUAL(yson, expected); - } - } - - { - const TString query1(R"( - PRAGMA Kikimr.UseNewEngine = 'false'; - UPSERT INTO `/Root/TestTable` (Key, Index) VALUES - ("Primary1", "Secondary1_1"); - )"); - - NYdb::NTable::TExecDataQuerySettings execSettings; - execSettings.CollectQueryStats(ECollectQueryStatsMode::Basic); - auto result = session.ExecuteDataQuery( - query1, - TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx(), - execSettings) - .ExtractValueSync(); - UNIT_ASSERT(result.IsSuccess()); - auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access().size(), 1); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).name(), "/Root/TestTable"); - // One read to find previous index value - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).reads().rows(), 1); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access().size(), 2); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(0).name(), "/Root/TestTable"); - // Update main table - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(0).updates().rows(), 1); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(1).name(), "/Root/TestTable/Index/indexImplTable"); - // Update index with deletion - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(1).updates().rows(), 1); - UNIT_ASSERT(stats.query_phases(2).table_access(1).has_deletes()); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(1).deletes().rows(), 1); - { - const auto& yson = ReadTablePartToYson(session, "/Root/TestTable/Index/indexImplTable"); - const TString expected = R"([[["Secondary1_1"];["Primary1"]]])"; - UNIT_ASSERT_VALUES_EQUAL(yson, expected); - } - } - - { - const TString query1(R"( - PRAGMA Kikimr.UseNewEngine = 'false'; - UPDATE `/Root/TestTable` ON (Key, Index) VALUES - ("Primary1", "Secondary1_2"); - )"); - - NYdb::NTable::TExecDataQuerySettings execSettings; - execSettings.CollectQueryStats(ECollectQueryStatsMode::Basic); - auto result = session.ExecuteDataQuery( - query1, - TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx(), - execSettings) - .ExtractValueSync(); - UNIT_ASSERT(result.IsSuccess()); - auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access().size(), 1); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).name(), "/Root/TestTable"); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).reads().rows(), 1); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access().size(), 2); - - // Update main table - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(0).name(), "/Root/TestTable"); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(0).updates().rows(), 1); - - // Update index - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(1).name(), "/Root/TestTable/Index/indexImplTable"); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(1).updates().rows(), 1); - UNIT_ASSERT(stats.query_phases(2).table_access(1).has_deletes()); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(1).deletes().rows(), 1); - { - const auto& yson = ReadTablePartToYson(session, "/Root/TestTable/Index/indexImplTable"); - const TString expected = R"([[["Secondary1_2"];["Primary1"]]])"; - UNIT_ASSERT_VALUES_EQUAL(yson, expected); - } - } - - { - const TString query1(R"( - PRAGMA Kikimr.UseNewEngine = 'false'; - UPDATE `/Root/TestTable` SET Index = "Secondary1_3" - WHERE Key = "Primary1"; - )"); - - NYdb::NTable::TExecDataQuerySettings execSettings; - execSettings.CollectQueryStats(ECollectQueryStatsMode::Basic); - auto result = session.ExecuteDataQuery( - query1, - TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx(), - execSettings) - .ExtractValueSync(); - UNIT_ASSERT(result.IsSuccess()); - auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 2); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access().size(), 1); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).name(), "/Root/TestTable"); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).reads().rows(), 1); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access().size(), 2); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).name(), "/Root/TestTable"); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).updates().rows(), 1); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(1).name(), "/Root/TestTable/Index/indexImplTable"); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(1).updates().rows(), 1); - UNIT_ASSERT(stats.query_phases(1).table_access(1).has_deletes()); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(1).deletes().rows(), 1); - { - const auto& yson = ReadTablePartToYson(session, "/Root/TestTable/Index/indexImplTable"); - const TString expected = R"([[["Secondary1_3"];["Primary1"]]])"; - UNIT_ASSERT_VALUES_EQUAL(yson, expected); - } - } - } - - Y_UNIT_TEST(KeyIndex2) { - auto setting = NKikimrKqp::TKqpSetting(); - auto serverSettings = TKikimrSettings() - .SetEnableMvcc(true) - .SetEnableMvccSnapshotReads(true) - .SetKqpSettings({setting}); - TKikimrRunner kikimr(serverSettings); - auto db = kikimr.GetTableClient(); - auto session = db.CreateSession().GetValueSync().GetSession(); - - // pk is <Key,Index> - // index is <Index,Key> - { - auto tableBuilder = db.GetTableBuilder(); - tableBuilder - .AddNullableColumn("Key", EPrimitiveType::String) - .AddNullableColumn("Index", EPrimitiveType::String); - tableBuilder.SetPrimaryKeyColumns(TVector<TString>{"Key", "Index"}); - tableBuilder.AddSecondaryIndex("Index", TVector<TString>{"Index", "Key"}); - auto result = session.CreateTable("/Root/TestTable", tableBuilder.Build()).ExtractValueSync(); - UNIT_ASSERT_VALUES_EQUAL(result.IsTransportError(), false); - UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::SUCCESS); - } - - { - const TString query1(R"( - PRAGMA Kikimr.UseNewEngine = 'false'; - UPSERT INTO `/Root/TestTable` (Key, Index) VALUES - ("Primary1", "Secondary1"); - )"); - - NYdb::NTable::TExecDataQuerySettings execSettings; - execSettings.CollectQueryStats(ECollectQueryStatsMode::Basic); - auto result = session.ExecuteDataQuery( - query1, - TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx(), - execSettings) - .ExtractValueSync(); - UNIT_ASSERT(result.IsSuccess()); - auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access().size(), 1); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).name(), "/Root/TestTable"); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).reads().rows(), 0); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access().size(), 2); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(0).name(), "/Root/TestTable"); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(0).updates().rows(), 1); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(1).name(), "/Root/TestTable/Index/indexImplTable"); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(1).updates().rows(), 1); - // Empty table without delete - UNIT_ASSERT(!stats.query_phases(2).table_access(1).has_deletes()); - { - const auto& yson = ReadTablePartToYson(session, "/Root/TestTable/Index/indexImplTable"); - const TString expected = R"([[["Secondary1"];["Primary1"]]])"; - UNIT_ASSERT_VALUES_EQUAL(yson, expected); - } - } - - { - // Upsert on new pk - const TString query1(R"( - PRAGMA Kikimr.UseNewEngine = 'false'; - UPSERT INTO `/Root/TestTable` (Key, Index) VALUES - ("Primary1", "Secondary1_1"); - )"); - - NYdb::NTable::TExecDataQuerySettings execSettings; - execSettings.CollectQueryStats(ECollectQueryStatsMode::Basic); - auto result = session.ExecuteDataQuery( - query1, - TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx(), - execSettings) - .ExtractValueSync(); - UNIT_ASSERT(result.IsSuccess()); - auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access().size(), 1); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).name(), "/Root/TestTable"); - // read nothing - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).reads().rows(), 0); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access().size(), 2); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(0).name(), "/Root/TestTable"); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(0).updates().rows(), 1); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(1).name(), "/Root/TestTable/Index/indexImplTable"); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(1).updates().rows(), 1); - // no deletion - UNIT_ASSERT(!stats.query_phases(2).table_access(1).has_deletes()); - { - const auto& yson = ReadTablePartToYson(session, "/Root/TestTable/Index/indexImplTable"); - const TString expected = R"([[["Secondary1"];["Primary1"]];[["Secondary1_1"];["Primary1"]]])"; - UNIT_ASSERT_VALUES_EQUAL(yson, expected); - } - } - - { - // Update on non existing key - do nothing - const TString query1(R"( - PRAGMA Kikimr.UseNewEngine = 'false'; - UPDATE `/Root/TestTable` ON (Key, Index) VALUES - ("Primary1", "Secondary1_2"); - )"); - - NYdb::NTable::TExecDataQuerySettings execSettings; - execSettings.CollectQueryStats(ECollectQueryStatsMode::Basic); - auto result = session.ExecuteDataQuery( - query1, - TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx(), - execSettings) - .ExtractValueSync(); - UNIT_ASSERT(result.IsSuccess()); - auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 2); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access().size(), 1); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).name(), "/Root/TestTable"); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).reads().rows(), 0); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access().size(), 1); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).name(), "/Root/TestTable"); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).updates().rows(), 0); - { - const auto& yson = ReadTablePartToYson(session, "/Root/TestTable/Index/indexImplTable"); - const TString expected = R"([[["Secondary1"];["Primary1"]];[["Secondary1_1"];["Primary1"]]])"; - UNIT_ASSERT_VALUES_EQUAL(yson, expected); - } - } - } - - Y_UNIT_TEST(ReplaceWithoutExtraNullDelete) { - auto setting = NKikimrKqp::TKqpSetting(); - auto serverSettings = TKikimrSettings() - .SetEnableMvcc(true) - .SetEnableMvccSnapshotReads(true) - .SetKqpSettings({setting}); - TKikimrRunner kikimr(serverSettings); - auto db = kikimr.GetTableClient(); - auto session = db.CreateSession().GetValueSync().GetSession(); - - { - auto tableBuilder = db.GetTableBuilder(); - tableBuilder - .AddNullableColumn("Key", EPrimitiveType::String) - .AddNullableColumn("Index2", EPrimitiveType::String) - .AddNullableColumn("Value", EPrimitiveType::String); - tableBuilder.SetPrimaryKeyColumns(TVector<TString>{"Key"}); - tableBuilder.AddSecondaryIndex("Index", TVector<TString>{"Index2"}); - auto result = session.CreateTable("/Root/TestTable", tableBuilder.Build()).ExtractValueSync(); - UNIT_ASSERT_VALUES_EQUAL(result.IsTransportError(), false); - UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::SUCCESS); - } - - { - const TString query1(R"( - PRAGMA Kikimr.UseNewEngine = 'false'; - REPLACE INTO `/Root/TestTable` (Key, Index2, Value) VALUES - ("Primary1", "Secondary1", "Value1"); - )"); - - NYdb::NTable::TExecDataQuerySettings execSettings; - execSettings.CollectQueryStats(ECollectQueryStatsMode::Basic); - auto result = session.ExecuteDataQuery( - query1, - TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx(), - execSettings) - .ExtractValueSync(); - UNIT_ASSERT(result.IsSuccess()); - auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access().size(), 1); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).name(), "/Root/TestTable"); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).reads().rows(), 0); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access().size(), 2); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(0).name(), "/Root/TestTable"); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(0).updates().rows(), 1); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(1).name(), "/Root/TestTable/Index/indexImplTable"); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(1).updates().rows(), 1); - UNIT_ASSERT(!stats.query_phases(2).table_access(1).has_deletes()); - } - - { - const TString query1(R"( - PRAGMA Kikimr.UseNewEngine = 'false'; - REPLACE INTO `/Root/TestTable` (Key, Index2, Value) VALUES - ("Primary1", "Secondary1_1", "Value1"); - )"); - - NYdb::NTable::TExecDataQuerySettings execSettings; - execSettings.CollectQueryStats(ECollectQueryStatsMode::Basic); - auto result = session.ExecuteDataQuery( - query1, - TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx(), - execSettings) - .ExtractValueSync(); - UNIT_ASSERT(result.IsSuccess()); - auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access().size(), 1); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).name(), "/Root/TestTable"); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).reads().rows(), 1); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access().size(), 2); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(0).name(), "/Root/TestTable"); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(0).updates().rows(), 1); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(1).name(), "/Root/TestTable/Index/indexImplTable"); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(1).updates().rows(), 1); - UNIT_ASSERT(stats.query_phases(2).table_access(1).has_deletes()); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(1).deletes().rows(), 1); - } - } - - Y_UNIT_TEST_TWIN(SecondaryIndexUpsert1DeleteUpdate, UseNewEngine) { + Y_UNIT_TEST(SecondaryIndexUpsert1DeleteUpdate) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(true) @@ -1617,7 +1127,7 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { } } - Y_UNIT_TEST_TWIN(SecondaryIndexUpsert2Update, UseNewEngine) { + Y_UNIT_TEST(SecondaryIndexUpsert2Update) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(true) @@ -1708,7 +1218,7 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { } } - Y_UNIT_TEST_TWIN(SecondaryIndexUpdateOnUsingIndex, UseNewEngine) { + Y_UNIT_TEST(SecondaryIndexUpdateOnUsingIndex) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(true) @@ -1775,7 +1285,7 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { } } - Y_UNIT_TEST_TWIN(SecondaryIndexSelectUsingScripting, UseNewEngine) { + Y_UNIT_TEST(SecondaryIndexSelectUsingScripting) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(true) @@ -1816,7 +1326,7 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { } } - Y_UNIT_TEST_TWIN(SecondaryIndexOrderBy, UseNewEngine) { + Y_UNIT_TEST(SecondaryIndexOrderBy) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(true) @@ -1866,13 +1376,7 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString().c_str()); - if (UseNewEngine) { - UNIT_ASSERT_C(result.GetAst().Contains("'('\"Reverse\")"), result.GetAst()); - } else { - UNIT_ASSERT_C(result.GetAst().Contains("'\"Reverse\" (Bool '\"true\")"), result.GetAst()); - UNIT_ASSERT_C(result.GetAst().Contains("Sort"), result.GetAst()); - UNIT_ASSERT_C(!result.GetAst().Contains("PartialSort"), result.GetAst()); - } + UNIT_ASSERT_C(result.GetAst().Contains("'('\"Reverse\")"), result.GetAst()); } { @@ -1899,14 +1403,7 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::SUCCESS); UNIT_ASSERT_C(result.GetAst().Contains("('\"ItemsLimit\""), result.GetAst()); - - if (UseNewEngine) { - UNIT_ASSERT_C(result.GetAst().Contains("'('\"Reverse\")"), result.GetAst()); - } else { - UNIT_ASSERT_C(result.GetAst().Contains("'\"Reverse\" (Bool '\"true\")"), result.GetAst()); - UNIT_ASSERT_C(result.GetAst().Contains("Sort"), result.GetAst()); - UNIT_ASSERT_C(!result.GetAst().Contains("PartialSort"), result.GetAst()); - } + UNIT_ASSERT_C(result.GetAst().Contains("'('\"Reverse\")"), result.GetAst()); } { @@ -1932,13 +1429,7 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::SUCCESS); UNIT_ASSERT_C(result.GetAst().Contains("('\"ItemsLimit\""), result.GetAst()); - if (UseNewEngine) { - UNIT_ASSERT_C(result.GetAst().Contains("'('\"Reverse\")"), result.GetAst()); - } else { - UNIT_ASSERT_C(result.GetAst().Contains("'\"Reverse\" (Bool '\"true\")"), result.GetAst()); - UNIT_ASSERT_C(result.GetAst().Contains("Sort"), result.GetAst()); - UNIT_ASSERT_C(!result.GetAst().Contains("PartialSort"), result.GetAst()); - } + UNIT_ASSERT_C(result.GetAst().Contains("'('\"Reverse\")"), result.GetAst()); } { @@ -1963,13 +1454,7 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::SUCCESS); - if (UseNewEngine) { - UNIT_ASSERT_C(result.GetAst().Contains("'('\"Reverse\")"), result.GetAst()); - } else { - UNIT_ASSERT_C(result.GetAst().Contains("'\"Reverse\" (Bool '\"true\")"), result.GetAst()); - UNIT_ASSERT_C(result.GetAst().Contains("Sort"), result.GetAst()); - UNIT_ASSERT_C(!result.GetAst().Contains("PartialSort"), result.GetAst()); - } + UNIT_ASSERT_C(result.GetAst().Contains("'('\"Reverse\")"), result.GetAst()); } { @@ -1994,14 +1479,7 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { .ExtractValueSync(); UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::SUCCESS); - - if (UseNewEngine) { - UNIT_ASSERT_C(!result.GetAst().Contains("'('\"Reverse\")"), result.GetAst()); - } else { - UNIT_ASSERT_C(!result.GetAst().Contains("'\"Reverse\" (Bool '\"true\")"), result.GetAst()); - UNIT_ASSERT_C(result.GetAst().Contains("Sort"), result.GetAst()); - UNIT_ASSERT_C(!result.GetAst().Contains("PartialSort"), result.GetAst()); - } + UNIT_ASSERT_C(!result.GetAst().Contains("'('\"Reverse\")"), result.GetAst()); } { @@ -2025,16 +1503,8 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { .ExtractValueSync(); UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::SUCCESS); - - if (UseNewEngine) { - UNIT_ASSERT_C(!result.GetAst().Contains("'('\"Reverse\")"), result.GetAst()); - UNIT_ASSERT_C(result.GetAst().Contains("('\"ItemsLimit\""), result.GetAst()); - } else { - UNIT_ASSERT_C(!result.GetAst().Contains("'\"Reverse\" (Bool '\"true\")"), result.GetAst()); - UNIT_ASSERT_C(result.GetAst().Contains("('\"ItemsLimit\""), result.GetAst()); - UNIT_ASSERT_C(result.GetAst().Contains("Sort"), result.GetAst()); - UNIT_ASSERT_C(!result.GetAst().Contains("PartialSort"), result.GetAst()); - } + UNIT_ASSERT_C(!result.GetAst().Contains("'('\"Reverse\")"), result.GetAst()); + UNIT_ASSERT_C(result.GetAst().Contains("('\"ItemsLimit\""), result.GetAst()); } { @@ -2059,16 +1529,8 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { query) .ExtractValueSync(); UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::SUCCESS); - - if (UseNewEngine) { - UNIT_ASSERT_C(result.GetAst().Contains("('\"ItemsLimit\""), result.GetAst()); - UNIT_ASSERT_C(!result.GetAst().Contains("'('\"Reverse\")"), result.GetAst()); - } else { - UNIT_ASSERT_C(result.GetAst().Contains("('\"ItemsLimit\""), result.GetAst()); - UNIT_ASSERT_C(!result.GetAst().Contains("'\"Reverse\" (Bool '\"true\")"), result.GetAst()); - UNIT_ASSERT_C(result.GetAst().Contains("Sort"), result.GetAst()); - UNIT_ASSERT_C(!result.GetAst().Contains("PartialSort"), result.GetAst()); - } + UNIT_ASSERT_C(result.GetAst().Contains("('\"ItemsLimit\""), result.GetAst()); + UNIT_ASSERT_C(!result.GetAst().Contains("'('\"Reverse\")"), result.GetAst()); } { @@ -2093,16 +1555,8 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { query) .ExtractValueSync(); UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::SUCCESS); - - if (UseNewEngine) { - UNIT_ASSERT_C(result.GetAst().Contains("('\"ItemsLimit\""), result.GetAst()); - UNIT_ASSERT_C(!result.GetAst().Contains("'('\"Reverse\")"), result.GetAst()); - } else { - UNIT_ASSERT_C(result.GetAst().Contains("('\"ItemsLimit\""), result.GetAst()); - UNIT_ASSERT_C(!result.GetAst().Contains("'\"Reverse\" (Bool '\"true\")"), result.GetAst()); - UNIT_ASSERT_C(result.GetAst().Contains("Sort"), result.GetAst()); - UNIT_ASSERT_C(!result.GetAst().Contains("PartialSort"), result.GetAst()); - } + UNIT_ASSERT_C(result.GetAst().Contains("('\"ItemsLimit\""), result.GetAst()); + UNIT_ASSERT_C(!result.GetAst().Contains("'('\"Reverse\")"), result.GetAst()); } { @@ -2128,16 +1582,8 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { query) .ExtractValueSync(); UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::SUCCESS); - - if (UseNewEngine) { - UNIT_ASSERT_C(result.GetAst().Contains("('\"ItemsLimit\""), result.GetAst()); - UNIT_ASSERT_C(!result.GetAst().Contains("'('\"Reverse\")"), result.GetAst()); - } else { - UNIT_ASSERT_C(result.GetAst().Contains("('\"ItemsLimit\""), result.GetAst()); - UNIT_ASSERT_C(!result.GetAst().Contains("'\"Reverse\" (Bool '\"true\")"), result.GetAst()); - UNIT_ASSERT_C(result.GetAst().Contains("Sort"), result.GetAst()); - UNIT_ASSERT_C(!result.GetAst().Contains("PartialSort"), result.GetAst()); - } + UNIT_ASSERT_C(result.GetAst().Contains("('\"ItemsLimit\""), result.GetAst()); + UNIT_ASSERT_C(!result.GetAst().Contains("'('\"Reverse\")"), result.GetAst()); } { @@ -2163,16 +1609,8 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { query) .ExtractValueSync(); UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::SUCCESS); - - if (UseNewEngine) { - UNIT_ASSERT_C(!result.GetAst().Contains("('\"ItemsLimit\""), result.GetAst()); - UNIT_ASSERT_C(!result.GetAst().Contains("'('\"Reverse\")"), result.GetAst()); - } else { - UNIT_ASSERT_C(!result.GetAst().Contains("('\"ItemsLimit\""), result.GetAst()); - UNIT_ASSERT_C(!result.GetAst().Contains("'\"Reverse\" (Bool '\"true\")"), result.GetAst()); - UNIT_ASSERT_C(result.GetAst().Contains("Sort"), result.GetAst()); - UNIT_ASSERT_C(!result.GetAst().Contains("PartialSort"), result.GetAst()); - } + UNIT_ASSERT_C(!result.GetAst().Contains("('\"ItemsLimit\""), result.GetAst()); + UNIT_ASSERT_C(!result.GetAst().Contains("'('\"Reverse\")"), result.GetAst()); } { @@ -2186,7 +1624,7 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { } } - Y_UNIT_TEST_TWIN(SecondaryIndexOrderBy2, UseNewEngine) { + Y_UNIT_TEST(SecondaryIndexOrderBy2) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(true) @@ -2244,14 +1682,7 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { .ExtractValueSync(); UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString().c_str()); - - if (UseNewEngine) { - UNIT_ASSERT_C(result.GetAst().Contains("'('\"Reverse\")"), result.GetAst()); - } else { - UNIT_ASSERT_C(result.GetAst().Contains("'\"Reverse\" (Bool '\"true\")"), result.GetAst()); - UNIT_ASSERT_C(result.GetAst().Contains("Sort"), result.GetAst()); - UNIT_ASSERT_C(!result.GetAst().Contains("PartialSort"), result.GetAst()); - } + UNIT_ASSERT_C(result.GetAst().Contains("'('\"Reverse\")"), result.GetAst()); } { @@ -2290,14 +1721,8 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString().c_str()); - if (UseNewEngine) { - UNIT_ASSERT_C(result.GetAst().Contains("'('\"ItemsLimit"), result.GetAst()); - UNIT_ASSERT_C(result.GetAst().Contains("'('\"Reverse\")"), result.GetAst()); - } else { - UNIT_ASSERT_C(result.GetAst().Contains("'\"Reverse\" (Bool '\"true\")"), result.GetAst()); - UNIT_ASSERT_C(result.GetAst().Contains("Sort"), result.GetAst()); - UNIT_ASSERT_C(!result.GetAst().Contains("PartialSort"), result.GetAst()); - } + UNIT_ASSERT_C(result.GetAst().Contains("'('\"ItemsLimit"), result.GetAst()); + UNIT_ASSERT_C(result.GetAst().Contains("'('\"Reverse\")"), result.GetAst()); } { @@ -2335,15 +1760,8 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { .ExtractValueSync(); UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString().c_str()); - - if (UseNewEngine) { - UNIT_ASSERT_C(result.GetAst().Contains("'('\"ItemsLimit"), result.GetAst()); - UNIT_ASSERT_C(result.GetAst().Contains("'('\"Reverse\")"), result.GetAst()); - } else { - UNIT_ASSERT_C(result.GetAst().Contains("'\"Reverse\" (Bool '\"true\")"), result.GetAst()); - UNIT_ASSERT_C(result.GetAst().Contains("Sort"), result.GetAst()); - UNIT_ASSERT_C(!result.GetAst().Contains("PartialSort"), result.GetAst()); - } + UNIT_ASSERT_C(result.GetAst().Contains("'('\"ItemsLimit"), result.GetAst()); + UNIT_ASSERT_C(result.GetAst().Contains("'('\"Reverse\")"), result.GetAst()); } { @@ -2366,7 +1784,7 @@ Y_UNIT_TEST_SUITE(KqpIndexes) { } } - Y_UNIT_TEST_TWIN(SecondaryIndexReplace, UseNewEngine) { + Y_UNIT_TEST(SecondaryIndexReplace) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(true) @@ -2445,7 +1863,7 @@ R"([[#;#;["Primary1"];[41u]];[["Secondary2"];[2u];["Primary2"];[42u]];[["Seconda } } - Y_UNIT_TEST_TWIN(SecondaryIndexInsert1, UseNewEngine) { + Y_UNIT_TEST(SecondaryIndexInsert1) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(true) @@ -2491,7 +1909,7 @@ R"([[#;#;["Primary1"];[41u]];[["Secondary2"];[2u];["Primary2"];[42u]];[["Seconda } } - Y_UNIT_TEST_TWIN(MultipleSecondaryIndex, UseNewEngine) { + Y_UNIT_TEST(MultipleSecondaryIndex) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(true) @@ -2556,7 +1974,7 @@ R"([[#;#;["Primary1"];[41u]];[["Secondary2"];[2u];["Primary2"];[42u]];[["Seconda } } - Y_UNIT_TEST_TWIN(MultipleSecondaryIndexWithSameComulns, UseNewEngine) { + Y_UNIT_TEST(MultipleSecondaryIndexWithSameComulns) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(true) @@ -2894,7 +2312,7 @@ R"([[#;#;["Primary1"];[41u]];[["Secondary2"];[2u];["Primary2"];[42u]];[["Seconda } } - Y_UNIT_TEST_TWIN(SecondaryIndexWithPrimaryKeySameComulns, UseNewEngine) { + Y_UNIT_TEST(SecondaryIndexWithPrimaryKeySameComulns) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(true) @@ -3168,63 +2586,7 @@ R"([[#;#;["Primary1"];[41u]];[["Secondary2"];[2u];["Primary2"];[42u]];[["Seconda } } - Y_UNIT_TEST(DeleteOnWithSubquery) { - auto setting = NKikimrKqp::TKqpSetting(); - auto serverSettings = TKikimrSettings() - .SetEnableMvcc(true) - .SetEnableMvccSnapshotReads(true) - .SetKqpSettings({setting}); - TKikimrRunner kikimr(serverSettings); - auto db = kikimr.GetTableClient(); - auto session = db.CreateSession().GetValueSync().GetSession(); - CreateSampleTablesWithIndex(session); - - const TString query(R"( - --!syntax_v1 - PRAGMA Kikimr.UseNewEngine = 'false'; - DECLARE $keys AS List<Tuple<Int32, String>>; - $to_delete = ( - SELECT Key FROM `/Root/SecondaryComplexKeys` VIEW Index WHERE (Fk1, Fk2) in $keys - ); - DELETE FROM `/Root/SecondaryComplexKeys` ON - SELECT * FROM $to_delete; - )"); - - auto params = TParamsBuilder().AddParam("$keys").BeginList() - .AddListItem().BeginTuple().AddElement().Int32(1).AddElement().String("Fk1").EndTuple() - .EndList().Build().Build(); - - NYdb::NTable::TExecDataQuerySettings execSettings; - execSettings.CollectQueryStats(ECollectQueryStatsMode::Basic); - auto result = session.ExecuteDataQuery(query, TTxControl::BeginTx().CommitTx(), params, execSettings).ExtractValueSync(); - UNIT_ASSERT(result.IsSuccess()); - - const auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 4); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access().size(), 1); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).name(), "/Root/SecondaryComplexKeys/Index/indexImplTable"); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).reads().rows(), 1); - // In theory we can optimize and remove this read access - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access().size(), 1); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(0).name(), "/Root/SecondaryComplexKeys"); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(0).reads().rows(), 1); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(3).table_access().size(), 2); - - // No guarantee effects will be in the same order - if (stats.query_phases(3).table_access(0).name() == "/Root/SecondaryComplexKeys") { - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(3).table_access(1).name(), "/Root/SecondaryComplexKeys/Index/indexImplTable"); - } else if (stats.query_phases(3).table_access(0).name() == "/Root/SecondaryComplexKeys/Index/indexImplTable") { - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(3).table_access(1).name(), "/Root/SecondaryComplexKeys"); - } else { - Y_FAIL("unexpected table name"); - } - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(3).table_access(0).deletes().rows(), 1); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(3).table_access(1).deletes().rows(), 1); - } - - Y_UNIT_TEST_TWIN(SecondaryIndexUsingInJoin, UseNewEngine) { + Y_UNIT_TEST(SecondaryIndexUsingInJoin) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(true) @@ -3300,10 +2662,8 @@ R"([[#;#;["Primary1"];[41u]];[["Secondary2"];[2u];["Primary2"];[42u]];[["Seconda auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); int indexPhaseId = 1; - if (UseNewEngine) { - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3); - indexPhaseId = 2; - } + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3); + indexPhaseId = 2; UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access().size(), 1); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).name(), "/Root/TestTable1"); @@ -3333,10 +2693,8 @@ R"([[#;#;["Primary1"];[41u]];[["Secondary2"];[2u];["Primary2"];[42u]];[["Seconda auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); int indexPhaseId = 1; - if (UseNewEngine) { - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3); - indexPhaseId = 2; - } + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3); + indexPhaseId = 2; UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access().size(), 1); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).name(), "/Root/TestTable1"); @@ -3366,10 +2724,8 @@ R"([[#;#;["Primary1"];[41u]];[["Secondary2"];[2u];["Primary2"];[42u]];[["Seconda auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); int indexPhaseId = 1; - if (UseNewEngine) { - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3); - indexPhaseId = 2; - } + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3); + indexPhaseId = 2; UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access().size(), 1); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).name(), "/Root/TestTable1"); @@ -3399,10 +2755,8 @@ R"([[#;#;["Primary1"];[41u]];[["Secondary2"];[2u];["Primary2"];[42u]];[["Seconda auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); int indexPhaseId = 1; - if (UseNewEngine) { - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3); - indexPhaseId = 2; - } + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3); + indexPhaseId = 2; UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access().size(), 1); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).name(), "/Root/TestTable1"); @@ -3414,7 +2768,7 @@ R"([[#;#;["Primary1"];[41u]];[["Secondary2"];[2u];["Primary2"];[42u]];[["Seconda } } - Y_UNIT_TEST_TWIN(SecondaryIndexUsingInJoin2, UseNewEngine) { + Y_UNIT_TEST(SecondaryIndexUsingInJoin2) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(true) @@ -3491,10 +2845,8 @@ R"([[#;#;["Primary1"];[41u]];[["Secondary2"];[2u];["Primary2"];[42u]];[["Seconda auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); int indexPhaseId = 1; - if (UseNewEngine) { - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 4); - indexPhaseId = 2; - } + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 4); + indexPhaseId = 2; UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access().size(), 1); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).name(), "/Root/TestTable1"); @@ -3530,10 +2882,8 @@ R"([[#;#;["Primary1"];[41u]];[["Secondary2"];[2u];["Primary2"];[42u]];[["Seconda auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); int indexPhaseId = 1; - if (UseNewEngine) { - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 4); - indexPhaseId = 2; - } + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 4); + indexPhaseId = 2; UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access().size(), 1); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).name(), "/Root/TestTable1"); @@ -3551,7 +2901,7 @@ R"([[#;#;["Primary1"];[41u]];[["Secondary2"];[2u];["Primary2"];[42u]];[["Seconda } } - Y_UNIT_TEST_TWIN(ForbidViewModification, UseNewEngine) { + Y_UNIT_TEST(ForbidViewModification) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(true) @@ -3690,7 +3040,7 @@ R"([[#;#;["Primary1"];[41u]];[["Secondary2"];[2u];["Primary2"];[42u]];[["Seconda } } - Y_UNIT_TEST_TWIN(DuplicateUpsertInterleave, UseNewEngine) { + Y_UNIT_TEST(DuplicateUpsertInterleave) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(true) @@ -3728,7 +3078,7 @@ R"([[#;#;["Primary1"];[41u]];[["Secondary2"];[2u];["Primary2"];[42u]];[["Seconda } } - Y_UNIT_TEST_TWIN(DuplicateUpsertInterleaveParams, UseNewEngine) { + Y_UNIT_TEST(DuplicateUpsertInterleaveParams) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(true) @@ -3816,7 +3166,7 @@ R"([[#;#;["Primary1"];[41u]];[["Secondary2"];[2u];["Primary2"];[42u]];[["Seconda } } - Y_UNIT_TEST_TWIN(MultipleModifications, UseNewEngine) { + Y_UNIT_TEST(MultipleModifications) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(true) @@ -3864,7 +3214,6 @@ R"([[#;#;["Primary1"];[41u]];[["Secondary2"];[2u];["Primary2"];[42u]];[["Seconda } } - template <bool UseNewEngine> void CreateTableWithIndexSQL(EIndexTypeSql type) { auto kqpSetting = NKikimrKqp::TKqpSetting(); kqpSetting.SetName("_KqpYqlSyntaxVersion"); @@ -3937,19 +3286,18 @@ R"([[#;#;["Primary1"];[41u]];[["Secondary2"];[2u];["Primary2"];[42u]];[["Seconda } } - Y_UNIT_TEST_TWIN(CreateTableWithImplicitSyncIndexSQL, UseNewEngine) { - CreateTableWithIndexSQL<UseNewEngine>(EIndexTypeSql::Global); + Y_UNIT_TEST(CreateTableWithImplicitSyncIndexSQL) { + CreateTableWithIndexSQL(EIndexTypeSql::Global); } - Y_UNIT_TEST_TWIN(CreateTableWithExplicitSyncIndexSQL, UseNewEngine) { - CreateTableWithIndexSQL<UseNewEngine>(EIndexTypeSql::GlobalSync); + Y_UNIT_TEST(CreateTableWithExplicitSyncIndexSQL) { + CreateTableWithIndexSQL(EIndexTypeSql::GlobalSync); } - Y_UNIT_TEST_TWIN(CreateTableWithExplicitAsyncIndexSQL, UseNewEngine) { - CreateTableWithIndexSQL<UseNewEngine>(EIndexTypeSql::GlobalAsync); + Y_UNIT_TEST(CreateTableWithExplicitAsyncIndexSQL) { + CreateTableWithIndexSQL(EIndexTypeSql::GlobalAsync); } - template <bool UseNewEngine> void SelectFromAsyncIndexedTable() { auto kqpSetting = NKikimrKqp::TKqpSetting(); kqpSetting.SetName("_KqpYqlSyntaxVersion"); @@ -3979,8 +3327,8 @@ R"([[#;#;["Primary1"];[41u]];[["Secondary2"];[2u];["Primary2"];[42u]];[["Seconda auto queryId = session.PrepareDataQuery(query).ExtractValueSync().GetQuery(); const auto variants = TVector<std::pair<TTxSettings, EStatus>>{ - {TTxSettings::SerializableRW(), UseNewEngine ? EStatus::PRECONDITION_FAILED : EStatus::GENERIC_ERROR}, - {TTxSettings::OnlineRO(), UseNewEngine ? EStatus::PRECONDITION_FAILED : EStatus::GENERIC_ERROR}, + {TTxSettings::SerializableRW(), EStatus::PRECONDITION_FAILED}, + {TTxSettings::OnlineRO(), EStatus::PRECONDITION_FAILED}, {TTxSettings::StaleRO(), EStatus::SUCCESS}, }; @@ -4005,11 +3353,11 @@ R"([[#;#;["Primary1"];[41u]];[["Secondary2"];[2u];["Primary2"];[42u]];[["Seconda } } - Y_UNIT_TEST_TWIN(SelectFromAsyncIndexedTable, UseNewEngine) { - SelectFromAsyncIndexedTable<UseNewEngine>(); + Y_UNIT_TEST(SelectFromAsyncIndexedTable) { + SelectFromAsyncIndexedTable(); } - Y_UNIT_TEST_TWIN(InnerJoinWithNonIndexWherePredicate, UseNewEngine) { + Y_UNIT_TEST(InnerJoinWithNonIndexWherePredicate) { auto setting = NKikimrKqp::TKqpSetting(); setting.SetName("_KqpYqlSyntaxVersion"); setting.SetValue("1"); @@ -4077,10 +3425,8 @@ R"([[#;#;["Primary1"];[41u]];[["Secondary2"];[2u];["Primary2"];[42u]];[["Seconda auto& stats = NYdb::TProtoAccessor::GetProto(*result2.GetStats()); int readPhase = 0; - if (UseNewEngine) { - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3); - readPhase = 1; - } + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3); + readPhase = 1; UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(readPhase).table_access().size(), 1); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(readPhase).table_access(0).name(), "/Root/SecondaryComplexKeys/Index/indexImplTable"); @@ -4095,7 +3441,7 @@ R"([[#;#;["Primary1"];[41u]];[["Secondary2"];[2u];["Primary2"];[42u]];[["Seconda } //KIKIMR-8144 - Y_UNIT_TEST_TWIN(InnerJoinSecondaryIndexLookupAndRightTablePredicateNonIndexColumn, UseNewEngine) { + Y_UNIT_TEST(InnerJoinSecondaryIndexLookupAndRightTablePredicateNonIndexColumn) { auto setting = NKikimrKqp::TKqpSetting(); setting.SetName("_KqpYqlSyntaxVersion"); setting.SetValue("1"); @@ -4273,7 +3619,7 @@ R"([[#;#;["Primary1"];[41u]];[["Secondary2"];[2u];["Primary2"];[42u]];[["Seconda } } - Y_UNIT_TEST_TWIN(DeleteByIndex, UseNewEngine) { + Y_UNIT_TEST(DeleteByIndex) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(true) @@ -4364,7 +3710,7 @@ R"([[#;#;["Primary1"];[41u]];[["Secondary2"];[2u];["Primary2"];[42u]];[["Seconda ])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_TWIN(UpdateDeletePlan, UseNewEngine) { + Y_UNIT_TEST(UpdateDeletePlan) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(true) @@ -4422,7 +3768,7 @@ R"([[#;#;["Primary1"];[41u]];[["Secondary2"];[2u];["Primary2"];[42u]];[["Seconda checkPlan(result.GetPlan(), 1, 1, 1); } - Y_UNIT_TEST_TWIN(UpsertNoIndexColumns, UseNewEngine) { + Y_UNIT_TEST(UpsertNoIndexColumns) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(true) @@ -4474,7 +3820,7 @@ R"([[#;#;["Primary1"];[41u]];[["Secondary2"];[2u];["Primary2"];[42u]];[["Seconda CompareYson(R"([[[2]]])", FormatResultSetYson(result.GetResultSet(2))); } - Y_UNIT_TEST_TWIN(UpdateIndexSubsetPk, UseNewEngine) { + Y_UNIT_TEST(UpdateIndexSubsetPk) { auto setting = NKikimrKqp::TKqpSetting(); auto serverSettings = TKikimrSettings() .SetEnableMvcc(true) @@ -4563,7 +3909,7 @@ R"([[#;#;["Primary1"];[41u]];[["Secondary2"];[2u];["Primary2"];[42u]];[["Seconda ])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_TWIN(IndexMultipleRead, UseNewEngine) { + Y_UNIT_TEST(IndexMultipleRead) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); @@ -4595,7 +3941,7 @@ R"([[#;#;["Primary1"];[41u]];[["Secondary2"];[2u];["Primary2"];[42u]];[["Seconda }); AssertTableStats(result, "/Root/SecondaryKeys/Index/indexImplTable", { - .ExpectedReads = UseNewEngine ? 1 : 2, + .ExpectedReads = 1, }); CompareYson(R"([[[5];[5];["Payload5"]]])", FormatResultSetYson(result.GetResultSet(0))); diff --git a/ydb/core/kqp/ut/kqp_join_ut.cpp b/ydb/core/kqp/ut/kqp_join_ut.cpp index 5fad08f619a..ce6747869cb 100644 --- a/ydb/core/kqp/ut/kqp_join_ut.cpp +++ b/ydb/core/kqp/ut/kqp_join_ut.cpp @@ -61,7 +61,6 @@ static void CreateSampleTables(TSession session) { )").GetValueSync().IsSuccess()); UNIT_ASSERT(session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; REPLACE INTO `/Root/Join1_1` (Key, Fk21, Fk22, Value) VALUES (1, 101, "One", "Value1"), @@ -125,7 +124,6 @@ static void CreateRightSemiJoinSampleTables(TSession& session) { )").GetValueSync().IsSuccess()); UNIT_ASSERT(session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; REPLACE INTO `/Root/RSJ_SimpleKey_1` (Key, Value) VALUES (1, "1.One"), @@ -180,7 +178,7 @@ static TDataQueryResult ExecQuery(TSession& session, const TString& query, const static TParams NoParams = TParamsBuilder().Build(); Y_UNIT_TEST_SUITE(KqpJoin) { - Y_UNIT_TEST_NEW_ENGINE(IdxLookupLeftPredicate) { + Y_UNIT_TEST(IdxLookupLeftPredicate) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -204,24 +202,22 @@ Y_UNIT_TEST_SUITE(KqpJoin) { auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), kikimr.IsUsingSnapshotReads() && !UseNewEngine ? 2 : 3); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access().size(), 1); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).name(), "/Root/Join1_1"); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).reads().rows(), 8); ui32 index = 1; - if (UseNewEngine) { - UNIT_ASSERT(stats.query_phases(1).table_access().empty()); // keys extraction for lookups - index = 2; - } + UNIT_ASSERT(stats.query_phases(1).table_access().empty()); // keys extraction for lookups + index = 2; UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(index).table_access().size(), 1); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(index).table_access(0).name(), "/Root/Join1_2"); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(index).table_access(0).reads().rows(), 1); } - Y_UNIT_TEST_NEW_ENGINE(IdxLookupPartialLeftPredicate) { + Y_UNIT_TEST(IdxLookupPartialLeftPredicate) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -249,24 +245,22 @@ Y_UNIT_TEST_SUITE(KqpJoin) { auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); Cerr << stats.DebugString() << Endl; - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), kikimr.IsUsingSnapshotReads() && !UseNewEngine ? 2 : 3); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access().size(), 1); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).name(), "/Root/Join1_1"); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).reads().rows(), 8); ui32 index = 1; - if (UseNewEngine) { - UNIT_ASSERT(stats.query_phases(1).table_access().empty()); // keys extraction for lookups - index = 2; - } + UNIT_ASSERT(stats.query_phases(1).table_access().empty()); // keys extraction for lookups + index = 2; UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(index).table_access().size(), 1); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(index).table_access(0).name(), "/Root/Join1_2"); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(index).table_access(0).reads().rows(), 3); } - Y_UNIT_TEST_NEW_ENGINE(IdxLookupPartialWithTempTable) { + Y_UNIT_TEST(IdxLookupPartialWithTempTable) { TKikimrRunner kikimr(SyntaxV1Settings()); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -347,7 +341,6 @@ Y_UNIT_TEST_SUITE(KqpJoin) { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; $bucket_name = "bucket #1"; $object_name = "mpobject"; @@ -374,7 +367,6 @@ Y_UNIT_TEST_SUITE(KqpJoin) { result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; DECLARE $bucket_name AS Utf8; DECLARE $object_name AS Utf8; @@ -401,7 +393,7 @@ Y_UNIT_TEST_SUITE(KqpJoin) { ])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(IdxLookupSelf) { + Y_UNIT_TEST(IdxLookupSelf) { TKikimrRunner kikimr(SyntaxV1Settings()); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -421,7 +413,7 @@ Y_UNIT_TEST_SUITE(KqpJoin) { AssertTableReads(result, "/Root/Join1_1", 1); } - Y_UNIT_TEST_NEW_ENGINE(LeftJoinWithNull) { + Y_UNIT_TEST(LeftJoinWithNull) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -444,7 +436,7 @@ Y_UNIT_TEST_SUITE(KqpJoin) { } // join on not key column => Full Scan - Y_UNIT_TEST_NEW_ENGINE(RightSemiJoin_FullScan) { + Y_UNIT_TEST(RightSemiJoin_FullScan) { TKikimrRunner kikimr(SyntaxV1Settings()); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -485,7 +477,7 @@ Y_UNIT_TEST_SUITE(KqpJoin) { } // join on key (simple and full) column => index-lookup - Y_UNIT_TEST_NEW_ENGINE(RightSemiJoin_SimpleKey) { + Y_UNIT_TEST(RightSemiJoin_SimpleKey) { TKikimrRunner kikimr(SyntaxV1Settings()); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -526,7 +518,7 @@ Y_UNIT_TEST_SUITE(KqpJoin) { } // join on key (complex and full) column => index-lookup - Y_UNIT_TEST_NEW_ENGINE(RightSemiJoin_ComplexKey) { + Y_UNIT_TEST(RightSemiJoin_ComplexKey) { TKikimrRunner kikimr(SyntaxV1Settings()); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -578,7 +570,7 @@ Y_UNIT_TEST_SUITE(KqpJoin) { } // join on key prefix => index-lookup - Y_UNIT_TEST_NEW_ENGINE(RightSemiJoin_KeyPrefix) { + Y_UNIT_TEST(RightSemiJoin_KeyPrefix) { TKikimrRunner kikimr(SyntaxV1Settings()); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -622,7 +614,7 @@ Y_UNIT_TEST_SUITE(KqpJoin) { } // join on secondary index => index-lookup - Y_UNIT_TEST_NEW_ENGINE(RightSemiJoin_SecondaryIndex) { + Y_UNIT_TEST(RightSemiJoin_SecondaryIndex) { TKikimrRunner kikimr(SyntaxV1Settings()); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -688,7 +680,7 @@ Y_UNIT_TEST_SUITE(KqpJoin) { } // join on complex secondary index => index-lookup - Y_UNIT_TEST_NEW_ENGINE(RightSemiJoin_ComplexSecondaryIndex) { + Y_UNIT_TEST(RightSemiJoin_ComplexSecondaryIndex) { TKikimrRunner kikimr(SyntaxV1Settings()); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -743,7 +735,7 @@ Y_UNIT_TEST_SUITE(KqpJoin) { } // join on secondary index prefix => index-lookup - Y_UNIT_TEST_NEW_ENGINE(RightSemiJoin_ComplexSecondaryIndexPrefix) { + Y_UNIT_TEST(RightSemiJoin_ComplexSecondaryIndexPrefix) { TKikimrRunner kikimr(SyntaxV1Settings()); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -792,7 +784,6 @@ Y_UNIT_TEST_SUITE(KqpJoin) { } } - template<bool UseNewEngine = false> void TestInnerJoinWithPredicate(const TString& predicate, const TString& expected) { TKikimrRunner kikimr(SyntaxV1Settings()); auto db = kikimr.GetTableClient(); @@ -835,19 +826,19 @@ Y_UNIT_TEST_SUITE(KqpJoin) { CompareYson(expected, FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(RightTableKeyPredicate) { - TestInnerJoinWithPredicate<UseNewEngine>("r.Key > 1", "[[[105];[5];[\"Payload2\"];[105]]]"); + Y_UNIT_TEST(RightTableKeyPredicate) { + TestInnerJoinWithPredicate("r.Key > 1", "[[[105];[5];[\"Payload2\"];[105]]]"); } - Y_UNIT_TEST_NEW_ENGINE(RightTableIndexPredicate) { - TestInnerJoinWithPredicate<UseNewEngine>("r.Fk > 1", "[[[105];[5];[\"Payload2\"];[105]]]"); + Y_UNIT_TEST(RightTableIndexPredicate) { + TestInnerJoinWithPredicate("r.Fk > 1", "[[[105];[5];[\"Payload2\"];[105]]]"); } - Y_UNIT_TEST_NEW_ENGINE(RightTableValuePredicate) { - TestInnerJoinWithPredicate<UseNewEngine>("r.Value = \"Payload2\"", "[[[105];[5];[\"Payload2\"];[105]]]"); + Y_UNIT_TEST(RightTableValuePredicate) { + TestInnerJoinWithPredicate("r.Value = \"Payload2\"", "[[[105];[5];[\"Payload2\"];[105]]]"); } - Y_UNIT_TEST_NEW_ENGINE(JoinAggregateSingleRow) { + Y_UNIT_TEST(JoinAggregateSingleRow) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -883,7 +874,7 @@ Y_UNIT_TEST_SUITE(KqpJoin) { FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(JoinAggregate) { + Y_UNIT_TEST(JoinAggregate) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -924,7 +915,7 @@ Y_UNIT_TEST_SUITE(KqpJoin) { } } - Y_UNIT_TEST_NEW_ENGINE(JoinConvert) { + Y_UNIT_TEST(JoinConvert) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -957,7 +948,7 @@ Y_UNIT_TEST_SUITE(KqpJoin) { FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(ExclusionJoin) { + Y_UNIT_TEST(ExclusionJoin) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -980,7 +971,7 @@ Y_UNIT_TEST_SUITE(KqpJoin) { ); } - Y_UNIT_TEST_NEW_ENGINE(FullOuterJoin) { + Y_UNIT_TEST(FullOuterJoin) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -1014,7 +1005,7 @@ Y_UNIT_TEST_SUITE(KqpJoin) { ); } - Y_UNIT_TEST_NEW_ENGINE(FullOuterJoin2) { + Y_UNIT_TEST(FullOuterJoin2) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -1038,7 +1029,7 @@ Y_UNIT_TEST_SUITE(KqpJoin) { ])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(FullOuterJoinSizeCheck) { + Y_UNIT_TEST(FullOuterJoinSizeCheck) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -1063,7 +1054,7 @@ Y_UNIT_TEST_SUITE(KqpJoin) { ); } - Y_UNIT_TEST_NEW_ENGINE(CrossJoinCount) { + Y_UNIT_TEST(CrossJoinCount) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -1079,7 +1070,7 @@ Y_UNIT_TEST_SUITE(KqpJoin) { CompareYson(R"([[88u]])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(JoinDupColumnRight) { + Y_UNIT_TEST(JoinDupColumnRight) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -1100,7 +1091,7 @@ Y_UNIT_TEST_SUITE(KqpJoin) { ])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(JoinDupColumnRightPure) { + Y_UNIT_TEST(JoinDupColumnRightPure) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -1138,7 +1129,7 @@ Y_UNIT_TEST_SUITE(KqpJoin) { ])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(JoinLeftPureInner) { + Y_UNIT_TEST(JoinLeftPureInner) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -1156,7 +1147,7 @@ Y_UNIT_TEST_SUITE(KqpJoin) { CompareYson(R"([[5u]])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(JoinLeftPureInnerConverted) { + Y_UNIT_TEST(JoinLeftPureInnerConverted) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -1185,7 +1176,7 @@ Y_UNIT_TEST_SUITE(KqpJoin) { CompareYson(R"([[1u]])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(JoinLeftPureFull) { + Y_UNIT_TEST(JoinLeftPureFull) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -1203,7 +1194,7 @@ Y_UNIT_TEST_SUITE(KqpJoin) { CompareYson(R"([[11u]])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(JoinLeftPureExclusion) { + Y_UNIT_TEST(JoinLeftPureExclusion) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -1221,7 +1212,7 @@ Y_UNIT_TEST_SUITE(KqpJoin) { CompareYson(R"([[6u]])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(JoinLeftPureCross) { + Y_UNIT_TEST(JoinLeftPureCross) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -1238,7 +1229,7 @@ Y_UNIT_TEST_SUITE(KqpJoin) { CompareYson(R"([[36u]])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(JoinMismatchDictKeyTypes) { + Y_UNIT_TEST(JoinMismatchDictKeyTypes) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); diff --git a/ydb/core/kqp/ut/kqp_limits_ut.cpp b/ydb/core/kqp/ut/kqp_limits_ut.cpp index 92051e9e0b5..049a0854f17 100644 --- a/ydb/core/kqp/ut/kqp_limits_ut.cpp +++ b/ydb/core/kqp/ut/kqp_limits_ut.cpp @@ -63,7 +63,7 @@ static void CreateLargeTable(TKikimrRunner& kikimr, ui32 rowsPerShard, ui32 keyT } Y_UNIT_TEST_SUITE(KqpLimits) { - Y_UNIT_TEST_NEW_ENGINE(DatashardProgramSize) { + Y_UNIT_TEST(DatashardProgramSize) { auto app = NKikimrConfig::TAppConfig(); app.MutableTableServiceConfig()->MutableResourceManager()->SetMkqlLightProgramMemoryLimit(1'000'000'000); app.MutableTableServiceConfig()->SetEnableKqpSessionActor(false); @@ -107,7 +107,7 @@ Y_UNIT_TEST_SUITE(KqpLimits) { UNIT_ASSERT(HasIssue(result.GetIssues(), NKikimrIssues::TIssuesIds::SHARD_PROGRAM_SIZE_EXCEEDED)); } - Y_UNIT_TEST_NEW_ENGINE(DatashardReplySize) { + Y_UNIT_TEST(DatashardReplySize) { auto app = NKikimrConfig::TAppConfig(); auto& queryLimits = *app.MutableTableServiceConfig()->MutableQueryLimits(); queryLimits.MutablePhaseLimits()->SetComputeNodeMemoryLimitBytes(1'000'000'000); @@ -128,7 +128,7 @@ Y_UNIT_TEST_SUITE(KqpLimits) { UNIT_ASSERT(HasIssue(result.GetIssues(), NYql::TIssuesIds::KIKIMR_RESULT_UNAVAILABLE)); } - Y_UNIT_TEST_NEW_ENGINE(QueryReplySize) { + Y_UNIT_TEST(QueryReplySize) { TKikimrRunner kikimr; CreateLargeTable(kikimr, 10, 10, 1'000'000, 1); @@ -161,7 +161,6 @@ Y_UNIT_TEST_SUITE(KqpLimits) { TStringBuilder query; query << R"( --!syntax_v1 - PRAGMA Kikimr.UseNewEngine = 'true'; UPSERT INTO `/Root/LargeTable` SELECT * FROM AS_TABLE(AsList( @@ -187,7 +186,7 @@ Y_UNIT_TEST_SUITE(KqpLimits) { UNIT_ASSERT(HasIssue(result.GetIssues(), NKikimrIssues::TIssuesIds::SHARD_PROGRAM_SIZE_EXCEEDED)); } - Y_UNIT_TEST_NEW_ENGINE(BigParameter) { + Y_UNIT_TEST(BigParameter) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -237,7 +236,7 @@ Y_UNIT_TEST_SUITE(KqpLimits) { UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); } - Y_UNIT_TEST_NEW_ENGINE(TooBigKey) { + Y_UNIT_TEST(TooBigKey) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -264,7 +263,7 @@ Y_UNIT_TEST_SUITE(KqpLimits) { })); } - Y_UNIT_TEST_NEW_ENGINE(TooBigColumn) { + Y_UNIT_TEST(TooBigColumn) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -289,7 +288,7 @@ Y_UNIT_TEST_SUITE(KqpLimits) { })); } - Y_UNIT_TEST_NEW_ENGINE(AffectedShardsLimit) { + Y_UNIT_TEST(AffectedShardsLimit) { NKikimrConfig::TAppConfig appConfig; auto& queryLimits = *appConfig.MutableTableServiceConfig()->MutableQueryLimits(); queryLimits.MutablePhaseLimits()->SetAffectedShardsLimit(20); @@ -327,16 +326,11 @@ Y_UNIT_TEST_SUITE(KqpLimits) { SELECT COUNT(*) FROM `/Root/ManyShard21` )"), TTxControl::BeginTx().CommitTx()).ExtractValueSync(); result.GetIssues().PrintTo(Cerr); - if (UseNewEngine) { - UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::PRECONDITION_FAILED); - UNIT_ASSERT(HasIssue(result.GetIssues(), NYql::TIssuesIds::KIKIMR_PRECONDITION_FAILED)); - } else { - UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::BAD_REQUEST); - UNIT_ASSERT(HasIssue(result.GetIssues(), NKikimrIssues::TIssuesIds::ENGINE_ERROR)); - } + UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::PRECONDITION_FAILED); + UNIT_ASSERT(HasIssue(result.GetIssues(), NYql::TIssuesIds::KIKIMR_PRECONDITION_FAILED)); } - Y_UNIT_TEST_NEW_ENGINE(ReadsetCountLimit) { + Y_UNIT_TEST(ReadsetCountLimit) { NKikimrConfig::TAppConfig appConfig; auto& queryLimits = *appConfig.MutableTableServiceConfig()->MutableQueryLimits(); queryLimits.MutablePhaseLimits()->SetReadsetCountLimit(50); @@ -359,16 +353,14 @@ Y_UNIT_TEST_SUITE(KqpLimits) { UPDATE `/Root/LargeTable` SET Data = CAST(Key AS Int64) + 10; )"), TTxControl::BeginTx().CommitTx()).ExtractValueSync(); - if (UseNewEngine) { - // TODO: ??? - UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); - } else { - UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::BAD_REQUEST); - UNIT_ASSERT(HasIssue(result.GetIssues(), NKikimrIssues::TIssuesIds::ENGINE_ERROR)); - } + + // TODO: KIKIMR-11134 (Fix readset limit) + // UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::BAD_REQUEST); + // UNIT_ASSERT(HasIssue(result.GetIssues(), NKikimrIssues::TIssuesIds::ENGINE_ERROR)); + UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); } - Y_UNIT_TEST_NEW_ENGINE(TotalReadSizeLimit) { + Y_UNIT_TEST(TotalReadSizeLimit) { NKikimrConfig::TAppConfig appConfig; auto& queryLimits = *appConfig.MutableTableServiceConfig()->MutableQueryLimits(); queryLimits.MutablePhaseLimits()->SetTotalReadSizeLimitBytes(100'000'000); @@ -389,20 +381,11 @@ Y_UNIT_TEST_SUITE(KqpLimits) { FROM `/Root/LargeTable`; )"), TTxControl::BeginTx().CommitTx()).ExtractValueSync(); result.GetIssues().PrintTo(Cerr); - if (UseNewEngine) { - UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::PRECONDITION_FAILED); - UNIT_ASSERT(HasIssue(result.GetIssues(), NYql::TIssuesIds::KIKIMR_PRECONDITION_FAILED, - [] (const NYql::TIssue& issue) { - return issue.Message.Contains("Transaction total read size"); - })); - - } else { - UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::GENERIC_ERROR); - UNIT_ASSERT(HasIssue(result.GetIssues(), NYql::TIssuesIds::DEFAULT_ERROR, - [] (const NYql::TIssue& issue) { - return issue.Message.Contains("Transaction total read size"); + UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::PRECONDITION_FAILED); + UNIT_ASSERT(HasIssue(result.GetIssues(), NYql::TIssuesIds::KIKIMR_PRECONDITION_FAILED, + [] (const NYql::TIssue& issue) { + return issue.Message.Contains("Transaction total read size"); })); - } result = session.ExecuteDataQuery(Q_(R"( SELECT Key, KeyText, SUBSTRING(DataText, 0, 10) AS DataText @@ -412,7 +395,7 @@ Y_UNIT_TEST_SUITE(KqpLimits) { UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); } - Y_UNIT_TEST_NEW_ENGINE(ComputeNodeMemoryLimit) { + Y_UNIT_TEST(ComputeNodeMemoryLimit) { NKikimrConfig::TAppConfig appConfig; appConfig.MutableTableServiceConfig()->MutableResourceManager()->SetMkqlLightProgramMemoryLimit(1'000'000'000); auto& queryLimits = *appConfig.MutableTableServiceConfig()->MutableQueryLimits(); @@ -434,17 +417,14 @@ Y_UNIT_TEST_SUITE(KqpLimits) { )"), TTxControl::BeginTx().CommitTx()).ExtractValueSync(); result.GetIssues().PrintTo(Cerr); - UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), - UseNewEngine ? EStatus::PRECONDITION_FAILED : EStatus::GENERIC_ERROR); - - auto issueId = UseNewEngine ? NYql::TIssuesIds::KIKIMR_PRECONDITION_FAILED : NYql::TIssuesIds::DEFAULT_ERROR; - UNIT_ASSERT(HasIssue(result.GetIssues(), issueId, + UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::PRECONDITION_FAILED); + UNIT_ASSERT(HasIssue(result.GetIssues(), NYql::TIssuesIds::KIKIMR_PRECONDITION_FAILED, [] (const NYql::TIssue& issue) { return issue.Message.Contains("Memory limit exceeded"); })); } - Y_UNIT_TEST_NEW_ENGINE(QueryExecCancel) { + Y_UNIT_TEST(QueryExecCancel) { TKikimrRunner kikimr; CreateLargeTable(kikimr, 500000, 10, 100, 5000, 1); @@ -466,7 +446,7 @@ Y_UNIT_TEST_SUITE(KqpLimits) { UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::CANCELLED); } - Y_UNIT_TEST_NEW_ENGINE(QueryExecTimeout) { + Y_UNIT_TEST(QueryExecTimeout) { NKikimrConfig::TAppConfig appConfig; appConfig.MutableTableServiceConfig()->MutableResourceManager()->SetMkqlLightProgramMemoryLimit(10'000'000'000); appConfig.MutableTableServiceConfig()->SetEnableKqpSessionActor(false); diff --git a/ydb/core/kqp/ut/kqp_locks_ut.cpp b/ydb/core/kqp/ut/kqp_locks_ut.cpp index bc6dbd94371..62b0b94ca33 100644 --- a/ydb/core/kqp/ut/kqp_locks_ut.cpp +++ b/ydb/core/kqp/ut/kqp_locks_ut.cpp @@ -7,7 +7,7 @@ using namespace NYdb; using namespace NYdb::NTable; Y_UNIT_TEST_SUITE(KqpLocks) { - Y_UNIT_TEST_NEW_ENGINE(Invalidate) { + Y_UNIT_TEST(Invalidate) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); @@ -49,7 +49,7 @@ Y_UNIT_TEST_SUITE(KqpLocks) { CompareYson(R"([[[300u];["Changed"];[1u];["Paul"]]])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(InvalidateOnCommit) { + Y_UNIT_TEST(InvalidateOnCommit) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); @@ -88,7 +88,7 @@ Y_UNIT_TEST_SUITE(KqpLocks) { CompareYson(R"([[[300u];["Changed"];[1u];["Paul"]]])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(DifferentKeyUpdate) { + Y_UNIT_TEST(DifferentKeyUpdate) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); @@ -115,7 +115,7 @@ Y_UNIT_TEST_SUITE(KqpLocks) { UNIT_ASSERT(result.IsSuccess()); } - Y_UNIT_TEST_NEW_ENGINE(EmptyRange) { + Y_UNIT_TEST(EmptyRange) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); @@ -158,7 +158,7 @@ Y_UNIT_TEST_SUITE(KqpLocks) { CompareYson(R"([[[2u];#;[11u];["Session2"]]])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(EmptyRangeAlreadyBroken) { + Y_UNIT_TEST(EmptyRangeAlreadyBroken) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); diff --git a/ydb/core/kqp/ut/kqp_mvcc_ut.cpp b/ydb/core/kqp/ut/kqp_mvcc_ut.cpp index f4b0ff951ff..3dc16b8e44e 100644 --- a/ydb/core/kqp/ut/kqp_mvcc_ut.cpp +++ b/ydb/core/kqp/ut/kqp_mvcc_ut.cpp @@ -9,7 +9,7 @@ using namespace NYdb; using namespace NYdb::NTable; Y_UNIT_TEST_SUITE(KqpSnapshotRead) { - Y_UNIT_TEST_NEW_ENGINE(TestSnapshotExpiration) { + Y_UNIT_TEST(TestSnapshotExpiration) { TKikimrRunner kikimr(TKikimrSettings() .SetEnableMvcc(true) .SetEnableMvccSnapshotReads(true) @@ -61,7 +61,7 @@ Y_UNIT_TEST_SUITE(KqpSnapshotRead) { UNIT_ASSERT_C(caught, "Failed to wait for snapshot expiration."); } - Y_UNIT_TEST_NEW_ENGINE(ReadOnlyTxCommitsOnConcurrentWrite) { + Y_UNIT_TEST(ReadOnlyTxCommitsOnConcurrentWrite) { TKikimrRunner kikimr(TKikimrSettings().SetEnableMvcc(true).SetEnableMvccSnapshotReads(true)); // kikimr.GetTestServer().GetRuntime()->SetLogPriority(NKikimrServices::KQP_COMPUTE, NActors::NLog::PRI_DEBUG); @@ -119,7 +119,7 @@ Y_UNIT_TEST_SUITE(KqpSnapshotRead) { ])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(ReadOnlyTxWithIndexCommitsOnConcurrentWrite) { + Y_UNIT_TEST(ReadOnlyTxWithIndexCommitsOnConcurrentWrite) { TKikimrRunner kikimr(TKikimrSettings().SetEnableMvcc(true).SetEnableMvccSnapshotReads(true)); // kikimr.GetTestServer().GetRuntime()->SetLogPriority(NKikimrServices::KQP_COMPUTE, NActors::NLog::PRI_DEBUG); @@ -180,7 +180,7 @@ Y_UNIT_TEST_SUITE(KqpSnapshotRead) { ])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(ReadWriteTxFailsOnConcurrentWrite1) { + Y_UNIT_TEST(ReadWriteTxFailsOnConcurrentWrite1) { TKikimrRunner kikimr(TKikimrSettings().SetEnableMvcc(true).SetEnableMvccSnapshotReads(true)); // kikimr.GetTestServer().GetRuntime()->SetLogPriority(NKikimrServices::KQP_COMPUTE, NActors::NLog::PRI_DEBUG); @@ -217,7 +217,7 @@ Y_UNIT_TEST_SUITE(KqpSnapshotRead) { UNIT_ASSERT_C(HasIssue(result.GetIssues(), NYql::TIssuesIds::KIKIMR_LOCKS_INVALIDATED), result.GetIssues().ToString()); } - Y_UNIT_TEST_NEW_ENGINE(ReadWriteTxFailsOnConcurrentWrite2) { + Y_UNIT_TEST(ReadWriteTxFailsOnConcurrentWrite2) { TKikimrRunner kikimr(TKikimrSettings().SetEnableMvcc(true).SetEnableMvccSnapshotReads(true)); // kikimr.GetTestServer().GetRuntime()->SetLogPriority(NKikimrServices::KQP_COMPUTE, NActors::NLog::PRI_DEBUG); @@ -260,7 +260,7 @@ Y_UNIT_TEST_SUITE(KqpSnapshotRead) { UNIT_ASSERT_C(HasIssue(result.GetIssues(), NYql::TIssuesIds::KIKIMR_LOCKS_INVALIDATED), result.GetIssues().ToString()); } - Y_UNIT_TEST_NEW_ENGINE(ReadWriteTxFailsOnConcurrentWrite3) { + Y_UNIT_TEST(ReadWriteTxFailsOnConcurrentWrite3) { TKikimrRunner kikimr(TKikimrSettings().SetEnableMvcc(true).SetEnableMvccSnapshotReads(true)); // kikimr.GetTestServer().GetRuntime()->SetLogPriority(NKikimrServices::KQP_COMPUTE, NActors::NLog::PRI_DEBUG); diff --git a/ydb/core/kqp/ut/kqp_ne_effects_ut.cpp b/ydb/core/kqp/ut/kqp_ne_effects_ut.cpp index 9b2dfa35c01..7991512f5ef 100644 --- a/ydb/core/kqp/ut/kqp_ne_effects_ut.cpp +++ b/ydb/core/kqp/ut/kqp_ne_effects_ut.cpp @@ -15,14 +15,12 @@ Y_UNIT_TEST_SUITE(KqpNewEngineEffects) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; INSERT INTO `/Root/TwoShard` (Value1, Key) VALUES ("foo", 10u), ("bar", 11u) )", TTxControl::BeginTx().CommitTx()).ExtractValueSync(); UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` WHERE Key > 5 AND Key < 100 ORDER BY Key; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); @@ -39,7 +37,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngineEffects) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; INSERT INTO `/Root/TwoShard` (Value1, Key) VALUES ("foo", 10u), ("bar", 11u), ("baz", 10u) )", TTxControl::BeginTx().CommitTx()).ExtractValueSync(); @@ -49,7 +46,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngineEffects) { })); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` WHERE Key > 5 AND Key < 100 ORDER BY Key; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); @@ -63,7 +59,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngineEffects) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; INSERT INTO `/Root/TwoShard` (Value1, Key) VALUES ("foo", 1u), ("bar", 11u) )", TTxControl::BeginTx().CommitTx()).ExtractValueSync(); @@ -73,7 +68,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngineEffects) { }), result.GetIssues().ToString()); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` WHERE Key = 1 OR Key = 11 ORDER BY Key; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); @@ -104,14 +98,12 @@ Y_UNIT_TEST_SUITE(KqpNewEngineEffects) { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; DECLARE $in AS List<Struct<Key: Uint32, Value1: String, Value2:Int32>>; INSERT INTO `/Root/TwoShard` SELECT * FROM AS_TABLE($in) )", TTxControl::BeginTx().CommitTx(), std::move(params)).ExtractValueSync(); UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` WHERE Key > 5 AND Key < 100 ORDER BY Key; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); @@ -148,7 +140,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngineEffects) { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; DECLARE $in AS List<Struct<Key: Uint32, Value1: String, Value2:Int32>>; INSERT INTO `/Root/TwoShard` SELECT * FROM AS_TABLE($in) )", TTxControl::BeginTx().CommitTx(), std::move(params)).ExtractValueSync(); @@ -158,7 +149,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngineEffects) { })); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` WHERE Key = 1 OR Key = 11 ORDER BY Key; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); @@ -189,7 +179,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngineEffects) { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; DECLARE $in AS List<Struct<Key: Uint32, Value1: String, Value2:Int32>>; INSERT INTO `/Root/TwoShard` SELECT * FROM AS_TABLE($in) )", TTxControl::BeginTx().CommitTx(), std::move(params)).ExtractValueSync(); @@ -199,7 +188,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngineEffects) { })); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` WHERE Key = 1 OR Key = 11 ORDER BY Key; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); @@ -231,13 +219,11 @@ Y_UNIT_TEST_SUITE(KqpNewEngineEffects) { UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; INSERT INTO `/Root/TwoShard` SELECT * FROM `/Root/Foo` )", TTxControl::BeginTx().CommitTx()).ExtractValueSync(); UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` WHERE Key > 5 AND Key < 100 ORDER BY Key; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); @@ -271,7 +257,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngineEffects) { UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; INSERT INTO `/Root/TwoShard` SELECT Value3 as Key, Value1, Value2 FROM `/Root/Foo` )", TTxControl::BeginTx().CommitTx()).ExtractValueSync(); UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::PRECONDITION_FAILED, result.GetIssues().ToString()); @@ -280,7 +265,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngineEffects) { })); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` WHERE Key = 1 OR Key = 10 OR Key = 11 ORDER BY Key; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); @@ -312,7 +296,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngineEffects) { UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; INSERT INTO `/Root/TwoShard` SELECT * FROM `/Root/Foo` )", TTxControl::BeginTx().CommitTx()).ExtractValueSync(); UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::PRECONDITION_FAILED, result.GetIssues().ToString()); @@ -321,7 +304,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngineEffects) { })); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` WHERE Key = 1 OR Key = 11 ORDER BY Key; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); @@ -337,14 +319,12 @@ Y_UNIT_TEST_SUITE(KqpNewEngineEffects) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; INSERT OR REVERT INTO `/Root/TwoShard` (Value1, Key) VALUES ("foo", 10u), ("bar", 11u) )", TTxControl::BeginTx().CommitTx()).ExtractValueSync(); UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` WHERE Key > 5 AND Key < 100 ORDER BY Key; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); @@ -361,7 +341,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngineEffects) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; INSERT OR REVERT INTO `/Root/TwoShard` (Value1, Key) VALUES ("foo", 10u), ("bar", 11u), ("baz", 10u) )", TTxControl::BeginTx().CommitTx()).ExtractValueSync(); @@ -369,7 +348,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngineEffects) { UNIT_ASSERT_VALUES_EQUAL_C(result.GetIssues().Size(), 0, result.GetIssues().ToString()); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` WHERE Key > 5 AND Key < 100 ORDER BY Key; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); @@ -383,7 +361,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngineEffects) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; INSERT OR REVERT INTO `/Root/TwoShard` (Value1, Key) VALUES ("foo", 1u), ("bar", 11u) )", TTxControl::BeginTx().CommitTx()).ExtractValueSync(); @@ -391,7 +368,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngineEffects) { UNIT_ASSERT_VALUES_EQUAL_C(result.GetIssues().Size(), 0, result.GetIssues().ToString()); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` WHERE Key = 1 OR Key = 11 ORDER BY Key; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); @@ -407,7 +383,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngineEffects) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; UPDATE `/Root/TwoShard` ON (Key, Value1) VALUES (1u, "Updated"), (4000000010u, "Updated") @@ -415,7 +390,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngineEffects) { UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` ORDER BY Key; )", TTxControl::BeginTx().CommitTx()).ExtractValueSync(); UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); @@ -451,14 +425,12 @@ Y_UNIT_TEST_SUITE(KqpNewEngineEffects) { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; DECLARE $in AS List<Struct<Key: Uint32, Value1: String, Value2:Int32>>; UPDATE `/Root/TwoShard` ON (Key, Value1, Value2) SELECT Key, Value1, Value2 FROM AS_TABLE($in) )", TTxControl::BeginTx().CommitTx(), std::move(params)).ExtractValueSync(); UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` ORDER BY Key; )", TTxControl::BeginTx().CommitTx()).ExtractValueSync(); UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); @@ -479,7 +451,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngineEffects) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; $to_update = ( SELECT Key, "Updated" as Value1, (Value2 + 5) as Value2 @@ -491,7 +462,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngineEffects) { UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` ORDER BY Key; )", TTxControl::BeginTx().CommitTx()).ExtractValueSync(); UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); @@ -526,7 +496,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngineEffects) { auto result = session.ExplainDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = 'true'; DECLARE $key1 as Uint32; diff --git a/ydb/core/kqp/ut/kqp_ne_inplace_update_ut.cpp b/ydb/core/kqp/ut/kqp_ne_inplace_update_ut.cpp index 632221d5a2b..fb652cd3dc7 100644 --- a/ydb/core/kqp/ut/kqp_ne_inplace_update_ut.cpp +++ b/ydb/core/kqp/ut/kqp_ne_inplace_update_ut.cpp @@ -47,7 +47,6 @@ void Test(bool enableInplaceUpdate, const TString& query, TParams&& params, cons auto q = TStringBuilder() << R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = 'true'; PRAGMA kikimr.OptEnableInplaceUpdate = ')" << (enableInplaceUpdate ? "true" : "false") << "';" << Endl << query; @@ -57,7 +56,6 @@ void Test(bool enableInplaceUpdate, const TString& query, TParams&& params, cons check(NYdb::TProtoAccessor::GetProto(*result.GetStats())); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = 'true'; SELECT Key, ValueStr, ValueInt, ValueDbl FROM `/Root/InplaceUpdate` ORDER BY Key; )", TTxControl::BeginTx().CommitTx()).ExtractValueSync(); UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); @@ -376,7 +374,6 @@ Y_UNIT_TEST_TWIN(BigRow, EnableInplaceUpdate) { UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); auto query = Sprintf(R"( - PRAGMA kikimr.UseNewEngine = 'true'; PRAGMA kikimr.OptEnableInplaceUpdate = '%s'; DECLARE $Key AS Uint32; diff --git a/ydb/core/kqp/ut/kqp_ne_perf_ut.cpp b/ydb/core/kqp/ut/kqp_ne_perf_ut.cpp index f940b9cfc43..8ee0d203480 100644 --- a/ydb/core/kqp/ut/kqp_ne_perf_ut.cpp +++ b/ydb/core/kqp/ut/kqp_ne_perf_ut.cpp @@ -120,8 +120,8 @@ TParams BuildInsertIndexParams(TTableClient& client) { } // namespace Y_UNIT_TEST_SUITE(KqpPerf) { - Y_UNIT_TEST_QUAD(Upsert, UseNewEngine, UseSessionActor) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine && UseSessionActor); + Y_UNIT_TEST_TWIN(Upsert, UseSessionActor) { + auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -146,15 +146,15 @@ Y_UNIT_TEST_SUITE(KqpPerf) { auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); // TODO: Get rid of additional precompute stage for adding optionality to row members in NewEngine - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), UseNewEngine ? 2 : 1); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 2); for (const auto& phase : stats.query_phases()) { UNIT_ASSERT(phase.affected_shards() <= 2); } } - Y_UNIT_TEST_QUAD(Replace, UseNewEngine, UseSessionActor) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine && UseSessionActor); + Y_UNIT_TEST_TWIN(Replace, UseSessionActor) { + auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -179,15 +179,15 @@ Y_UNIT_TEST_SUITE(KqpPerf) { auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); // Single-phase REPLACE in NewEngine require additional runtime write callable - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), UseNewEngine ? 2 : 1); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 2); for (const auto& phase : stats.query_phases()) { UNIT_ASSERT(phase.affected_shards() <= 2); } } - Y_UNIT_TEST_QUAD(UpdateOn, UseNewEngine, UseSessionActor) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine && UseSessionActor); + Y_UNIT_TEST_TWIN(UpdateOn, UseSessionActor) { + auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -212,15 +212,15 @@ Y_UNIT_TEST_SUITE(KqpPerf) { auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); // Two-phase UPDATE ON in NewEngine require more complex runtime callables - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), UseNewEngine ? 3 : 2); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3); for (const auto& phase : stats.query_phases()) { UNIT_ASSERT(phase.affected_shards() <= 2); } } - Y_UNIT_TEST_QUAD(Insert, UseNewEngine, UseSessionActor) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine && UseSessionActor); + Y_UNIT_TEST_TWIN(Insert, UseSessionActor) { + auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -245,15 +245,15 @@ Y_UNIT_TEST_SUITE(KqpPerf) { auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); // Three-phase INSERT in NewEngine require more complex runtime callables - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), UseNewEngine ? 4 : 3); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 4); for (const auto& phase : stats.query_phases()) { UNIT_ASSERT(phase.affected_shards() <= 2); } } - Y_UNIT_TEST_QUAD(DeleteOn, UseNewEngine, UseSessionActor) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine && UseSessionActor); + Y_UNIT_TEST_TWIN(DeleteOn, UseSessionActor) { + auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -278,15 +278,15 @@ Y_UNIT_TEST_SUITE(KqpPerf) { auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); // TODO: Get rid of additional precompute stage for adding optionality to row members in NewEngine - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), UseNewEngine ? 2 : 1); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 2); for (const auto& phase : stats.query_phases()) { UNIT_ASSERT(phase.affected_shards() <= 2); } } - Y_UNIT_TEST_QUAD(Update, UseNewEngine, UseSessionActor) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine && UseSessionActor); + Y_UNIT_TEST_TWIN(Update, UseSessionActor) { + auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -320,8 +320,8 @@ Y_UNIT_TEST_SUITE(KqpPerf) { } } - Y_UNIT_TEST_QUAD(Delete, UseNewEngine, UseSessionActor) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine && UseSessionActor); + Y_UNIT_TEST_TWIN(Delete, UseSessionActor) { + auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -356,8 +356,8 @@ Y_UNIT_TEST_SUITE(KqpPerf) { } } - Y_UNIT_TEST_QUAD(IndexUpsert, UseNewEngine, UseSessionActor) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine && UseSessionActor); + Y_UNIT_TEST_TWIN(IndexUpsert, UseSessionActor) { + auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); CreateSampleTablesWithIndex(session); @@ -376,11 +376,11 @@ Y_UNIT_TEST_SUITE(KqpPerf) { UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), UseNewEngine ? 4 : 3); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 4); } - Y_UNIT_TEST_QUAD(IndexReplace, UseNewEngine, UseSessionActor) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine && UseSessionActor); + Y_UNIT_TEST_TWIN(IndexReplace, UseSessionActor) { + auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); CreateSampleTablesWithIndex(session); @@ -399,11 +399,11 @@ Y_UNIT_TEST_SUITE(KqpPerf) { UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), UseNewEngine ? 4 : 3); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 4); } - Y_UNIT_TEST_QUAD(IndexUpdateOn, UseNewEngine, UseSessionActor) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine && UseSessionActor); + Y_UNIT_TEST_TWIN(IndexUpdateOn, UseSessionActor) { + auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); CreateSampleTablesWithIndex(session); @@ -422,11 +422,11 @@ Y_UNIT_TEST_SUITE(KqpPerf) { UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), UseNewEngine ? 4 : 2); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 4); } - Y_UNIT_TEST_QUAD(IndexDeleteOn, UseNewEngine, UseSessionActor) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine && UseSessionActor); + Y_UNIT_TEST_TWIN(IndexDeleteOn, UseSessionActor) { + auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); CreateSampleTablesWithIndex(session); @@ -445,11 +445,11 @@ Y_UNIT_TEST_SUITE(KqpPerf) { UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), UseNewEngine ? 4 : 2); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 4); } - Y_UNIT_TEST_QUAD(IndexInsert, UseNewEngine, UseSessionActor) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine && UseSessionActor); + Y_UNIT_TEST_TWIN(IndexInsert, UseSessionActor) { + auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); CreateSampleTablesWithIndex(session); @@ -468,11 +468,11 @@ Y_UNIT_TEST_SUITE(KqpPerf) { UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), UseNewEngine ? 5 : 3); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 5); } - Y_UNIT_TEST_QUAD(IdxLookupJoin, UseNewEngine, UseSessionActor) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine && UseSessionActor); + Y_UNIT_TEST_TWIN(IdxLookupJoin, UseSessionActor) { + auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -494,11 +494,11 @@ Y_UNIT_TEST_SUITE(KqpPerf) { UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), UseNewEngine ? 3 : kikimr.IsUsingSnapshotReads() ? 2 : 3); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3); } - Y_UNIT_TEST_QUAD(IdxLookupJoinThreeWay, UseNewEngine, UseSessionActor) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine && UseSessionActor); + Y_UNIT_TEST_TWIN(IdxLookupJoinThreeWay, UseSessionActor) { + auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -521,11 +521,11 @@ Y_UNIT_TEST_SUITE(KqpPerf) { UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), UseNewEngine ? 5 : kikimr.IsUsingSnapshotReads() ? 3 : 4); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 5); } - Y_UNIT_TEST_QUAD(ComputeLength, UseNewEngine, UseSessionActor) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine && UseSessionActor); + Y_UNIT_TEST_TWIN(ComputeLength, UseSessionActor) { + auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -542,8 +542,8 @@ Y_UNIT_TEST_SUITE(KqpPerf) { UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 1); } - Y_UNIT_TEST_QUAD(AggregateToScalar, UseNewEngine, UseSessionActor) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine && UseSessionActor); + Y_UNIT_TEST_TWIN(AggregateToScalar, UseSessionActor) { + auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -565,10 +565,10 @@ Y_UNIT_TEST_SUITE(KqpPerf) { CompareYson(R"([[["Anna"];[3800u]]])", FormatResultSetYson(result.GetResultSet(0))); auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), UseNewEngine ? 2 : 1); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 2); } - Y_UNIT_TEST_TWIN(MultiDeleteFromTable, UseNewEngine) { + Y_UNIT_TEST(MultiDeleteFromTable) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); diff --git a/ydb/core/kqp/ut/kqp_ne_ut.cpp b/ydb/core/kqp/ut/kqp_ne_ut.cpp index 68aa49f9267..833e9b6888d 100644 --- a/ydb/core/kqp/ut/kqp_ne_ut.cpp +++ b/ydb/core/kqp/ut/kqp_ne_ut.cpp @@ -17,7 +17,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT 1; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); AssertSuccessResult(result); @@ -74,7 +73,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto query = R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; DECLARE $key AS Uint64; @@ -129,7 +127,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto query = R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; DECLARE $group AS Uint32?; DECLARE $name AS String?; @@ -176,7 +173,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { .Build(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; DECLARE $low AS Uint64; DECLARE $high AS Uint64; @@ -210,8 +206,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { .Build(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; - DECLARE $low AS Uint64; DECLARE $high AS Uint64; @@ -243,8 +237,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { .Build(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; - DECLARE $low AS Uint64; SELECT * FROM `/Root/EightShard` WHERE Key > $low ORDER BY Key; @@ -275,8 +267,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { .Build(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; - DECLARE $high AS Uint64; SELECT * FROM `/Root/EightShard` WHERE Key < $high ORDER BY Key; @@ -298,7 +288,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` WHERE Value2 = 0 ORDER BY Value1 DESC, Key; SELECT * FROM `/Root/Test` WHERE Group = 1 ORDER BY Amount, Group, Name; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); @@ -315,7 +304,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { ])", FormatResultSetYson(result.GetResultSet(1))); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/Test` WHERE Group = 2 ORDER BY Amount, Group, Name; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); @@ -331,7 +319,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; $left = (select Key, Value1, Value2 from `/Root/TwoShard` where Value2 = 1); $right = (select Key, Value1, Value2 from `/Root/TwoShard` where Value2 = -1); select Key, Value1, Value2 from $left order by Key; @@ -356,14 +343,12 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; UPSERT INTO `/Root/TwoShard` SELECT Key, Value1, Value2 + 1 AS Value2 FROM `/Root/TwoShard`; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); AssertSuccessResult(result); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` ORDER BY Key; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); AssertSuccessResult(result); @@ -386,14 +371,12 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; UPSERT INTO `/Root/TwoShard` SELECT Key - 3u AS Key, Value1, Value2 + 100 AS Value2 FROM `/Root/TwoShard`; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); AssertSuccessResult(result); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` WHERE Value2 > 10 ORDER BY Key; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); AssertSuccessResult(result); @@ -428,7 +411,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { { const TString query1(R"( --!syntax_v1 - PRAGMA Kikimr.UseNewEngine = "true"; DECLARE $items AS List<Struct<'key':Uint64,'index_0':Utf8,'value':Uint32>>; UPSERT INTO `/Root/Test1` SELECT * FROM AS_TABLE($items); @@ -464,7 +446,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { { const TString query1(R"( --!syntax_v1 - PRAGMA Kikimr.UseNewEngine = "true"; DECLARE $items AS List<Struct<'key':Uint64,'index_0':Utf8,'value':Uint32>>; SELECT * FROM AS_TABLE($items); )"); @@ -495,8 +476,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; - UPSERT INTO `/Root/TwoShard` (Key, Value1, Value2) VALUES (10u, "One", -10), (20u, "Two", -20); @@ -504,7 +483,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { AssertSuccessResult(result); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` WHERE Value2 <= -10 ORDER BY Key; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); AssertSuccessResult(result); @@ -538,8 +516,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { .Build(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; - DECLARE $key1 AS Uint32; DECLARE $value1 AS String; DECLARE $key2 AS Uint32; @@ -554,7 +530,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { AssertSuccessResult(result); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` WHERE Value1 = "New" ORDER BY Key; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); AssertSuccessResult(result); @@ -594,8 +569,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { .Build(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; - DECLARE $items AS List<Struct<Key:Uint32?, Value1:String?>>; UPSERT INTO `/Root/TwoShard` @@ -604,7 +577,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { AssertSuccessResult(result); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` WHERE Value1 = "New" ORDER BY Key; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); AssertSuccessResult(result); @@ -623,7 +595,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto session = db.CreateSession().GetValueSync().GetSession(); auto queryText = R"( - PRAGMA kikimr.UseNewEngine = "true"; DECLARE $items AS List<Struct< Key1: Uint32?, @@ -702,7 +673,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT Data, SUM(Key) AS Total FROM `/Root/EightShard` GROUP BY Data ORDER BY Data; )", TTxControl::BeginTx(TTxSettings::OnlineRO()).CommitTx()).ExtractValueSync(); result.GetIssues().PrintTo(Cerr); @@ -718,7 +688,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT Data, Text, COUNT(Key) AS Total FROM `/Root/EightShard` GROUP BY Data, Text ORDER BY Data, Text; )", TTxControl::BeginTx(TTxSettings::OnlineRO()).CommitTx()).ExtractValueSync(); result.GetIssues().PrintTo(Cerr); @@ -741,7 +710,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { execSettings.CollectQueryStats(ECollectQueryStatsMode::Basic); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT '42', 42, 5*5; )", TTxControl::BeginTx(TTxSettings::OnlineRO()).CommitTx(), execSettings).ExtractValueSync(); @@ -761,7 +729,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { execSettings.CollectQueryStats(ECollectQueryStatsMode::Basic); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT 1; SELECT 2; SELECT 3; @@ -781,7 +748,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT 1; SELECT Key FROM `/Root/TwoShard` ORDER BY Key DESC LIMIT 1; SELECT 2; @@ -800,7 +766,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto session1 = db.CreateSession().GetValueSync().GetSession(); auto result = session1.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` WHERE Key = 1; )", TTxControl::BeginTx(TTxSettings::SerializableRW())).GetValueSync(); AssertSuccessResult(result); @@ -809,13 +774,11 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto session2 = db.CreateSession().GetValueSync().GetSession(); result = session2.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; UPSERT INTO `/Root/TwoShard` (Key, Value1) VALUES(1, "NewValue"); )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).GetValueSync(); AssertSuccessResult(result); result = session1.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` WHERE Key = 2; )", TTxControl::Tx(*tx).CommitTx()).GetValueSync(); @@ -835,7 +798,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto session1 = db.CreateSession().GetValueSync().GetSession(); auto result = session1.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard`; )", TTxControl::BeginTx(TTxSettings::SerializableRW())).GetValueSync(); AssertSuccessResult(result); @@ -844,13 +806,11 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto session2 = db.CreateSession().GetValueSync().GetSession(); result = session2.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; UPSERT INTO `/Root/TwoShard` (Key, Value1) VALUES(101, "NewValue"); )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).GetValueSync(); AssertSuccessResult(result); result = session1.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/EightShard`; )", TTxControl::Tx(*tx).CommitTx()).GetValueSync(); @@ -870,7 +830,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard`; )", TTxControl::BeginTx(TTxSettings::SerializableRW())).GetValueSync(); AssertSuccessResult(result); @@ -878,7 +837,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto tx = result.GetTransaction(); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/EightShard`; )", TTxControl::Tx(*tx).CommitTx()).GetValueSync(); AssertSuccessResult(result); @@ -890,7 +848,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto session1 = db.CreateSession().GetValueSync().GetSession(); auto result = session1.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` WHERE Key = 1; )", TTxControl::BeginTx(TTxSettings::SerializableRW())).GetValueSync(); AssertSuccessResult(result); @@ -899,13 +856,11 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto session2 = db.CreateSession().GetValueSync().GetSession(); result = session2.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; UPSERT INTO `/Root/TwoShard` (Key, Value1) VALUES(1, "NewValue"); )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).GetValueSync(); AssertSuccessResult(result); result = session1.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; UPSERT INTO `/Root/TwoShard` (Key,Value1) VALUES(2, "NewValue"); )", TTxControl::Tx(*tx).CommitTx()).GetValueSync(); UNIT_ASSERT(!result.IsSuccess()); @@ -914,7 +869,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { UNIT_ASSERT(HasIssue(result.GetIssues(), NYql::TIssuesIds::KIKIMR_LOCKS_INVALIDATED)); result = session2.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` WHERE Key <= 2; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).GetValueSync(); AssertSuccessResult(result); @@ -929,7 +883,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/KeyValue` )", TTxControl::BeginTx(TTxSettings::SerializableRW())).GetValueSync(); UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); @@ -937,7 +890,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto tx = result.GetTransaction(); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT 42; )", TTxControl::Tx(*tx).CommitTx()).GetValueSync(); UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); @@ -951,7 +903,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` )", TTxControl::BeginTx(TTxSettings::SerializableRW())).GetValueSync(); UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); @@ -959,7 +910,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto tx = result.GetTransaction(); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT 42; )", TTxControl::Tx(*tx).CommitTx()).GetValueSync(); UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); @@ -973,7 +923,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/KeyValue` )", TTxControl::BeginTx(TTxSettings::SerializableRW())).GetValueSync(); UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); @@ -983,7 +932,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { { auto session2 = db.CreateSession().GetValueSync().GetSession(); result = session2.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; UPSERT INTO `/Root/KeyValue` (Key, Value) VALUES (3u, "Three") )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); @@ -991,7 +939,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { } result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT 42; )", TTxControl::Tx(*tx).CommitTx()).GetValueSync(); @@ -1010,7 +957,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` )", TTxControl::BeginTx(TTxSettings::SerializableRW())).GetValueSync(); UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); @@ -1020,7 +966,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { { auto session2 = db.CreateSession().GetValueSync().GetSession(); result = session2.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; UPSERT INTO `/Root/TwoShard` (Key, Value1, Value2) VALUES (4u, "Four", 4) )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); @@ -1028,7 +973,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { } result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT 42; )", TTxControl::Tx(*tx).CommitTx()).GetValueSync(); @@ -1047,7 +991,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` WHERE Key = 4000000001u; -- read 2nd shard @@ -1061,7 +1004,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { { auto session2 = db.CreateSession().GetValueSync().GetSession(); result = session2.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; UPSERT INTO `/Root/TwoShard` (Key, Value1, Value2) VALUES -- write 2nd shard (4000000001u, "XXX", -101) )", TTxControl::BeginTx().CommitTx()).ExtractValueSync(); @@ -1073,7 +1015,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { UNIT_ASSERT(HasIssue(txResult.GetIssues(), NYql::TIssuesIds::KIKIMR_LOCKS_INVALIDATED)); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT Key, Value1, Value2 FROM `/Root/TwoShard` WHERE Key = 11u )", TTxControl::BeginTx().CommitTx()).GetValueSync(); UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); @@ -1086,7 +1027,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; UPSERT INTO `/Root/TwoShard` SELECT Key + 1u AS Key, Value1 FROM `/Root/TwoShard`; @@ -1106,7 +1046,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { .Build(); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; DECLARE $key AS Uint32; DECLARE $value AS String; @@ -1117,7 +1056,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT COUNT(*) FROM `/Root/TwoShard`; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); @@ -1127,7 +1065,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { UNIT_ASSERT_VALUES_EQUAL_C(commitResult.GetStatus(), EStatus::SUCCESS, commitResult.GetIssues().ToString()); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` ORDER BY Key; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); @@ -1153,7 +1090,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; UPSERT INTO `/Root/KeyValue` (Key, Value) VALUES (3u, "Three") )", TTxControl::BeginTx(TTxSettings::SerializableRW())).ExtractValueSync(); AssertSuccessResult(result); @@ -1161,7 +1097,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto tx = result.GetTransaction(); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT 1=1; )", TTxControl::Tx(*tx).CommitTx()).ExtractValueSync(); AssertSuccessResult(result); @@ -1180,7 +1115,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { execSettings.CollectQueryStats(ECollectQueryStatsMode::Basic); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/EightShard` WHERE Key = 101 OR Key = 301 ORDER BY Key; )", TTxControl::BeginTx().CommitTx(), execSettings).GetValueSync(); @@ -1214,7 +1148,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { execSettings.CollectQueryStats(ECollectQueryStatsMode::Basic); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; DECLARE $key AS Uint64; SELECT * FROM `/Root/EightShard` WHERE Key = $key + 1; )", TTxControl::BeginTx().CommitTx(), params, execSettings).GetValueSync(); @@ -1252,7 +1185,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { .Build(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; DECLARE $Key AS UInt32; UPSERT INTO `/Root/TwoShard` (Key, Value1, Value2) VALUES @@ -1274,7 +1206,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).updates().rows(), 1); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` WHERE Value2 <= -10 ORDER BY Key; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); AssertSuccessResult(result); @@ -1296,7 +1227,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/EightShard`; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); @@ -1312,7 +1242,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; REPLACE INTO `/Root/TwoShard` (Value1, Key) VALUES ("Newvalue 1", 1u), @@ -1321,7 +1250,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` WHERE Key <= 5 ORDER BY Key; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); @@ -1335,7 +1263,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { ])", FormatResultSetYson(result.GetResultSet(0))); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; REPLACE INTO `/Root/Logs` (App, Ts, Host, Message) VALUES ("new_app_1", 100, "new_app_host_1.search.yandex.net", "Initialize"), @@ -1344,7 +1271,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/Logs` WHERE App = "new_app_1" ORDER BY App, Ts, Host; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); @@ -1356,7 +1282,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { ])", FormatResultSetYson(result.GetResultSet(0))); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; REPLACE INTO `/Root/Logs` (App, Host, Message) VALUES ("new_app_2", "host_2_1", "Empty"), @@ -1371,7 +1296,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT t1.Key AS Key, t2.Value2 AS Value FROM `/Root/KeyValue` AS t1 @@ -1405,7 +1329,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; DECLARE $data AS List<Struct<Key: Uint64>>; @@ -1430,7 +1353,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { execSettings.CollectQueryStats(ECollectQueryStatsMode::Basic); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; $input = ( SELECT Key, CAST(Fk21 AS Uint32) AS Fk21 @@ -1475,14 +1397,12 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { // add nulls auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; REPLACE INTO `/Root/KeyValue` (Key, Value) VALUES (4u, "Four"), (NULL, "Null"); REPLACE INTO `/Root/Join2` (Key1, Key2, Name, Value2) VALUES (1, NULL, "Name Null", "Value Null"); )", TTxControl::BeginTx().CommitTx()).ExtractValueSync(); UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT Key1, Key2, Name, Value2 FROM `/Root/Join2` AS t1 @@ -1505,8 +1425,8 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { ])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_QUAD(JoinPure, UseNewEngine, UseSessionActor) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine && UseSessionActor); + Y_UNIT_TEST_TWIN(JoinPure, UseSessionActor) { + auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -1551,8 +1471,8 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { ])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_QUAD(JoinPureUncomparableKeys, UseNewEngine, UseSessionActor) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine && UseSessionActor); + Y_UNIT_TEST_TWIN(JoinPureUncomparableKeys, UseSessionActor) { + auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -1574,8 +1494,8 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { CompareYson(R"([])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_QUAD(SelfJoin, UseNewEngine, UseSessionActor) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine && UseSessionActor); + Y_UNIT_TEST_TWIN(SelfJoin, UseSessionActor) { + auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -1602,7 +1522,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { execSettings.CollectQueryStats(ECollectQueryStatsMode::Basic); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; UPDATE `/Root/TwoShard` SET Value1 = "Updated" @@ -1624,7 +1543,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { UNIT_ASSERT(stats.query_phases(1).duration_us() > 0); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` ORDER BY Key; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); @@ -1648,7 +1566,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { execSettings.CollectQueryStats(ECollectQueryStatsMode::Basic); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; DELETE FROM `/Root/TwoShard` WHERE Value2 = -1; @@ -1671,7 +1588,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).deletes().rows(), 2); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` ORDER BY Key; )", TTxControl::BeginTx().CommitTx()).ExtractValueSync(); @@ -1694,7 +1610,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { execSettings.CollectQueryStats(ECollectQueryStatsMode::Basic); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; DELETE FROM `/Root/TwoShard` ON SELECT * FROM `/Root/TwoShard` WHERE Value2 = 1; @@ -1717,7 +1632,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).deletes().rows(), 2); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` ORDER BY Key; )", TTxControl::BeginTx().CommitTx()).ExtractValueSync(); @@ -1740,7 +1654,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { execSettings.CollectQueryStats(ECollectQueryStatsMode::Basic); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; UPDATE `/Root/TwoShard` SET Value1 = "Updated" WHERE Value2 = 1; UPSERT INTO `/Root/TwoShard` (Key, Value1, Value2) VALUES @@ -1749,7 +1662,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` ORDER BY Key; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); @@ -1793,7 +1705,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; DECLARE $data AS List<Struct<Key: Uint32, Value1: String, Value2: Int32>>; @@ -1803,7 +1714,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` WHERE Key > 5 AND Key < 12 ORDER BY Key; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); @@ -1822,7 +1732,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto query = R"( --!syntax_v1 - pragma kikimr.UseNewEngine = "true"; declare $key as UInt64; declare $text as String; @@ -1859,7 +1768,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).updates().rows(), 1); it = session.ExecuteDataQuery(R"( - pragma kikimr.UseNewEngine = "true"; select Key, Text, Data from `/Root/EightShard` where Text = "foo" order by Key )",TTxControl::BeginTx().CommitTx()).GetValueSync(); @@ -1896,7 +1804,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA Kikimr.UseNewEngine = "true"; DECLARE $in AS List<Struct<Key: Uint64, Value: Decimal(22, 9)>>; REPLACE INTO `/Root/DecimalTest` @@ -1905,7 +1812,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); result = session.ExecuteDataQuery(R"( - PRAGMA Kikimr.UseNewEngine = "true"; SELECT Key, Value FROM `/Root/DecimalTest` ORDER BY Key )", TTxControl::BeginTx().CommitTx(), params).GetValueSync(); UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); @@ -1922,7 +1828,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - pragma kikimr.UseNewEngine = "true"; select * from `/Root/TwoShard` where Key = 1; )", TTxControl::BeginTx()).ExtractValueSync(); UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); @@ -1932,7 +1837,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { for (ui64 i : {2u, 3u, 4u, 4000000001u, 4000000002u, 4000000003u}) { result = session.ExecuteDataQuery(Sprintf(R"( - pragma kikimr.UseNewEngine = "true"; select * from `/Root/TwoShard` where Key = %ld; )", i), TTxControl::Tx(*tx)).ExtractValueSync(); UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); @@ -1956,7 +1860,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { for (auto withSort : {false, true}) { // TODO: passthrough FlatMap TStringBuilder query; query << "--!syntax_v1" << Endl - << "pragma kikimr.UseNewEngine = 'true';" << Endl << "declare $limit as Uint64;" << Endl << "declare $offset as Uint64;" << Endl << "select Key, Value from `/Root/KeyValue`"; @@ -2010,7 +1913,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { // TODO: Take(query result) . ReadTable // test(R"( -// pragma kikimr.UseNewEngine = "true"; // $limit = ( // select Key + 1 from `/Root/KeyValue` where Value = 'Four' // ); @@ -2026,7 +1928,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { kikimr.GetTestServer().GetRuntime()->SetLogPriority(NKikimrServices::KQP_EXECUTER, NActors::NLog::PRI_INFO); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT Value1, Value2, Key FROM `/Root/TwoShard` WHERE Value2 != 0 ORDER BY Key DESC; )", TTxControl::BeginTx(TTxSettings::OnlineRO()).CommitTx()).ExtractValueSync(); AssertSuccessResult(result); @@ -2049,7 +1950,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { kikimr.GetTestServer().GetRuntime()->SetLogPriority(NKikimrServices::KQP_EXECUTER, NActors::NLog::PRI_INFO); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT Value1, Value2, Key FROM `/Root/TwoShard` WHERE Value2 != 0 ORDER BY Key DESC; )", TTxControl::BeginTx(TTxSettings::OnlineRO(TTxOnlineSettings().AllowInconsistentReads(true))).CommitTx()) .ExtractValueSync(); @@ -2085,7 +1985,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { AssertSuccessResult(session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; REPLACE INTO `FollowersKv` (Key, Value) VALUES (1u, "One"), @@ -2101,7 +2000,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { // Followers immediate auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM FollowersKv WHERE Key = 21; )", TTxControl::BeginTx(TTxSettings::StaleRO()).CommitTx()).ExtractValueSync(); AssertSuccessResult(result); @@ -2115,7 +2013,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { // Followers distributed result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM FollowersKv WHERE Value != "One" ORDER BY Key; )", TTxControl::BeginTx(TTxSettings::StaleRO()).CommitTx()).ExtractValueSync(); AssertSuccessResult(result); @@ -2131,7 +2028,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { // No followers immediate result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM TwoShard WHERE Key = 2; )", TTxControl::BeginTx(TTxSettings::StaleRO()).CommitTx()).ExtractValueSync(); AssertSuccessResult(result); @@ -2145,7 +2041,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { // No followers distributed result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM TwoShard WHERE Value2 < 0 ORDER BY Key; )", TTxControl::BeginTx(TTxSettings::StaleRO()).CommitTx()).ExtractValueSync(); AssertSuccessResult(result); @@ -2166,7 +2061,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { kikimr.GetTestServer().GetRuntime()->SetLogPriority(NKikimrServices::KQP_EXECUTER, NActors::NLog::PRI_INFO); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT Value1, Value2, Key FROM `/Root/TwoShard` WHERE Value2 != 0 ORDER BY Key DESC; )", TTxControl::BeginTx(TTxSettings::StaleRO()).CommitTx()).ExtractValueSync(); AssertSuccessResult(result); @@ -2187,7 +2081,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExplainDataQuery(R"( - PRAGMA Kikimr.UseNewEngine = "true"; DECLARE $max_key as Uint64; DECLARE $min_key as Uint64; SELECT * FROM `/Root/KeyValue` WHERE Key <= $max_key AND Key >= $min_key; @@ -2207,7 +2100,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA Kikimr.UseNewEngine = "true"; UPSERT INTO `/Root/TwoShard` SELECT @@ -2218,7 +2110,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA Kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard` WHERE Key = 100; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); @@ -2258,7 +2149,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; REPLACE INTO `/Root/TableOne` (Key, Value) VALUES (1, 1), @@ -2396,10 +2286,8 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { #endif }; - TString useNewEngine = "PRAGMA kikimr.UseNewEngine = \"true\";"; - for (auto& item: testData) { - auto result = session.ExecuteDataQuery(useNewEngine + item.first, + auto result = session.ExecuteDataQuery(item.first, TTxControl::BeginTx(TTxSettings::OnlineRO()).CommitTx()).ExtractValueSync(); AssertSuccessResult(result); auto resultYson = FormatResultSetYson(result.GetResultSet(0)); @@ -2407,7 +2295,7 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { } for (auto& item: testData) { - auto it = db.StreamExecuteScanQuery(useNewEngine + item.first).GetValueSync(); + auto it = db.StreamExecuteScanQuery(item.first).GetValueSync(); UNIT_ASSERT_C(it.IsSuccess(), it.GetIssues().ToString()); CompareYson(item.second, CollectStreamResult(it).ResultSetYson); @@ -2423,7 +2311,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { execSettings.CollectQueryStats(ECollectQueryStatsMode::Basic); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; DELETE FROM TwoShard WHERE Value1 != TestUdfs::RandString(10); )", TTxControl::BeginTx().CommitTx(), execSettings).ExtractValueSync(); UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); @@ -2441,7 +2328,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { execSettings.CollectQueryStats(ECollectQueryStatsMode::Basic); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; UPSERT INTO `/Root/EightShard` (Key, Data) VALUES (100, 100500), (100500, 100); DELETE FROM `/Root/EightShard` ON (Key) VALUES (100); )", TTxControl::BeginTx().CommitTx(), execSettings).ExtractValueSync(); @@ -2451,7 +2337,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { // Cerr << "!!!\n" << stats.DebugString() << Endl; result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT Key, Data FROM `/Root/EightShard` WHERE Key=100 or Key=100500 @@ -2471,7 +2356,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; $input1 = SELECT * FROM EightShard WHERE Text = "Value1"; $input2 = SELECT * FROM EightShard WHERE Text = "Value2"; @@ -2512,7 +2396,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; REPLACE INTO `/Root/table1` (key, cached) VALUES ("Key1", "CachedValue1"), @@ -2521,7 +2404,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; REPLACE INTO `/Root/table2` ( key, in_cache, value @@ -2533,7 +2415,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA Kikimr.UseNewEngine = "true"; $t1 = SELECT `cached`, `key` FROM `/Root/table1` WHERE `key` = "Key1"; @@ -2563,7 +2444,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; $key = SELECT Fk22 AS Key2 FROM Join1 WHERE Key = 1; @@ -2585,7 +2465,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; $data = SELECT * FROM KeyValue @@ -2613,7 +2492,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; $data = SELECT Key1, Key2, Name, Value2 @@ -2643,7 +2521,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; SELECT t1.Key AS Key, t2.Value2 AS Value, t2.Value2 AS Text FROM KeyValue AS t1 @@ -2682,7 +2559,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; DECLARE $items AS List<Struct< Key: String, @@ -2730,7 +2606,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; DECLARE $rows AS List<Struct< Key : Uint32?, @@ -2759,7 +2634,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; DECLARE $group AS Uint32; DECLARE $name AS String; @@ -2784,7 +2658,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; DECLARE $groups AS List<Uint32>; @@ -2799,7 +2672,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM Test; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); @@ -2819,7 +2691,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; DECLARE $keys AS List<Uint32>; @@ -2834,7 +2705,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM TwoShard WHERE Key < 10; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); @@ -2854,7 +2724,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA Kikimr.UseNewEngine = "true"; $keys = SELECT Fk21 AS Key1, Fk22 AS Key2 FROM Join1 WHERE Value = "Value1"; @@ -2879,7 +2748,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM Join2 WHERE Key1 = 101 ORDER BY Key1, Key2; )", TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx()).ExtractValueSync(); @@ -2900,7 +2768,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA Kikimr.UseNewEngine = "true"; $keys = SELECT Group, Name, Amount FROM Test @@ -2935,7 +2802,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; PRAGMA DisableSimpleColumns; SELECT * FROM `Join1` AS l JOIN `Join2` AS r ON l.Fk21 = r.Key1 AND r.Key1 = l.Fk21 @@ -2951,8 +2817,8 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { ])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_QUAD(JoinDictWithPure, UseNewEngine, UseSessionActor) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine && UseSessionActor); + Y_UNIT_TEST_TWIN(JoinDictWithPure, UseSessionActor) { + auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -2993,7 +2859,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; UPDATE TestTable SET Data = 10 WHERE Key = 1; )", TTxControl::BeginTx().CommitTx()).ExtractValueSync(); @@ -3006,7 +2871,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA Kikimr.UseNewEngine = 'true'; SELECT * FROM `/Root/KeyValue`; SELECT * FROM `/Root/KeyValue`; SELECT * FROM `/Root/Test`; @@ -3030,7 +2894,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto result = session.ExplainDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = 'true'; $current_value = SELECT Fk21 FROM Join1 WHERE Key = 2; @@ -3056,7 +2919,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = 'true'; $max_key = (SELECT Key FROM `/Root/KeyValue` ORDER BY Key DESC LIMIT 1); SELECT $max_key ?? 0 @@ -3075,7 +2937,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = 'true'; SELECT * FROM `/Root/Logs` WHERE App = 'nginx'u AND Ts >= 2 LIMIT 1 )", TTxControl::BeginTx().CommitTx(), settings).ExtractValueSync(); @@ -3095,7 +2956,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = 'true'; DECLARE $app AS Utf8; @@ -3118,7 +2978,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto result = session.ExplainDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = 'true'; SELECT Fk21 FROM Join1 WHERE Value = "Value1"; SELECT Fk22 FROM Join1 WHERE Value = "Value2"; @@ -3139,7 +2998,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto result = session.ExplainDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = 'true'; SELECT Fk21 FROM Join1 WHERE Key = 1; SELECT Fk22 FROM Join1 WHERE Value = "Value2"; @@ -3167,7 +3025,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = 'true'; $data = ( SELECT Data FROM EightShard WHERE Key = 401 @@ -3198,7 +3055,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = 'true'; DECLARE $key AS Uint64; @@ -3275,7 +3131,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto result = session.ExplainDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = 'true'; PRAGMA kikimr.OptEnablePredicateExtract = 'false'; DECLARE $app AS Utf8; @@ -3327,7 +3182,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto result = session.ExplainDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = 'true'; DECLARE $input AS List<Struct< Key: Uint64, @@ -3365,7 +3219,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; $subquery = SELECT Key FROM `/Root/KeyValue`; $subquery2 = SELECT Amount FROM `/Root/Test`; @@ -3395,7 +3248,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; DECLARE $rows AS List<Struct< Name: String, @@ -3430,7 +3282,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; DECLARE $value1 AS Int32; DECLARE $value2 AS Uint64; @@ -3472,7 +3323,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; $count1 = SELECT COUNT (*) FROM `/Root/KeyValue`; $count2 = SELECT COUNT(*) @@ -3511,7 +3361,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; $subquery = SELECT Key FROM `/Root/EightShard`; SELECT * FROM `/Root/KeyValue` @@ -3539,7 +3388,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; DECLARE $keys AS List<Uint64>; SELECT * FROM `/Root/KeyValue` @@ -3557,7 +3405,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/KeyValue` WHERE Key = 1; @@ -3581,7 +3428,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; $values = SELECT Value2 AS Value FROM TwoShard; @@ -3608,7 +3454,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { auto result = session.ExecuteDataQuery(R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; SELECT ts.Value1 AS c1, kv.Value AS c2, t.Name AS c3 FROM TwoShard AS ts diff --git a/ydb/core/kqp/ut/kqp_not_null_columns_ut.cpp b/ydb/core/kqp/ut/kqp_not_null_columns_ut.cpp index 372d06566ab..c37ed10f0a5 100644 --- a/ydb/core/kqp/ut/kqp_not_null_columns_ut.cpp +++ b/ydb/core/kqp/ut/kqp_not_null_columns_ut.cpp @@ -7,7 +7,7 @@ using namespace NYdb; using namespace NYdb::NTable; Y_UNIT_TEST_SUITE(KqpNotNullColumns) { - Y_UNIT_TEST_NEW_ENGINE(CreateTableWithDisabledNotNullDataColumns) { + Y_UNIT_TEST(CreateTableWithDisabledNotNullDataColumns) { TKikimrRunner kikimr; auto client = kikimr.GetTableClient(); auto session = client.CreateSession().GetValueSync().GetSession(); @@ -37,7 +37,7 @@ Y_UNIT_TEST_SUITE(KqpNotNullColumns) { } } - Y_UNIT_TEST_NEW_ENGINE(InsertNotNullPk) { + Y_UNIT_TEST(InsertNotNullPk) { TKikimrRunner kikimr; auto client = kikimr.GetTableClient(); auto session = client.CreateSession().GetValueSync().GetSession(); @@ -75,7 +75,7 @@ Y_UNIT_TEST_SUITE(KqpNotNullColumns) { } } - Y_UNIT_TEST_NEW_ENGINE(UpsertNotNullPk) { + Y_UNIT_TEST(UpsertNotNullPk) { TKikimrRunner kikimr; auto client = kikimr.GetTableClient(); auto session = client.CreateSession().GetValueSync().GetSession(); @@ -113,7 +113,7 @@ Y_UNIT_TEST_SUITE(KqpNotNullColumns) { } } - Y_UNIT_TEST_NEW_ENGINE(ReplaceNotNullPk) { + Y_UNIT_TEST(ReplaceNotNullPk) { TKikimrRunner kikimr; auto client = kikimr.GetTableClient(); auto session = client.CreateSession().GetValueSync().GetSession(); @@ -151,7 +151,7 @@ Y_UNIT_TEST_SUITE(KqpNotNullColumns) { } } - Y_UNIT_TEST_NEW_ENGINE(UpdateNotNullPk) { + Y_UNIT_TEST(UpdateNotNullPk) { TKikimrRunner kikimr; auto client = kikimr.GetTableClient(); auto session = client.CreateSession().GetValueSync().GetSession(); @@ -199,7 +199,7 @@ Y_UNIT_TEST_SUITE(KqpNotNullColumns) { } } - Y_UNIT_TEST_NEW_ENGINE(SelectNotNullColumns) { + Y_UNIT_TEST(SelectNotNullColumns) { auto settings = TKikimrSettings() .SetEnableNotNullDataColumns(true); @@ -250,7 +250,7 @@ Y_UNIT_TEST_SUITE(KqpNotNullColumns) { } } - Y_UNIT_TEST_NEW_ENGINE(InsertNotNull) { + Y_UNIT_TEST(InsertNotNull) { auto settings = TKikimrSettings() .SetEnableNotNullDataColumns(true); @@ -291,7 +291,7 @@ Y_UNIT_TEST_SUITE(KqpNotNullColumns) { } } - Y_UNIT_TEST_NEW_ENGINE(UpsertNotNull) { + Y_UNIT_TEST(UpsertNotNull) { auto settings = TKikimrSettings() .SetEnableNotNullDataColumns(true); @@ -332,7 +332,7 @@ Y_UNIT_TEST_SUITE(KqpNotNullColumns) { } } - Y_UNIT_TEST_NEW_ENGINE(ReplaceNotNull) { + Y_UNIT_TEST(ReplaceNotNull) { auto settings = TKikimrSettings() .SetEnableNotNullDataColumns(true); @@ -373,7 +373,7 @@ Y_UNIT_TEST_SUITE(KqpNotNullColumns) { } } - Y_UNIT_TEST_NEW_ENGINE(UpdateNotNull) { + Y_UNIT_TEST(UpdateNotNull) { auto settings = TKikimrSettings() .SetEnableNotNullDataColumns(true); @@ -425,7 +425,7 @@ Y_UNIT_TEST_SUITE(KqpNotNullColumns) { } } - Y_UNIT_TEST_NEW_ENGINE(UpdateOnNotNull) { + Y_UNIT_TEST(UpdateOnNotNull) { auto settings = TKikimrSettings() .SetEnableNotNullDataColumns(true); @@ -471,7 +471,7 @@ Y_UNIT_TEST_SUITE(KqpNotNullColumns) { } } - Y_UNIT_TEST_NEW_ENGINE(AlterAddNotNullColumn) { + Y_UNIT_TEST(AlterAddNotNullColumn) { TKikimrRunner kikimr; auto client = kikimr.GetTableClient(); auto session = client.CreateSession().GetValueSync().GetSession(); @@ -495,7 +495,7 @@ Y_UNIT_TEST_SUITE(KqpNotNullColumns) { } } - Y_UNIT_TEST_NEW_ENGINE(AlterDropNotNullColumn) { + Y_UNIT_TEST(AlterDropNotNullColumn) { auto settings = TKikimrSettings() .SetEnableNotNullDataColumns(true); @@ -523,7 +523,7 @@ Y_UNIT_TEST_SUITE(KqpNotNullColumns) { } } - Y_UNIT_TEST_NEW_ENGINE(FailedMultiEffects) { + Y_UNIT_TEST(FailedMultiEffects) { auto settings = TKikimrSettings() .SetEnableNotNullDataColumns(true); @@ -563,7 +563,7 @@ Y_UNIT_TEST_SUITE(KqpNotNullColumns) { } } - Y_UNIT_TEST_NEW_ENGINE(CreateIndexedTableWithDisabledNotNullDataColumns) { + Y_UNIT_TEST(CreateIndexedTableWithDisabledNotNullDataColumns) { TKikimrRunner kikimr; auto client = kikimr.GetTableClient(); auto session = client.CreateSession().GetValueSync().GetSession(); @@ -599,7 +599,7 @@ Y_UNIT_TEST_SUITE(KqpNotNullColumns) { } } - Y_UNIT_TEST_NEW_ENGINE(SecondaryKeyWithNotNullColumn) { + Y_UNIT_TEST(SecondaryKeyWithNotNullColumn) { auto settings = TKikimrSettings() .SetEnableNotNullDataColumns(true); @@ -701,7 +701,7 @@ Y_UNIT_TEST_SUITE(KqpNotNullColumns) { } } - Y_UNIT_TEST_NEW_ENGINE(SecondaryIndexWithNotNullDataColumn) { + Y_UNIT_TEST(SecondaryIndexWithNotNullDataColumn) { auto settings = TKikimrSettings() .SetEnableNotNullDataColumns(true); @@ -805,7 +805,7 @@ Y_UNIT_TEST_SUITE(KqpNotNullColumns) { } } - Y_UNIT_TEST_NEW_ENGINE(JoinBothTablesWithNotNullPk) { + Y_UNIT_TEST(JoinBothTablesWithNotNullPk) { TKikimrRunner kikimr; auto client = kikimr.GetTableClient(); auto session = client.CreateSession().GetValueSync().GetSession(); @@ -853,7 +853,7 @@ Y_UNIT_TEST_SUITE(KqpNotNullColumns) { } } - Y_UNIT_TEST_NEW_ENGINE(JoinLeftTableWithNotNullPk) { + Y_UNIT_TEST(JoinLeftTableWithNotNullPk) { TKikimrRunner kikimr; auto client = kikimr.GetTableClient(); auto session = client.CreateSession().GetValueSync().GetSession(); @@ -921,7 +921,7 @@ Y_UNIT_TEST_SUITE(KqpNotNullColumns) { } } - Y_UNIT_TEST_NEW_ENGINE(Describe) { + Y_UNIT_TEST(Describe) { TKikimrRunner kikimr; auto client = kikimr.GetTableClient(); auto session = client.CreateSession().GetValueSync().GetSession(); diff --git a/ydb/core/kqp/ut/kqp_params_ut.cpp b/ydb/core/kqp/ut/kqp_params_ut.cpp index d00d5ddbb54..5cd2e1ea861 100644 --- a/ydb/core/kqp/ut/kqp_params_ut.cpp +++ b/ydb/core/kqp/ut/kqp_params_ut.cpp @@ -7,7 +7,7 @@ using namespace NYdb; using namespace NYdb::NTable; Y_UNIT_TEST_SUITE(KqpParams) { - Y_UNIT_TEST_NEW_ENGINE(RowsList) { + Y_UNIT_TEST(RowsList) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -56,7 +56,7 @@ Y_UNIT_TEST_SUITE(KqpParams) { ])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(MissingParameter) { + Y_UNIT_TEST(MissingParameter) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -77,7 +77,7 @@ Y_UNIT_TEST_SUITE(KqpParams) { UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::BAD_REQUEST, result.GetIssues().ToString()); } - Y_UNIT_TEST_NEW_ENGINE(BadParameterType) { + Y_UNIT_TEST(BadParameterType) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -101,7 +101,7 @@ Y_UNIT_TEST_SUITE(KqpParams) { UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::BAD_REQUEST, result.GetIssues().ToString()); } - Y_UNIT_TEST_NEW_ENGINE(DefaultParameterValue) { + Y_UNIT_TEST(DefaultParameterValue) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -123,7 +123,7 @@ Y_UNIT_TEST_SUITE(KqpParams) { CompareYson(R"([[[11u];#]])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(ParameterTypes) { + Y_UNIT_TEST(ParameterTypes) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -274,8 +274,8 @@ Y_UNIT_TEST_SUITE(KqpParams) { UNIT_ASSERT_C(actual == expected1 || actual == expected2, "expected: " << expected1 << ", got: " << actual); } - Y_UNIT_TEST_QUAD(InvalidJson, UseNewEngine, UseSessionActor) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine && UseSessionActor); + Y_UNIT_TEST_TWIN(InvalidJson, UseSessionActor) { + auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); diff --git a/ydb/core/kqp/ut/kqp_pragma_ut.cpp b/ydb/core/kqp/ut/kqp_pragma_ut.cpp index 34b5e3eded5..65b8bc10a03 100644 --- a/ydb/core/kqp/ut/kqp_pragma_ut.cpp +++ b/ydb/core/kqp/ut/kqp_pragma_ut.cpp @@ -23,7 +23,7 @@ Y_UNIT_TEST_SUITE(KqpPragma) { CompareYson(R"([[1u;"One"]])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(Runtime) { + Y_UNIT_TEST(Runtime) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -37,7 +37,7 @@ Y_UNIT_TEST_SUITE(KqpPragma) { UNIT_ASSERT(HasIssue(result.GetIssues(), NYql::TIssuesIds::KIKIMR_PRAGMA_NOT_SUPPORTED)); } - Y_UNIT_TEST_NEW_ENGINE(Auth) { + Y_UNIT_TEST(Auth) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -97,7 +97,7 @@ Y_UNIT_TEST_SUITE(KqpPragma) { ])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(Warning) { + Y_UNIT_TEST(Warning) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); diff --git a/ydb/core/kqp/ut/kqp_query_ut.cpp b/ydb/core/kqp/ut/kqp_query_ut.cpp index 527787bbcdd..5d6aa33d56e 100644 --- a/ydb/core/kqp/ut/kqp_query_ut.cpp +++ b/ydb/core/kqp/ut/kqp_query_ut.cpp @@ -18,7 +18,7 @@ using namespace NYdb; using namespace NYdb::NTable; Y_UNIT_TEST_SUITE(KqpQuery) { - Y_UNIT_TEST_NEW_ENGINE(PreparedQueryInvalidate) { + Y_UNIT_TEST(PreparedQueryInvalidate) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -56,7 +56,7 @@ Y_UNIT_TEST_SUITE(KqpQuery) { UNIT_ASSERT_VALUES_EQUAL(counters.RecompileRequestGet()->Val(), 1); } - Y_UNIT_TEST_NEW_ENGINE(QueryCache) { + Y_UNIT_TEST(QueryCache) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -83,10 +83,10 @@ Y_UNIT_TEST_SUITE(KqpQuery) { UNIT_ASSERT_VALUES_EQUAL(stats.compilation().from_cache(), true); } - Y_UNIT_TEST_NEW_ENGINE(QueryCacheTtl) { + Y_UNIT_TEST(QueryCacheTtl) { NKikimrConfig::TAppConfig appConfig; appConfig.MutableTableServiceConfig()->SetCompileQueryCacheTTLSec(2); - appConfig.MutableTableServiceConfig()->SetEnableKqpSessionActor(UseNewEngine); + appConfig.MutableTableServiceConfig()->SetEnableKqpSessionActor(true); TKikimrRunner kikimr(appConfig); auto db = kikimr.GetTableClient(); @@ -132,7 +132,7 @@ Y_UNIT_TEST_SUITE(KqpQuery) { UNIT_ASSERT_VALUES_EQUAL(stats.compilation().from_cache(), false); } - Y_UNIT_TEST_NEW_ENGINE(QueryCacheInvalidate) { + Y_UNIT_TEST(QueryCacheInvalidate) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -164,7 +164,7 @@ Y_UNIT_TEST_SUITE(KqpQuery) { UNIT_ASSERT_VALUES_EQUAL(counters.RecompileRequestGet()->Val(), 1); } - Y_UNIT_TEST_NEW_ENGINE(QueryCachePermissionsLoss) { + Y_UNIT_TEST(QueryCachePermissionsLoss) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -216,7 +216,7 @@ Y_UNIT_TEST_SUITE(KqpQuery) { } } - Y_UNIT_TEST_NEW_ENGINE(QueryTimeout) { + Y_UNIT_TEST(QueryTimeout) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -246,7 +246,7 @@ Y_UNIT_TEST_SUITE(KqpQuery) { UNIT_ASSERT_C(result.GetStatus() == EStatus::SUCCESS || result.GetStatus() == EStatus::SESSION_BUSY, result.GetIssues().ToString()); } - Y_UNIT_TEST_NEW_ENGINE(QueryTimeoutImmediate) { + Y_UNIT_TEST(QueryTimeoutImmediate) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -276,7 +276,7 @@ Y_UNIT_TEST_SUITE(KqpQuery) { UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus() == EStatus::SUCCESS || result.GetStatus() == EStatus::SESSION_BUSY, true, result.GetIssues().ToString()); } - Y_UNIT_TEST_NEW_ENGINE(QueryClientTimeout) { + Y_UNIT_TEST(QueryClientTimeout) { TStringStream logStream; { @@ -331,7 +331,7 @@ Y_UNIT_TEST_SUITE(KqpQuery) { UNIT_ASSERT_C(v <= 3, "got " << v); } - Y_UNIT_TEST_NEW_ENGINE(QueryCancel) { + Y_UNIT_TEST(QueryCancel) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -359,7 +359,7 @@ Y_UNIT_TEST_SUITE(KqpQuery) { UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::SUCCESS); } - Y_UNIT_TEST_NEW_ENGINE(QueryCancelImmediate) { + Y_UNIT_TEST(QueryCancelImmediate) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -387,7 +387,7 @@ Y_UNIT_TEST_SUITE(KqpQuery) { UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::SUCCESS); } - Y_UNIT_TEST_NEW_ENGINE(QueryCancelWrite) { + Y_UNIT_TEST(QueryCancelWrite) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -411,7 +411,7 @@ Y_UNIT_TEST_SUITE(KqpQuery) { NDataShard::gCancelTxFailPoint.Disable(); } - Y_UNIT_TEST_NEW_ENGINE(QueryCancelWriteImmediate) { + Y_UNIT_TEST(QueryCancelWriteImmediate) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -434,7 +434,7 @@ Y_UNIT_TEST_SUITE(KqpQuery) { NDataShard::gCancelTxFailPoint.Disable(); } - Y_UNIT_TEST_NEW_ENGINE(QueryResultsTruncated) { + Y_UNIT_TEST(QueryResultsTruncated) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -578,7 +578,7 @@ Y_UNIT_TEST_SUITE(KqpQuery) { UNIT_ASSERT(result.IsSuccess()); } - Y_UNIT_TEST_NEW_ENGINE(YqlTableSample) { + Y_UNIT_TEST(YqlTableSample) { auto setting = NKikimrKqp::TKqpSetting(); setting.SetName("_KqpYqlSyntaxVersion"); setting.SetValue("1"); @@ -601,7 +601,6 @@ Y_UNIT_TEST_SUITE(KqpQuery) { auto session = db.CreateSession().GetValueSync().GetSession(); auto result = session.ExplainDataQuery(R"( - PRAGMA Kikimr.UseNewEngine = 'false'; SELECT * FROM `/Root/Test` WHERE Group = 1 AND Name > "Name"; )").GetValueSync(); UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); @@ -615,15 +614,10 @@ Y_UNIT_TEST_SUITE(KqpQuery) { NYql::TExprNode::TPtr exprRoot; UNIT_ASSERT(CompileExpr(*astRes.Root, exprRoot, exprCtx, nullptr)); - UNIT_ASSERT(NYql::NNodes::TMaybeNode<NYql::NNodes::TKiProgram>(exprRoot)); - UNIT_ASSERT(NYql::FindNode(exprRoot, [](const NYql::TExprNode::TPtr& node) { - return NYql::NNodes::TMaybeNode<NYql::NNodes::TKiSelectRange>(node).IsValid(); - })); - UNIT_ASSERT(NJson::ValidateJson(result.GetPlan())); } - Y_UNIT_TEST_NEW_ENGINE(RewriteIfPresentToMap) { + Y_UNIT_TEST(RewriteIfPresentToMap) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -654,7 +648,7 @@ Y_UNIT_TEST_SUITE(KqpQuery) { UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); } - Y_UNIT_TEST_NEW_ENGINE(Pure) { + Y_UNIT_TEST(Pure) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -673,7 +667,7 @@ Y_UNIT_TEST_SUITE(KqpQuery) { FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(Now) { + Y_UNIT_TEST(Now) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -724,7 +718,7 @@ Y_UNIT_TEST_SUITE(KqpQuery) { UNIT_ASSERT_VALUES_EQUAL(timestamps.size(), QueriesCount); } - Y_UNIT_TEST_NEW_ENGINE(RandomNumber) { + Y_UNIT_TEST(RandomNumber) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -748,7 +742,7 @@ Y_UNIT_TEST_SUITE(KqpQuery) { UNIT_ASSERT(value != parser.ColumnParser(2).GetUint64()); } - Y_UNIT_TEST_NEW_ENGINE(RandomUuid) { + Y_UNIT_TEST(RandomUuid) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -766,7 +760,7 @@ Y_UNIT_TEST_SUITE(KqpQuery) { UNIT_ASSERT(value == parser.ColumnParser(1).GetUtf8()); } - Y_UNIT_TEST_NEW_ENGINE(CurrentUtcTimestamp) { + Y_UNIT_TEST(CurrentUtcTimestamp) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -848,7 +842,7 @@ Y_UNIT_TEST_SUITE(KqpQuery) { UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); } - Y_UNIT_TEST_NEW_ENGINE(UnsafeTimestampCastV1) { + Y_UNIT_TEST(UnsafeTimestampCastV1) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -884,7 +878,7 @@ Y_UNIT_TEST_SUITE(KqpQuery) { UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::GENERIC_ERROR, result.GetIssues().ToString()); } - Y_UNIT_TEST_NEW_ENGINE(QueryStats) { + Y_UNIT_TEST(QueryStats) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -941,13 +935,7 @@ Y_UNIT_TEST_SUITE(KqpQuery) { UNIT_ASSERT(phase1.duration_us() > 0); UNIT_ASSERT(phase1.cpu_time_us() > 0); totalCpuTimeUs += phase1.cpu_time_us(); - UNIT_ASSERT_VALUES_EQUAL(phase1.table_access().size(), UseNewEngine ? 1 : 2); - if (!UseNewEngine) { - UNIT_ASSERT_VALUES_EQUAL(phase1.table_access(1).name(), "/Root/TwoShard"); - UNIT_ASSERT(!phase1.table_access(1).has_reads()); - UNIT_ASSERT(!phase1.table_access(1).has_updates()); - UNIT_ASSERT(!phase1.table_access(1).has_deletes()); - } + UNIT_ASSERT_VALUES_EQUAL(phase1.table_access().size(), 1); UNIT_ASSERT_VALUES_EQUAL(phase1.table_access(0).name(), "/Root/EightShard"); UNIT_ASSERT(!phase1.table_access(0).has_reads()); UNIT_ASSERT_VALUES_EQUAL(phase1.table_access(0).updates().rows(), 3); @@ -957,7 +945,7 @@ Y_UNIT_TEST_SUITE(KqpQuery) { UNIT_ASSERT_VALUES_EQUAL(stats.total_cpu_time_us(), totalCpuTimeUs); } - Y_UNIT_TEST_NEW_ENGINE(RowsLimit) { + Y_UNIT_TEST(RowsLimit) { auto setting = NKikimrKqp::TKqpSetting(); setting.SetName("_ResultRowsLimit"); setting.SetValue("5"); @@ -975,14 +963,14 @@ Y_UNIT_TEST_SUITE(KqpQuery) { UNIT_ASSERT_VALUES_EQUAL(result.GetResultSet(0).RowsCount(), 5); } - Y_UNIT_TEST_NEW_ENGINE(RowsLimitServiceOverride) { + Y_UNIT_TEST(RowsLimitServiceOverride) { auto setting = NKikimrKqp::TKqpSetting(); setting.SetName("_ResultRowsLimit"); setting.SetValue("5"); NKikimrConfig::TAppConfig appConfig; appConfig.MutableTableServiceConfig()->MutableQueryLimits()->SetResultRowsLimit(6); - appConfig.MutableTableServiceConfig()->SetEnableKqpSessionActor(UseNewEngine); + appConfig.MutableTableServiceConfig()->SetEnableKqpSessionActor(true); TKikimrRunner kikimr(appConfig, {setting}); auto db = kikimr.GetTableClient(); @@ -997,7 +985,7 @@ Y_UNIT_TEST_SUITE(KqpQuery) { UNIT_ASSERT_VALUES_EQUAL(result.GetResultSet(0).RowsCount(), 6); } - Y_UNIT_TEST_NEW_ENGINE(NoEvaluate) { + Y_UNIT_TEST(NoEvaluate) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -1068,7 +1056,7 @@ Y_UNIT_TEST_SUITE(KqpQuery) { } } - Y_UNIT_TEST_NEW_ENGINE(UdfTerminate) { + Y_UNIT_TEST(UdfTerminate) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -1084,7 +1072,7 @@ Y_UNIT_TEST_SUITE(KqpQuery) { })); } - Y_UNIT_TEST_NEW_ENGINE(UdfMemoryLimit) { + Y_UNIT_TEST(UdfMemoryLimit) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -1098,7 +1086,7 @@ Y_UNIT_TEST_SUITE(KqpQuery) { result.GetIssues().PrintTo(Cerr); } - Y_UNIT_TEST_NEW_ENGINE(DdlInDataQuery) { + Y_UNIT_TEST(DdlInDataQuery) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -1135,7 +1123,7 @@ Y_UNIT_TEST_SUITE(KqpQuery) { })); } - Y_UNIT_TEST_NEW_ENGINE(DyNumberCompare) { + Y_UNIT_TEST(DyNumberCompare) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -1195,7 +1183,7 @@ Y_UNIT_TEST_SUITE(KqpQuery) { UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::GENERIC_ERROR); } - Y_UNIT_TEST_NEW_ENGINE(SelectNull) { + Y_UNIT_TEST(SelectNull) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -1210,17 +1198,10 @@ Y_UNIT_TEST_SUITE(KqpQuery) { auto& cp = rs.ColumnParser(0); - if constexpr (UseNewEngine) { - UNIT_ASSERT_VALUES_EQUAL(TTypeParser::ETypeKind::Null, cp.GetKind()); - } else { - UNIT_ASSERT_VALUES_EQUAL(TTypeParser::ETypeKind::Optional, cp.GetKind()); - cp.OpenOptional(); - UNIT_ASSERT_VALUES_EQUAL(TTypeParser::ETypeKind::Void, cp.GetKind()); - UNIT_ASSERT(cp.IsNull()); - } + UNIT_ASSERT_VALUES_EQUAL(TTypeParser::ETypeKind::Null, cp.GetKind()); } - Y_UNIT_TEST_NEW_ENGINE(MultipleCurrentUtcTimestamp) { + Y_UNIT_TEST(MultipleCurrentUtcTimestamp) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -1235,7 +1216,7 @@ Y_UNIT_TEST_SUITE(KqpQuery) { UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); } - Y_UNIT_TEST_NEW_ENGINE(SelectWhereInSubquery) { + Y_UNIT_TEST(SelectWhereInSubquery) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -1246,7 +1227,7 @@ Y_UNIT_TEST_SUITE(KqpQuery) { UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); } - Y_UNIT_TEST_NEW_ENGINE(UpdateWhereInSubquery) { + Y_UNIT_TEST(UpdateWhereInSubquery) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -1257,7 +1238,7 @@ Y_UNIT_TEST_SUITE(KqpQuery) { UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); } - Y_UNIT_TEST_NEW_ENGINE(DeleteWhereInSubquery) { + Y_UNIT_TEST(DeleteWhereInSubquery) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); diff --git a/ydb/core/kqp/ut/kqp_scan_ut.cpp b/ydb/core/kqp/ut/kqp_scan_ut.cpp index 5b1ced8390d..d060c153b52 100644 --- a/ydb/core/kqp/ut/kqp_scan_ut.cpp +++ b/ydb/core/kqp/ut/kqp_scan_ut.cpp @@ -1983,7 +1983,6 @@ Y_UNIT_TEST_SUITE(KqpScan) { { auto result = db.StreamExecuteScanQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; PRAGMA kikimr.OptEnablePredicateExtract = "false"; $keys = SELECT Key FROM `/Root/EightShard`; SELECT * FROM `/Root/KeyValue` WHERE Key IN $keys ORDER BY Key; @@ -2027,7 +2026,6 @@ Y_UNIT_TEST_SUITE(KqpScan) { { auto result = db.StreamExecuteScanQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; PRAGMA kikimr.OptEnablePredicateExtract = "false"; $keys = SELECT Key FROM `/Root/KeyValue`; SELECT * FROM `/Root/TestTable` WHERE Key1 IN $keys ORDER BY Key1, Key2; @@ -2128,7 +2126,6 @@ Y_UNIT_TEST_SUITE(KqpScan) { server->GetRuntime()->SetEventFilter(captureEvents); sendQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; PRAGMA kikimr.OptEnablePredicateExtract = "false"; SELECT Value FROM `/Root/Table` WHERE Key IN AsList(1, 2, 3); )"); diff --git a/ydb/core/kqp/ut/kqp_scheme_ut.cpp b/ydb/core/kqp/ut/kqp_scheme_ut.cpp index aeb678b7a27..72db5475d51 100644 --- a/ydb/core/kqp/ut/kqp_scheme_ut.cpp +++ b/ydb/core/kqp/ut/kqp_scheme_ut.cpp @@ -112,7 +112,7 @@ Y_UNIT_TEST_SUITE(KqpScheme) { auto db = NYdb::NTable::TTableClient(driver); auto session = db.CreateSession().GetValueSync().GetSession(); kikimr.GetTestServer().GetRuntime()->SetLogPriority(NKikimrServices::FLAT_TX_SCHEMESHARD, NActors::NLog::PRI_INFO); - + { auto schemeClient = kikimr.GetSchemeClient(); @@ -142,7 +142,7 @@ Y_UNIT_TEST_SUITE(KqpScheme) { auto result = session.ExecuteSchemeQuery(dropTableQuery).ExtractValueSync(); UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); } - + driver.Stop(true); } @@ -317,7 +317,6 @@ Y_UNIT_TEST_SUITE(KqpScheme) { }, 0, Inflight + 1, NPar::TLocalExecutor::WAIT_COMPLETE | NPar::TLocalExecutor::MED_PRIORITY); } - template <bool UseNewEngine> void SchemaVersionMissmatchWithTest(bool write) { TKikimrRunner kikimr; @@ -380,7 +379,6 @@ Y_UNIT_TEST_SUITE(KqpScheme) { } } - template <bool UseNewEngine> void SchemaVersionMissmatchWithIndexTest(bool write) { //KIKIMR-14282 //YDBREQUESTS-1324 @@ -454,10 +452,10 @@ Y_UNIT_TEST_SUITE(KqpScheme) { { auto result = session.ExecuteDataQuery(query, TTxControl::BeginTx(), execSettings).ExtractValueSync(); - UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), (write || UseNewEngine) ? EStatus::SUCCESS : EStatus::ABORTED, result.GetIssues().ToString()); + UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); auto commit = result.GetTransaction()->Commit().GetValueSync(); - UNIT_ASSERT_VALUES_EQUAL_C(commit.GetStatus(), (write || UseNewEngine) ? EStatus::SUCCESS : EStatus::BAD_REQUEST, commit.GetIssues().ToString()); + UNIT_ASSERT_VALUES_EQUAL_C(commit.GetStatus(), EStatus::SUCCESS, commit.GetIssues().ToString()); } { @@ -470,23 +468,22 @@ Y_UNIT_TEST_SUITE(KqpScheme) { } } - Y_UNIT_TEST_NEW_ENGINE(SchemaVersionMissmatchWithRead) { - SchemaVersionMissmatchWithTest<UseNewEngine>(false); + Y_UNIT_TEST(SchemaVersionMissmatchWithRead) { + SchemaVersionMissmatchWithTest(false); } - Y_UNIT_TEST_NEW_ENGINE(SchemaVersionMissmatchWithWrite) { - SchemaVersionMissmatchWithTest<UseNewEngine>(true); + Y_UNIT_TEST(SchemaVersionMissmatchWithWrite) { + SchemaVersionMissmatchWithTest(true); } - Y_UNIT_TEST_NEW_ENGINE(SchemaVersionMissmatchWithIndexRead) { - SchemaVersionMissmatchWithIndexTest<UseNewEngine>(false); + Y_UNIT_TEST(SchemaVersionMissmatchWithIndexRead) { + SchemaVersionMissmatchWithIndexTest(false); } - Y_UNIT_TEST_NEW_ENGINE(SchemaVersionMissmatchWithIndexWrite) { - SchemaVersionMissmatchWithIndexTest<UseNewEngine>(true); + Y_UNIT_TEST(SchemaVersionMissmatchWithIndexWrite) { + SchemaVersionMissmatchWithIndexTest(true); } - template <bool UseNewEngine> void TouchIndexAfterMoveIndex(bool write, bool replace) { TKikimrRunner kikimr; @@ -571,23 +568,22 @@ Y_UNIT_TEST_SUITE(KqpScheme) { } } - Y_UNIT_TEST_NEW_ENGINE(TouchIndexAfterMoveIndexRead) { - TouchIndexAfterMoveIndex<UseNewEngine>(false, false); + Y_UNIT_TEST(TouchIndexAfterMoveIndexRead) { + TouchIndexAfterMoveIndex(false, false); } - Y_UNIT_TEST_NEW_ENGINE(TouchIndexAfterMoveIndexWrite) { - TouchIndexAfterMoveIndex<UseNewEngine>(true, false); + Y_UNIT_TEST(TouchIndexAfterMoveIndexWrite) { + TouchIndexAfterMoveIndex(true, false); } - Y_UNIT_TEST_NEW_ENGINE(TouchIndexAfterMoveIndexReadReplace) { - TouchIndexAfterMoveIndex<UseNewEngine>(false, true); + Y_UNIT_TEST(TouchIndexAfterMoveIndexReadReplace) { + TouchIndexAfterMoveIndex(false, true); } - Y_UNIT_TEST_NEW_ENGINE(TouchIndexAfterMoveIndexWriteReplace) { - TouchIndexAfterMoveIndex<UseNewEngine>(true, true); + Y_UNIT_TEST(TouchIndexAfterMoveIndexWriteReplace) { + TouchIndexAfterMoveIndex(true, true); } - template <bool UseNewEngine> void TouchIndexAfterMoveTable(bool write) { TKikimrRunner kikimr; @@ -656,12 +652,12 @@ Y_UNIT_TEST_SUITE(KqpScheme) { } } - Y_UNIT_TEST_NEW_ENGINE(TouchIndexAfterMoveTableRead) { - TouchIndexAfterMoveTable<UseNewEngine>(false); + Y_UNIT_TEST(TouchIndexAfterMoveTableRead) { + TouchIndexAfterMoveTable(false); } - Y_UNIT_TEST_NEW_ENGINE(TouchIndexAfterMoveTableWrite) { - TouchIndexAfterMoveTable<UseNewEngine>(true); + Y_UNIT_TEST(TouchIndexAfterMoveTableWrite) { + TouchIndexAfterMoveTable(true); } void CheckInvalidationAfterDropCreateTable(bool withCompatSchema) { diff --git a/ydb/core/kqp/ut/kqp_scripting_ut.cpp b/ydb/core/kqp/ut/kqp_scripting_ut.cpp index 21d8803412e..5de0a136067 100644 --- a/ydb/core/kqp/ut/kqp_scripting_ut.cpp +++ b/ydb/core/kqp/ut/kqp_scripting_ut.cpp @@ -42,7 +42,7 @@ Y_UNIT_TEST_SUITE(KqpScripting) { UNIT_ASSERT_VALUES_EQUAL(rs0.ColumnParser(0).GetUint64(), 2u); } - Y_UNIT_TEST_NEW_ENGINE(UnsafeTimestampCast) { + Y_UNIT_TEST(UnsafeTimestampCast) { auto setting = NKikimrKqp::TKqpSetting(); setting.SetName("_KqpYqlSyntaxVersion"); setting.SetValue("0"); @@ -272,7 +272,6 @@ Y_UNIT_TEST_SUITE(KqpScripting) { { auto result = client.ExecuteYqlScript(R"( - PRAGMA Kikimr.UseNewEngine = "true"; CREATE TABLE `/Root/ScriptingTest` ( Key Uint64, Value String, @@ -285,35 +284,29 @@ Y_UNIT_TEST_SUITE(KqpScripting) { } auto result = client.ExplainYqlScript(R"( - PRAGMA Kikimr.UseNewEngine = "false"; REPLACE INTO `/Root/ScriptingTest` (Key, Value) VALUES (1, "One"), (2, "Two"); COMMIT; - PRAGMA Kikimr.UseNewEngine = "true"; REPLACE INTO `/Root/ScriptingTest` (Key, Value) VALUES (3, "Three"), (4, "Four"); COMMIT; PRAGMA kikimr.ScanQuery = "true"; - PRAGMA Kikimr.UseNewEngine = "true"; SELECT count(*) FROM `/Root/ScriptingTest`; COMMIT; PRAGMA kikimr.ScanQuery = "false"; - PRAGMA Kikimr.UseNewEngine = "true"; SELECT count(*) FROM `/Root/ScriptingTest`; COMMIT; PRAGMA kikimr.ScanQuery = "true"; - PRAGMA Kikimr.UseNewEngine = "false"; SELECT count(*) FROM `/Root/ScriptingTest`; COMMIT; PRAGMA kikimr.ScanQuery = "false"; - PRAGMA Kikimr.UseNewEngine = "false"; SELECT count(*) FROM `/Root/ScriptingTest`; COMMIT; @@ -344,7 +337,6 @@ Y_UNIT_TEST_SUITE(KqpScripting) { settings.Mode(ExplainYqlRequestMode::Plan); auto result = client.ExplainYqlScript(R"( - PRAGMA Kikimr.UseNewEngine = "true"; CREATE TABLE `/Root/ScriptingTest` ( Key Uint64, Value String, @@ -352,35 +344,29 @@ Y_UNIT_TEST_SUITE(KqpScripting) { ); COMMIT; - PRAGMA Kikimr.UseNewEngine = "false"; REPLACE INTO `/Root/ScriptingTest` (Key, Value) VALUES (1, "One"), (2, "Two"); COMMIT; - PRAGMA Kikimr.UseNewEngine = "true"; REPLACE INTO `/Root/ScriptingTest` (Key, Value) VALUES (3, "Three"), (4, "Four"); COMMIT; PRAGMA kikimr.ScanQuery = "true"; - PRAGMA Kikimr.UseNewEngine = "true"; SELECT count(*) FROM `/Root/ScriptingTest`; COMMIT; PRAGMA kikimr.ScanQuery = "false"; - PRAGMA Kikimr.UseNewEngine = "true"; SELECT count(*) FROM `/Root/ScriptingTest`; COMMIT; PRAGMA kikimr.ScanQuery = "true"; - PRAGMA Kikimr.UseNewEngine = "false"; SELECT count(*) FROM `/Root/ScriptingTest`; COMMIT; PRAGMA kikimr.ScanQuery = "false"; - PRAGMA Kikimr.UseNewEngine = "false"; SELECT count(*) FROM `/Root/ScriptingTest`; COMMIT; @@ -450,7 +436,6 @@ Y_UNIT_TEST_SUITE(KqpScripting) { settings.CollectQueryStats(NYdb::NTable::ECollectQueryStatsMode::Full); auto result = client.ExecuteYqlScript(R"( - PRAGMA Kikimr.UseNewEngine = "true"; CREATE TABLE `/Root/ScriptingTest` ( Key Uint64, Value String, @@ -458,35 +443,29 @@ Y_UNIT_TEST_SUITE(KqpScripting) { ); COMMIT; - PRAGMA Kikimr.UseNewEngine = "false"; REPLACE INTO `/Root/ScriptingTest` (Key, Value) VALUES (1, "One"), (2, "Two"); COMMIT; - PRAGMA Kikimr.UseNewEngine = "true"; REPLACE INTO `/Root/ScriptingTest` (Key, Value) VALUES (3, "Three"), (4, "Four"); COMMIT; PRAGMA kikimr.ScanQuery = "true"; - PRAGMA Kikimr.UseNewEngine = "true"; SELECT count(*) FROM `/Root/ScriptingTest`; COMMIT; PRAGMA kikimr.ScanQuery = "false"; - PRAGMA Kikimr.UseNewEngine = "true"; SELECT count(*) FROM `/Root/ScriptingTest`; COMMIT; PRAGMA kikimr.ScanQuery = "true"; - PRAGMA Kikimr.UseNewEngine = "false"; SELECT count(*) FROM `/Root/ScriptingTest`; COMMIT; PRAGMA kikimr.ScanQuery = "false"; - PRAGMA Kikimr.UseNewEngine = "false"; SELECT count(*) FROM `/Root/ScriptingTest`; COMMIT; diff --git a/ydb/core/kqp/ut/kqp_sqlin_ut.cpp b/ydb/core/kqp/ut/kqp_sqlin_ut.cpp index df7ad08ac6b..5ad64465984 100644 --- a/ydb/core/kqp/ut/kqp_sqlin_ut.cpp +++ b/ydb/core/kqp/ut/kqp_sqlin_ut.cpp @@ -24,7 +24,7 @@ const bool EnableOpt = false; Y_UNIT_TEST_SUITE(KqpSqlIn) { - Y_UNIT_TEST_NEW_ENGINE(TableSource) { + Y_UNIT_TEST(TableSource) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -64,7 +64,7 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { }); } - Y_UNIT_TEST_NEW_ENGINE(CantRewrite) { + Y_UNIT_TEST(CantRewrite) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -86,7 +86,7 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { auto params = TParamsBuilder(paramsType); auto result = ExecQueryAndTestResult(session, query, params.Build(), R"([])"); - AssertTableReads(result, "/Root/KeyValue", UseNewEngine ? 0 : 6); + AssertTableReads(result, "/Root/KeyValue", 0); } // not empty parameters @@ -99,11 +99,11 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { pl.EndList().Build(); auto result = ExecQueryAndTestResult(session, query, params.Build(), R"([[[1u];["One"]]])"); - AssertTableReads(result, "/Root/KeyValue", UseNewEngine ? 3 : 6); + AssertTableReads(result, "/Root/KeyValue", 3); } } - Y_UNIT_TEST_NEW_ENGINE(SimpleKey) { + Y_UNIT_TEST(SimpleKey) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -142,10 +142,10 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { }; test(DisableOpt, true /* optionalParams */, [](const TDataQueryResult& result) { - AssertTableReads(result, "/Root/KeyValue", UseNewEngine ? 3 : 6); + AssertTableReads(result, "/Root/KeyValue", 3); }); test(DisableOpt, false /* optionalParams */, [](const TDataQueryResult& result) { - AssertTableReads(result, "/Root/KeyValue", UseNewEngine ? 3 : 6); + AssertTableReads(result, "/Root/KeyValue", 3); }); test(EnableOpt, true /* optionalParams */, [](const TDataQueryResult& result) { @@ -156,7 +156,7 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { }); } - Y_UNIT_TEST_NEW_ENGINE(SimpleKey_Negated) { + Y_UNIT_TEST(SimpleKey_Negated) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -182,7 +182,7 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { AssertTableReads(result, "/Root/KeyValue", 6); // not optimized } - Y_UNIT_TEST_NEW_ENGINE(KeySuffix) { + Y_UNIT_TEST(KeySuffix) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -235,7 +235,7 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { }); } - Y_UNIT_TEST_NEW_ENGINE(KeySuffix_OnlyTail) { + Y_UNIT_TEST(KeySuffix_OnlyTail) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -265,7 +265,7 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { AssertTableReads(result, "/Root/Test", 8); // not optimized } - Y_UNIT_TEST_NEW_ENGINE(KeySuffix_NotPointPrefix) { + Y_UNIT_TEST(KeySuffix_NotPointPrefix) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -293,7 +293,7 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { AssertTableReads(result, "/Root/Test", 4); // not optimized } - Y_UNIT_TEST_NEW_ENGINE(ComplexKey) { + Y_UNIT_TEST(ComplexKey) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -331,7 +331,7 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { AssertTableReads(result, "/Root/Test", 6); } - Y_UNIT_TEST_NEW_ENGINE(KeyTypeMissmatch_Int) { + Y_UNIT_TEST(KeyTypeMissmatch_Int) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -358,10 +358,10 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { R"([[[1u];["Anna"];[3500u];["None"]]; [[1u];["Jack"];[100500u];["Just Jack"]]; [[1u];["Paul"];[300u];["None"]]])"); - AssertTableReads(result, "/Root/Test", UseNewEngine ? 3 : 8); + AssertTableReads(result, "/Root/Test", 3); } - Y_UNIT_TEST_NEW_ENGINE(KeyTypeMissmatch_Str) { + Y_UNIT_TEST(KeyTypeMissmatch_Str) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -386,7 +386,7 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { AssertTableReads(result, "/Root/KeyValue2", 1); } - Y_UNIT_TEST_NEW_ENGINE(Dict) { + Y_UNIT_TEST(Dict) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -416,7 +416,7 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { }; test(DisableOpt, [](const TDataQueryResult& result) { - AssertTableReads(result, "/Root/KeyValue", UseNewEngine ? 2 : 6); + AssertTableReads(result, "/Root/KeyValue", 2); }); test(EnableOpt, [](const TDataQueryResult& result) { @@ -424,7 +424,7 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { }); } - Y_UNIT_TEST_NEW_ENGINE(TupleParameter) { + Y_UNIT_TEST(TupleParameter) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -458,7 +458,7 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { }; test(DisableOpt, [](const TDataQueryResult& result) { - AssertTableReads(result, "/Root/Test", UseNewEngine ? 3 : 8); + AssertTableReads(result, "/Root/Test", 3); }); test(EnableOpt, [](const TDataQueryResult& result) { @@ -466,7 +466,7 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { }); } - Y_UNIT_TEST_NEW_ENGINE(TupleLiteral) { + Y_UNIT_TEST(TupleLiteral) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -493,7 +493,7 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { }; test(DisableOpt, [](const TDataQueryResult& result) { - AssertTableReads(result, "/Root/Test", UseNewEngine ? 3 : 8); + AssertTableReads(result, "/Root/Test", 3); }); test(EnableOpt, [](const TDataQueryResult& result) { @@ -501,7 +501,7 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { }); } - Y_UNIT_TEST_NEW_ENGINE(TupleSelect) { + Y_UNIT_TEST(TupleSelect) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -543,7 +543,7 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { }); } - Y_UNIT_TEST_NEW_ENGINE(SelectNotAllElements) { + Y_UNIT_TEST(SelectNotAllElements) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -577,7 +577,7 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { AssertTableReads(result, "/Root/SecondaryKeys", 2); } - Y_UNIT_TEST_NEW_ENGINE(SecondaryIndex_SimpleKey) { + Y_UNIT_TEST(SecondaryIndex_SimpleKey) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -614,7 +614,7 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { }); } - Y_UNIT_TEST_NEW_ENGINE(SecondaryIndex_SimpleKey_In_And) { + Y_UNIT_TEST(SecondaryIndex_SimpleKey_In_And) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -655,7 +655,7 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { }); } - Y_UNIT_TEST_NEW_ENGINE(SimpleKey_In_And_In) { + Y_UNIT_TEST(SimpleKey_In_And_In) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -685,7 +685,7 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { }; test(DisableOpt, [](const TDataQueryResult& result) { - AssertTableReads(result, "/Root/SecondaryComplexKeys", UseNewEngine ? 2 : 5); + AssertTableReads(result, "/Root/SecondaryComplexKeys", 2); }); test(EnableOpt, [](const TDataQueryResult& result) { @@ -694,7 +694,7 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { }); } - Y_UNIT_TEST_NEW_ENGINE(SecondaryIndex_SimpleKey_In_And_In) { + Y_UNIT_TEST(SecondaryIndex_SimpleKey_In_And_In) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -737,7 +737,7 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { }); } - Y_UNIT_TEST_NEW_ENGINE(SecondaryIndex_ComplexKey_In_And_In) { + Y_UNIT_TEST(SecondaryIndex_ComplexKey_In_And_In) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -787,7 +787,7 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { }); } - Y_UNIT_TEST_NEW_ENGINE(SecondaryIndex_TupleParameter) { + Y_UNIT_TEST(SecondaryIndex_TupleParameter) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -826,7 +826,7 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { }); } - Y_UNIT_TEST_NEW_ENGINE(SecondaryIndex_TupleLiteral) { + Y_UNIT_TEST(SecondaryIndex_TupleLiteral) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -857,7 +857,7 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { }); } - Y_UNIT_TEST_NEW_ENGINE(SecondaryIndex_TupleSelect) { + Y_UNIT_TEST(SecondaryIndex_TupleSelect) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -897,7 +897,7 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { }); } - Y_UNIT_TEST_NEW_ENGINE(TupleNotOnlyOfKeys) { + Y_UNIT_TEST(TupleNotOnlyOfKeys) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -939,15 +939,15 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { }; test(DisableOpt, [](const TDataQueryResult& result) { - AssertTableReads(result, "/Root/Test", UseNewEngine ? 4 : 8); + AssertTableReads(result, "/Root/Test", 4); }); test(EnableOpt, [](const TDataQueryResult& result) { - AssertTableReads(result, "/Root/Test", UseNewEngine ? 4 : 8); // todo: should be 4 + AssertTableReads(result, "/Root/Test", 4); }); } - Y_UNIT_TEST_NEW_ENGINE(Delete) { + Y_UNIT_TEST(Delete) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -974,12 +974,12 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); AssertTableStats(result, "/Root/KeyValue", { - .ExpectedReads = UseNewEngine ? 0 : 2, - .ExpectedDeletes = UseNewEngine ? 3 : 2, + .ExpectedReads = 0, + .ExpectedDeletes = 3, }); } - Y_UNIT_TEST_NEW_ENGINE(InWithCast) { + Y_UNIT_TEST(InWithCast) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -1006,11 +1006,11 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) { ])", FormatResultSetYson(result.GetResultSet(0))); AssertTableStats(result, "/Root/TwoShard", { - .ExpectedReads = UseNewEngine ? 1 : 6, + .ExpectedReads = 1, }); } - Y_UNIT_TEST_NEW_ENGINE(PhasesCount) { + Y_UNIT_TEST(PhasesCount) { TKikimrRunner kikimr; auto session = kikimr.GetTableClient().CreateSession().GetValueSync().GetSession(); diff --git a/ydb/core/kqp/ut/kqp_stats_ut.cpp b/ydb/core/kqp/ut/kqp_stats_ut.cpp index 61e7ccc6e6d..9c9eb0f4a1a 100644 --- a/ydb/core/kqp/ut/kqp_stats_ut.cpp +++ b/ydb/core/kqp/ut/kqp_stats_ut.cpp @@ -133,7 +133,6 @@ Y_UNIT_TEST_TWIN(DeferredEffects, UseSessionActor) { settings.CollectQueryStats(ECollectQueryStatsMode::Full); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; UPSERT INTO `/Root/TwoShard` SELECT Key + 100u AS Key, Value1 FROM `/Root/TwoShard` WHERE Key in (1,2,3,4,5); @@ -159,7 +158,6 @@ Y_UNIT_TEST_TWIN(DeferredEffects, UseSessionActor) { .Build(); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; DECLARE $key AS Uint32; DECLARE $value AS String; @@ -173,7 +171,6 @@ Y_UNIT_TEST_TWIN(DeferredEffects, UseSessionActor) { UNIT_ASSERT_VALUES_EQUAL(plan.GetMapSafe().at("Plan").GetMapSafe().at("Plans").GetArraySafe().size(), 3); result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT * FROM `/Root/TwoShard`; UPDATE `/Root/TwoShard` SET Value1 = "XXX" WHERE Key in (3,600); )", TTxControl::BeginTx().CommitTx(), settings).ExtractValueSync(); @@ -198,7 +195,6 @@ Y_UNIT_TEST_TWIN(DataQueryWithEffects, UseSessionActor) { settings.CollectQueryStats(ECollectQueryStatsMode::Full); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; UPSERT INTO `/Root/TwoShard` SELECT Key + 1u AS Key, Value1 FROM `/Root/TwoShard`; @@ -222,7 +218,6 @@ Y_UNIT_TEST(DataQueryOldEngine) { settings.CollectQueryStats(ECollectQueryStatsMode::Full); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "false"; UPSERT INTO `/Root/TwoShard` SELECT Key + 1u AS Key, Value1 FROM `/Root/TwoShard`; @@ -240,7 +235,6 @@ Y_UNIT_TEST_TWIN(DataQueryMulti, UseSessionActor) { settings.CollectQueryStats(ECollectQueryStatsMode::Full); auto result = session.ExecuteDataQuery(R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT 1; SELECT 2; @@ -255,7 +249,7 @@ Y_UNIT_TEST_TWIN(DataQueryMulti, UseSessionActor) { UNIT_ASSERT_EQUAL_C(plan.GetMapSafe().at("Plan").GetMapSafe().at("Plans").GetArraySafe().size(), 0, result.GetQueryPlan()); } -Y_UNIT_TEST_QUAD(RequestUnitForBadRequestExecute, UseNewEngine, UseSessionActor) { +Y_UNIT_TEST_TWIN(RequestUnitForBadRequestExecute, UseSessionActor) { auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -273,7 +267,7 @@ Y_UNIT_TEST_QUAD(RequestUnitForBadRequestExecute, UseNewEngine, UseSessionActor) UNIT_ASSERT(result.GetConsumedRu() > 0); } -Y_UNIT_TEST_QUAD(RequestUnitForBadRequestExplicitPrepare, UseNewEngine, UseSessionActor) { +Y_UNIT_TEST_TWIN(RequestUnitForBadRequestExplicitPrepare, UseSessionActor) { auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -290,8 +284,8 @@ Y_UNIT_TEST_QUAD(RequestUnitForBadRequestExplicitPrepare, UseNewEngine, UseSessi UNIT_ASSERT(result.GetConsumedRu() > 0); } -Y_UNIT_TEST_QUAD(RequestUnitForSuccessExplicitPrepare, UseNewEngine, UseSessionActor) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine && UseSessionActor); +Y_UNIT_TEST_TWIN(RequestUnitForSuccessExplicitPrepare, UseSessionActor) { + auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -308,8 +302,8 @@ Y_UNIT_TEST_QUAD(RequestUnitForSuccessExplicitPrepare, UseNewEngine, UseSessionA UNIT_ASSERT(result.GetConsumedRu() > 1); } -Y_UNIT_TEST_QUAD(RequestUnitForExecute, UseNewEngine, UseSessionActor) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine && UseSessionActor); +Y_UNIT_TEST_TWIN(RequestUnitForExecute, UseSessionActor) { + auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); diff --git a/ydb/core/kqp/ut/kqp_sys_col_ut.cpp b/ydb/core/kqp/ut/kqp_sys_col_ut.cpp index 8efdcbb9b2d..402ce5576d3 100644 --- a/ydb/core/kqp/ut/kqp_sys_col_ut.cpp +++ b/ydb/core/kqp/ut/kqp_sys_col_ut.cpp @@ -33,10 +33,9 @@ TStreamPartIterator ExecuteStreamQuery(TKikimrRunner& kikimr, const TString& que return it; } -void SelectRowAsteriskCommon(bool useNewEngine) { +void SelectRowAsteriskCommon() { TStringBuilder query; query << R"( - PRAGMA kikimr.UseNewEngine = ")" << (useNewEngine ? "true" : "false") << R"("; PRAGMA kikimr.EnableSystemColumns = "true"; SELECT * FROM `/Root/TwoShard` WHERE Key = 1; )"; @@ -46,10 +45,9 @@ void SelectRowAsteriskCommon(bool useNewEngine) { FormatResultSetYson(result.GetResultSet(0))); } -void SelectRowByIdCommon(bool useNewEngine) { +void SelectRowByIdCommon() { TStringBuilder query; query << R"( - PRAGMA kikimr.UseNewEngine = ")" << (useNewEngine ? "true" : "false") << R"("; PRAGMA kikimr.EnableSystemColumns = "true"; SELECT * FROM `/Root/TwoShard` WHERE _yql_partition_id = 72075186224037888ul; )"; @@ -59,10 +57,9 @@ void SelectRowByIdCommon(bool useNewEngine) { FormatResultSetYson(result.GetResultSet(0))); } -void SelectRangeCommon(bool useNewEngine) { +void SelectRangeCommon() { TStringBuilder query; query << R"( - PRAGMA kikimr.UseNewEngine = ")" << (useNewEngine ? "true" : "false") << R"("; PRAGMA kikimr.EnableSystemColumns = "true"; SELECT _yql_partition_id FROM `/Root/TwoShard` WHERE Key < 3; )"; @@ -74,27 +71,15 @@ void SelectRangeCommon(bool useNewEngine) { Y_UNIT_TEST_SUITE(KqpSysColV0) { Y_UNIT_TEST(SelectRowAsterisk) { - SelectRowAsteriskCommon(false); - } - - Y_UNIT_TEST(SelectRowAsteriskNewEngine) { - SelectRowAsteriskCommon(true); + SelectRowAsteriskCommon(); } Y_UNIT_TEST(SelectRowById) { - SelectRowByIdCommon(false); - } - - Y_UNIT_TEST(SelectRowByIdNewEngine) { - SelectRowByIdCommon(true); + SelectRowByIdCommon(); } Y_UNIT_TEST(SelectRange) { - SelectRangeCommon(false); - } - - Y_UNIT_TEST(SelectRangeNewEngine) { - SelectRangeCommon(true); + SelectRangeCommon(); } Y_UNIT_TEST(UpdateAndDelete) { @@ -205,7 +190,7 @@ Y_UNIT_TEST_SUITE(KqpSysColV0) { } Y_UNIT_TEST_SUITE(KqpSysColV1) { - Y_UNIT_TEST_NEW_ENGINE(SelectRowAsterisk) { + Y_UNIT_TEST(SelectRowAsterisk) { auto query = Q_(R"( PRAGMA kikimr.EnableSystemColumns = "true"; SELECT * FROM `/Root/TwoShard` WHERE Key = 1; @@ -216,7 +201,7 @@ Y_UNIT_TEST_SUITE(KqpSysColV1) { FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(SelectRowById) { + Y_UNIT_TEST(SelectRowById) { auto query = Q_(R"( PRAGMA kikimr.EnableSystemColumns = "true"; SELECT * FROM `/Root/TwoShard` WHERE _yql_partition_id = 72075186224037888ul; @@ -227,7 +212,7 @@ Y_UNIT_TEST_SUITE(KqpSysColV1) { FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(SelectRange) { + Y_UNIT_TEST(SelectRange) { auto query = Q_(R"( PRAGMA kikimr.EnableSystemColumns = "true"; SELECT _yql_partition_id FROM `/Root/TwoShard` WHERE Key < 3; @@ -238,7 +223,7 @@ Y_UNIT_TEST_SUITE(KqpSysColV1) { FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(UpdateAndDelete) { + Y_UNIT_TEST(UpdateAndDelete) { TKikimrRunner kikimr; { auto query = Q_(R"( @@ -299,7 +284,7 @@ Y_UNIT_TEST_SUITE(KqpSysColV1) { } } - Y_UNIT_TEST_NEW_ENGINE(InnerJoinTables) { + Y_UNIT_TEST(InnerJoinTables) { auto query = Q_(R"( PRAGMA kikimr.EnableSystemColumns = "true"; PRAGMA DisableSimpleColumns; @@ -314,7 +299,7 @@ Y_UNIT_TEST_SUITE(KqpSysColV1) { FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(InnerJoinSelect) { + Y_UNIT_TEST(InnerJoinSelect) { auto query = Q_(R"( PRAGMA kikimr.EnableSystemColumns = "true"; PRAGMA DisableSimpleColumns; @@ -329,7 +314,7 @@ Y_UNIT_TEST_SUITE(KqpSysColV1) { FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(InnerJoinSelectAsterisk) { + Y_UNIT_TEST(InnerJoinSelectAsterisk) { auto query = Q_(R"( PRAGMA kikimr.EnableSystemColumns = "true"; PRAGMA DisableSimpleColumns; diff --git a/ydb/core/kqp/ut/kqp_sys_view_ut.cpp b/ydb/core/kqp/ut/kqp_sys_view_ut.cpp index 8b1e5545671..825233605a2 100644 --- a/ydb/core/kqp/ut/kqp_sys_view_ut.cpp +++ b/ydb/core/kqp/ut/kqp_sys_view_ut.cpp @@ -316,7 +316,7 @@ Y_UNIT_TEST_SUITE(KqpSystemView) { CompareYson(expected, StreamResultToYson(it)); } - Y_UNIT_TEST_NEW_ENGINE(QueryStatsSimple) { + Y_UNIT_TEST(QueryStatsSimple) { auto checkTable = [&] (const TStringBuf tableName) { TKikimrRunner kikimr("", KikimrDefaultUtDomainRoot, 3); diff --git a/ydb/core/kqp/ut/kqp_table_predicate_ut.cpp b/ydb/core/kqp/ut/kqp_table_predicate_ut.cpp index a5194ff8c59..c3f31024c47 100644 --- a/ydb/core/kqp/ut/kqp_table_predicate_ut.cpp +++ b/ydb/core/kqp/ut/kqp_table_predicate_ut.cpp @@ -338,7 +338,7 @@ void RunPredicateTest(const std::vector<TString>& predicates, bool withNulls) { } // anonymous namespace end Y_UNIT_TEST_SUITE(KqpTablePredicate) { - Y_UNIT_TEST_NEW_ENGINE(IsNull) { + Y_UNIT_TEST(IsNull) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -354,7 +354,7 @@ Y_UNIT_TEST_SUITE(KqpTablePredicate) { CompareYson(R"([[["One"]]])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(IsNullPartial) { + Y_UNIT_TEST(IsNullPartial) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -371,7 +371,7 @@ Y_UNIT_TEST_SUITE(KqpTablePredicate) { CompareYson(R"([])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(NullInKey) { + Y_UNIT_TEST(NullInKey) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -388,7 +388,7 @@ Y_UNIT_TEST_SUITE(KqpTablePredicate) { CompareYson(R"([[["Five"]];[["Four"]];[["Six"]]])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(NullInKeySuffix) { + Y_UNIT_TEST(NullInKeySuffix) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -406,7 +406,7 @@ Y_UNIT_TEST_SUITE(KqpTablePredicate) { ])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(NullInPredicate) { + Y_UNIT_TEST(NullInPredicate) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -431,7 +431,7 @@ Y_UNIT_TEST_SUITE(KqpTablePredicate) { CompareYson(R"([])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(NullInPredicateRow) { + Y_UNIT_TEST(NullInPredicateRow) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -456,36 +456,7 @@ Y_UNIT_TEST_SUITE(KqpTablePredicate) { CompareYson(R"([])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST(AllowNullCompareInIndex) { - TKikimrRunner kikimr; - auto db = kikimr.GetTableClient(); - auto session = db.CreateSession().GetValueSync().GetSession(); - - CreateSampleTables(session); - - auto params = db.GetParamsBuilder() - .AddParam("$key2") - .OptionalUint32(100) - .Build() - .Build(); - - auto result = session.ExecuteDataQuery(R"( - PRAGMA Kikimr.UseNewEngine = 'false'; - PRAGMA kikimr.AllowNullCompareInIndex = "true"; - - DECLARE $key1 AS Uint32?; - DECLARE $key2 AS Uint32?; - SELECT Value FROM `/Root/TestNulls` WHERE - Key1 = $key1 AND Key2 <= $key2 - )", - TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx(), std::move(params)).ExtractValueSync(); - result.GetIssues().PrintTo(Cerr); - UNIT_ASSERT(result.IsSuccess()); - - CompareYson(R"([[["One"]];[["Two"]]])", FormatResultSetYson(result.GetResultSet(0))); - } - - Y_UNIT_TEST_NEW_ENGINE(WhereInSubquery) { + Y_UNIT_TEST(WhereInSubquery) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -507,7 +478,7 @@ Y_UNIT_TEST_SUITE(KqpTablePredicate) { CompareYson(R"([[[1u];["One"];[-1]]])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(UpdateMulti) { + Y_UNIT_TEST(UpdateMulti) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -530,7 +501,7 @@ Y_UNIT_TEST_SUITE(KqpTablePredicate) { } } - Y_UNIT_TEST_NEW_ENGINE(UpdateWhereInNoFullScan) { + Y_UNIT_TEST(UpdateWhereInNoFullScan) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -539,22 +510,6 @@ Y_UNIT_TEST_SUITE(KqpTablePredicate) { const TString query = Q_("UPDATE `/Root/MultiShardTable` SET Value = 'aaaaa' WHERE Key IN (1, 500)"); - if (!UseNewEngine) { - auto result = session.ExplainDataQuery(query).GetValueSync(); - UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::SUCCESS); - - auto astRes = NYql::ParseAst(result.GetAst()); - UNIT_ASSERT(astRes.IsOk()); - NYql::TExprContext exprCtx; - NYql::TExprNode::TPtr exprRoot; - UNIT_ASSERT(CompileExpr(*astRes.Root, exprRoot, exprCtx, nullptr)); - - UNIT_ASSERT(NYql::NNodes::TMaybeNode<NYql::NNodes::TKiProgram>(exprRoot)); - UNIT_ASSERT(!NYql::FindNode(exprRoot, [](const NYql::TExprNode::TPtr& node) { - return NYql::NNodes::TMaybeNode<NYql::NNodes::TKiSelectRange>(node).IsValid(); - })); - } - { NYdb::NTable::TExecDataQuerySettings execSettings; execSettings.CollectQueryStats(ECollectQueryStatsMode::Basic); @@ -579,7 +534,7 @@ Y_UNIT_TEST_SUITE(KqpTablePredicate) { } } - Y_UNIT_TEST_NEW_ENGINE(UpdateWhereInWithNull) { + Y_UNIT_TEST(UpdateWhereInWithNull) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -609,7 +564,7 @@ Y_UNIT_TEST_SUITE(KqpTablePredicate) { } } - Y_UNIT_TEST_NEW_ENGINE(UpdateWhereInBigLiteralList) { + Y_UNIT_TEST(UpdateWhereInBigLiteralList) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -636,7 +591,7 @@ Y_UNIT_TEST_SUITE(KqpTablePredicate) { } } - Y_UNIT_TEST_NEW_ENGINE(UpdateWhereInBigLiteralListPrefix) { + Y_UNIT_TEST(UpdateWhereInBigLiteralListPrefix) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -664,7 +619,7 @@ Y_UNIT_TEST_SUITE(KqpTablePredicate) { } } - Y_UNIT_TEST_NEW_ENGINE(UpdateWhereInMultipleUpdate) { + Y_UNIT_TEST(UpdateWhereInMultipleUpdate) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -718,40 +673,7 @@ Y_UNIT_TEST_SUITE(KqpTablePredicate) { } } - Y_UNIT_TEST(SelectFullScanUnionAll) { - TKikimrRunner kikimr; - auto db = kikimr.GetTableClient(); - auto session = db.CreateSession().GetValueSync().GetSession(); - - CreateSampleTables(session); - - const TString query = "PRAGMA Kikimr.UseNewEngine = 'false'; " - "SELECT Key, ValueInt FROM `/Root/MultiShardTable` WHERE ValueInt = 1 " - "UNION ALL SELECT Key, ValueInt FROM `/Root/MultiShardTable` WHERE ValueInt = 1;"; - - auto result = session.ExplainDataQuery(query).ExtractValueSync(); - UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::SUCCESS); - - auto astRes = NYql::ParseAst(result.GetAst()); - UNIT_ASSERT(astRes.IsOk()); - NYql::TExprContext exprCtx; - NYql::TExprNode::TPtr exprRoot; - UNIT_ASSERT(CompileExpr(*astRes.Root, exprRoot, exprCtx, nullptr)); - - UNIT_ASSERT(NYql::NNodes::TMaybeNode<NYql::NNodes::TKiProgram>(exprRoot)); - auto extend = NYql::FindNode(exprRoot, [](const NYql::TExprNode::TPtr& node) { - return NYql::NNodes::TMaybeNode<NYql::NNodes::TCoExtend>(node).IsValid(); - }); - UNIT_ASSERT(extend); - - for (const auto& item : NYql::NNodes::TExprBase(extend).Maybe<NYql::NNodes::TCoExtend>().Cast()) { - UNIT_ASSERT(item.Maybe<NYql::NNodes::TCoFilter>()); - auto filter = item.Maybe<NYql::NNodes::TCoFilter>().Cast(); - UNIT_ASSERT(filter.Input().Maybe<NYql::NNodes::TKiSelectRange>()); - } - } - - Y_UNIT_TEST_NEW_ENGINE(UpdateWhereInFullScan) { + Y_UNIT_TEST(UpdateWhereInFullScan) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -760,22 +682,6 @@ Y_UNIT_TEST_SUITE(KqpTablePredicate) { const TString query = Q_("UPDATE `/Root/MultiShardTable` SET Value = 'aaaaa' WHERE Value IN ('One', 'www')"); - if (!UseNewEngine) { - auto result = session.ExplainDataQuery(query).GetValueSync(); - UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::SUCCESS); - - auto astRes = NYql::ParseAst(result.GetAst()); - UNIT_ASSERT(astRes.IsOk()); - NYql::TExprContext exprCtx; - NYql::TExprNode::TPtr exprRoot; - UNIT_ASSERT(CompileExpr(*astRes.Root, exprRoot, exprCtx, nullptr)); - - UNIT_ASSERT(NYql::NNodes::TMaybeNode<NYql::NNodes::TKiProgram>(exprRoot)); - UNIT_ASSERT(NYql::FindNode(exprRoot, [](const NYql::TExprNode::TPtr& node) { - return NYql::NNodes::TMaybeNode<NYql::NNodes::TKiSelectRange>(node).IsValid(); - })); - } - { NYdb::NTable::TExecDataQuerySettings execSettings; execSettings.CollectQueryStats(ECollectQueryStatsMode::Basic); @@ -796,15 +702,11 @@ Y_UNIT_TEST_SUITE(KqpTablePredicate) { UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access().size(), 1); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).name(), "/Root/MultiShardTable"); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).updates().rows(), 1); - if (UseNewEngine) { - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).partitions_count(), 1); - } else { - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).partitions_count(), 5); - } + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).partitions_count(), 1); } } - Y_UNIT_TEST_NEW_ENGINE(DateKeyPredicate) { + Y_UNIT_TEST(DateKeyPredicate) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -830,7 +732,7 @@ Y_UNIT_TEST_SUITE(KqpTablePredicate) { UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).partitions_count(), 1); } - Y_UNIT_TEST_NEW_ENGINE(DuplicateKeyPredicateLiteral) { + Y_UNIT_TEST(DuplicateKeyPredicateLiteral) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -847,7 +749,7 @@ Y_UNIT_TEST_SUITE(KqpTablePredicate) { FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(DuplicateKeyPredicateParam) { + Y_UNIT_TEST(DuplicateKeyPredicateParam) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -877,7 +779,7 @@ Y_UNIT_TEST_SUITE(KqpTablePredicate) { } - Y_UNIT_TEST_NEW_ENGINE(DuplicateKeyPredicateMixed) { + Y_UNIT_TEST(DuplicateKeyPredicateMixed) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -902,7 +804,7 @@ Y_UNIT_TEST_SUITE(KqpTablePredicate) { FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(DuplicateCompositeKeyPredicate) { + Y_UNIT_TEST(DuplicateCompositeKeyPredicate) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -969,7 +871,6 @@ Y_UNIT_TEST_SUITE(KqpTablePredicate) { auto session = db.CreateSession().GetValueSync().GetSession(); auto query = R"( - PRAGMA Kikimr.UseNewEngine = 'false'; DECLARE $key1_from AS Uint32; DECLARE $name AS String; SELECT * FROM `/Root/Join2` WHERE Key1 > $key1_from AND Name = $name; @@ -978,6 +879,8 @@ Y_UNIT_TEST_SUITE(KqpTablePredicate) { auto result = session.ExplainDataQuery(query).GetValueSync(); UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); + // Cerr << result.GetPlan() << Endl; + NJson::TJsonValue plan; UNIT_ASSERT(NJson::ReadJsonTree(result.GetPlan(), &plan)); @@ -986,10 +889,9 @@ Y_UNIT_TEST_SUITE(KqpTablePredicate) { UNIT_ASSERT_VALUES_EQUAL(plan["tables"][0]["reads"].GetArray().size(), 1); auto& read = plan["tables"][0]["reads"][0]; UNIT_ASSERT(!read.Has("lookup_by")); - UNIT_ASSERT_VALUES_EQUAL(read["scan_by"].GetArray().size(), 2); } - Y_UNIT_TEST_NEW_ENGINE(DeleteNotFullScan) { + Y_UNIT_TEST(DeleteNotFullScan) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -1008,34 +910,24 @@ Y_UNIT_TEST_SUITE(KqpTablePredicate) { UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString()); auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); - if (UseNewEngine) { - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 2); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 2); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).affected_shards(), 1); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access().size(), 1); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).reads().rows(), 3); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).updates().rows(), 0); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).deletes().rows(), 0); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).partitions_count(), 1); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).affected_shards(), 1); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access().size(), 1); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).reads().rows(), 3); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).updates().rows(), 0); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).deletes().rows(), 0); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).partitions_count(), 1); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).affected_shards(), 1); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access().size(), 1); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).reads().rows(), 0); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).updates().rows(), 0); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).deletes().rows(), 3); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).partitions_count(), 1); - } else { - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 1); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).affected_shards(), 1); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access().size(), 1); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).reads().rows(), 0); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).updates().rows(), 0); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).deletes().rows(), 3); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).partitions_count(), 1); - } + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).affected_shards(), 1); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access().size(), 1); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).reads().rows(), 0); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).updates().rows(), 0); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).deletes().rows(), 3); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).partitions_count(), 1); } - Y_UNIT_TEST_NEW_ENGINE(LiteralOr) { + Y_UNIT_TEST(LiteralOr) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -1064,7 +956,7 @@ Y_UNIT_TEST_SUITE(KqpTablePredicate) { UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).partitions_count(), 4); } - Y_UNIT_TEST_NEW_ENGINE(LiteralOrCompisite) { + Y_UNIT_TEST(LiteralOrCompisite) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -1096,7 +988,7 @@ Y_UNIT_TEST_SUITE(KqpTablePredicate) { UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).reads().rows(), 3); } - Y_UNIT_TEST_NEW_ENGINE(LiteralOrCompisiteCollision) { + Y_UNIT_TEST(LiteralOrCompisiteCollision) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -1446,7 +1338,6 @@ Y_UNIT_TEST_SUITE(KqpTablePredicate) { for (const auto& predicate : predicates) { TString query = R"( - PRAGMA kikimr.UseNewEngine = "true"; DECLARE $key_upper_bound AS Uint32?; DECLARE $key_lower_bound AS Uint32?; @@ -1471,7 +1362,7 @@ Y_UNIT_TEST_SUITE(KqpTablePredicate) { } } - Y_UNIT_TEST_NEW_ENGINE(CastKeyBounds) { + Y_UNIT_TEST(CastKeyBounds) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -1544,7 +1435,7 @@ Y_UNIT_TEST_SUITE(KqpTablePredicate) { auto& read = plan["tables"][0]["reads"][0]; UNIT_ASSERT_VALUES_EQUAL(read["type"], "Scan"); UNIT_ASSERT_VALUES_EQUAL(read["scan_by"].GetArray().size(), 1); - UNIT_ASSERT_VALUES_EQUAL(read["scan_by"][0], "Key [\"SomeString\", \"SomeStrinh\")"); + UNIT_ASSERT_VALUES_EQUAL(read["scan_by"][0], "Key [SomeString, SomeStrinh)"); }; const TString useSyntaxV1 = R"( @@ -1552,7 +1443,6 @@ Y_UNIT_TEST_SUITE(KqpTablePredicate) { )"; const TString query = R"( - PRAGMA Kikimr.UseNewEngine = 'false'; SELECT * FROM `/Root/TestTable` WHERE Key like "SomeString%"; )"; diff --git a/ydb/core/kqp/ut/kqp_tx_ut.cpp b/ydb/core/kqp/ut/kqp_tx_ut.cpp index 26eb2591b77..4282ea80226 100644 --- a/ydb/core/kqp/ut/kqp_tx_ut.cpp +++ b/ydb/core/kqp/ut/kqp_tx_ut.cpp @@ -9,8 +9,8 @@ using namespace NYdb; using namespace NYdb::NTable; Y_UNIT_TEST_SUITE(KqpTx) { - Y_UNIT_TEST_NEW_ENGINE(DeferredEffects) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine); + Y_UNIT_TEST(DeferredEffects) { + auto kikimr = KikimrRunnerEnableSessionActor(true); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -46,8 +46,8 @@ Y_UNIT_TEST_SUITE(KqpTx) { ])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(ExplicitTcl) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine); + Y_UNIT_TEST(ExplicitTcl) { + auto kikimr = KikimrRunnerEnableSessionActor(true); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -81,8 +81,8 @@ Y_UNIT_TEST_SUITE(KqpTx) { UNIT_ASSERT(HasIssue(commitResult.GetIssues(), NYql::TIssuesIds::KIKIMR_TRANSACTION_NOT_FOUND)); } - Y_UNIT_TEST_QUAD(LocksAbortOnCommit, UseNewEngine, UseSessionActor) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine && UseSessionActor); + Y_UNIT_TEST_TWIN(LocksAbortOnCommit, UseSessionActor) { + auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); { @@ -118,8 +118,8 @@ Y_UNIT_TEST_SUITE(KqpTx) { UNIT_ASSERT_VALUES_EQUAL_C(commitResult.GetStatus(), EStatus::NOT_FOUND, commitResult.GetIssues().ToString()); } - Y_UNIT_TEST_NEW_ENGINE(InteractiveTx) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine); + Y_UNIT_TEST(InteractiveTx) { + auto kikimr = KikimrRunnerEnableSessionActor(true); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -154,8 +154,8 @@ Y_UNIT_TEST_SUITE(KqpTx) { CompareYson(R"([[[500u];#;[10u];["One"]]])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(BeginTransactionBadMode) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine); + Y_UNIT_TEST(BeginTransactionBadMode) { + auto kikimr = KikimrRunnerEnableSessionActor(true); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -166,8 +166,8 @@ Y_UNIT_TEST_SUITE(KqpTx) { UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::BAD_REQUEST); } - Y_UNIT_TEST_NEW_ENGINE(CommitRequired) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine); + Y_UNIT_TEST(CommitRequired) { + auto kikimr = KikimrRunnerEnableSessionActor(true); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -182,8 +182,8 @@ Y_UNIT_TEST_SUITE(KqpTx) { UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::BAD_REQUEST); } - Y_UNIT_TEST_NEW_ENGINE(RollbackTx) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine); + Y_UNIT_TEST(RollbackTx) { + auto kikimr = KikimrRunnerEnableSessionActor(true); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -211,8 +211,8 @@ Y_UNIT_TEST_SUITE(KqpTx) { UNIT_ASSERT(HasIssue(rollbackResult.GetIssues(), NYql::TIssuesIds::KIKIMR_TRANSACTION_NOT_FOUND)); } - Y_UNIT_TEST_NEW_ENGINE(RollbackTx2) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine); + Y_UNIT_TEST(RollbackTx2) { + auto kikimr = KikimrRunnerEnableSessionActor(true); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -250,7 +250,6 @@ Y_UNIT_TEST_SUITE(KqpTx) { auto query = R"( --!syntax_v1 - PRAGMA kikimr.UseNewEngine = "true"; DECLARE $key AS Uint64; @@ -293,8 +292,8 @@ Y_UNIT_TEST_SUITE(KqpTx) { session.Close(); } - Y_UNIT_TEST_NEW_ENGINE(RollbackRoTx) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine); + Y_UNIT_TEST(RollbackRoTx) { + auto kikimr = KikimrRunnerEnableSessionActor(true); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -315,8 +314,8 @@ Y_UNIT_TEST_SUITE(KqpTx) { UNIT_ASSERT(HasIssue(rollbackResult.GetIssues(), NYql::TIssuesIds::KIKIMR_TRANSACTION_NOT_FOUND)); } - Y_UNIT_TEST_NEW_ENGINE(CommitRoTx) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine); + Y_UNIT_TEST(CommitRoTx) { + auto kikimr = KikimrRunnerEnableSessionActor(true); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -333,8 +332,8 @@ Y_UNIT_TEST_SUITE(KqpTx) { UNIT_ASSERT(commitResult.IsSuccess()); } - Y_UNIT_TEST_NEW_ENGINE(CommitRoTx_TLI) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine); + Y_UNIT_TEST(CommitRoTx_TLI) { + auto kikimr = KikimrRunnerEnableSessionActor(true); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -363,8 +362,8 @@ Y_UNIT_TEST_SUITE(KqpTx) { } } - Y_UNIT_TEST_NEW_ENGINE(EmptyTxOnCommit) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine); + Y_UNIT_TEST(EmptyTxOnCommit) { + auto kikimr = KikimrRunnerEnableSessionActor(true); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -378,12 +377,12 @@ Y_UNIT_TEST_SUITE(KqpTx) { UNIT_ASSERT(!tx->IsActive()); } - Y_UNIT_TEST_NEW_ENGINE(TooManyTx) { + Y_UNIT_TEST(TooManyTx) { auto setting = NKikimrKqp::TKqpSetting(); setting.SetName("_KqpMaxActiveTxPerSession"); setting.SetValue("2"); - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine, {setting}); + auto kikimr = KikimrRunnerEnableSessionActor(true, {setting}); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -402,7 +401,7 @@ Y_UNIT_TEST_SUITE(KqpTx) { UNIT_ASSERT_VALUES_EQUAL(rollbackResult.GetStatus(), EStatus::BAD_SESSION); } - Y_UNIT_TEST_NEW_ENGINE(RollbackByIdle) { + Y_UNIT_TEST(RollbackByIdle) { TVector<NKikimrKqp::TKqpSetting> settings; auto setting = NKikimrKqp::TKqpSetting(); setting.SetName("_KqpMaxActiveTxPerSession"); @@ -412,7 +411,7 @@ Y_UNIT_TEST_SUITE(KqpTx) { setting.SetValue("0"); settings.push_back(setting); - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine, settings); + auto kikimr = KikimrRunnerEnableSessionActor(true, settings); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -435,8 +434,8 @@ Y_UNIT_TEST_SUITE(KqpTx) { UNIT_ASSERT(commitResult.IsSuccess()); } - Y_UNIT_TEST_NEW_ENGINE(RollbackInvalidated) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine); + Y_UNIT_TEST(RollbackInvalidated) { + auto kikimr = KikimrRunnerEnableSessionActor(true); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -460,8 +459,8 @@ Y_UNIT_TEST_SUITE(KqpTx) { UNIT_ASSERT(HasIssue(commitResult.GetIssues(), NYql::TIssuesIds::KIKIMR_TRANSACTION_NOT_FOUND)); } - Y_UNIT_TEST_NEW_ENGINE(CommitPrepared) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine); + Y_UNIT_TEST(CommitPrepared) { + auto kikimr = KikimrRunnerEnableSessionActor(true); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -482,8 +481,8 @@ Y_UNIT_TEST_SUITE(KqpTx) { CompareYson(R"([[[10u];["New"]]])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(InvalidateOnError) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine); + Y_UNIT_TEST(InvalidateOnError) { + auto kikimr = KikimrRunnerEnableSessionActor(true); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -505,8 +504,8 @@ Y_UNIT_TEST_SUITE(KqpTx) { UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::NOT_FOUND, result.GetIssues().ToString()); } - Y_UNIT_TEST_NEW_ENGINE(CommitStats) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine); + Y_UNIT_TEST(CommitStats) { + auto kikimr = KikimrRunnerEnableSessionActor(true); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -551,7 +550,6 @@ Y_UNIT_TEST_SUITE(KqpTx) { UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); result = session.ExecuteDataQuery(R"( - PRAGMA Kikimr.UseNewEngine = "true"; UPSERT INTO `/Root/KeyValue` (Key, Value) VALUES (1u, "New"); )", TTxControl::Tx(tx).CommitTx()).ExtractValueSync(); UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); @@ -566,11 +564,7 @@ Y_UNIT_TEST_SUITE(KqpTx) { ])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_QUAD(SnapshotRO, UseNewEngine, UseSessionActor) { - if (UseSessionActor && !UseNewEngine) { - return; - } - + Y_UNIT_TEST_TWIN(SnapshotRO, UseSessionActor) { auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -600,11 +594,7 @@ Y_UNIT_TEST_SUITE(KqpTx) { UNIT_ASSERT(HasIssue(result.GetIssues(), NYql::TIssuesIds::KIKIMR_BAD_OPERATION)); } - Y_UNIT_TEST_QUAD(SnapshotROInteractive1, UseNewEngine, UseSessionActor) { - if (UseSessionActor && !UseNewEngine) { - return; - } - + Y_UNIT_TEST_TWIN(SnapshotROInteractive1, UseSessionActor) { auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -638,11 +628,7 @@ Y_UNIT_TEST_SUITE(KqpTx) { CompareYson(readResult, FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_QUAD(SnapshotROInteractive2, UseNewEngine, UseSessionActor) { - if (UseSessionActor && !UseNewEngine) { - return; - } - + Y_UNIT_TEST_TWIN(SnapshotROInteractive2, UseSessionActor) { auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -680,11 +666,7 @@ Y_UNIT_TEST_SUITE(KqpTx) { UNIT_ASSERT_VALUES_EQUAL_C(commitResult.GetStatus(), EStatus::SUCCESS, commitResult.GetIssues().ToString()); } - Y_UNIT_TEST_QUAD(SnapshotRONoMvccReads, UseNewEngine, UseSessionActor) { - if (UseSessionActor && !UseNewEngine) { - return; - } - + Y_UNIT_TEST_TWIN(SnapshotRONoMvccReads, UseSessionActor) { TKikimrRunner kikimr(TKikimrSettings() .SetEnableMvccSnapshotReads(false)); diff --git a/ydb/core/kqp/ut/kqp_write_ut.cpp b/ydb/core/kqp/ut/kqp_write_ut.cpp index 26bc1a585b0..40e2baf4dac 100644 --- a/ydb/core/kqp/ut/kqp_write_ut.cpp +++ b/ydb/core/kqp/ut/kqp_write_ut.cpp @@ -9,12 +9,12 @@ using namespace NYdb; using namespace NYdb::NTable; Y_UNIT_TEST_SUITE(KqpWrite) { - Y_UNIT_TEST_QUAD(UpsertNullKey, UseNewEngine, UseSessionActor) { + Y_UNIT_TEST_TWIN(UpsertNullKey, UseSessionActor) { auto setting = NKikimrKqp::TKqpSetting(); setting.SetName("_KqpYqlSyntaxVersion"); setting.SetValue("1"); - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine && UseSessionActor, {setting}); + auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor, {setting}); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -85,207 +85,8 @@ Y_UNIT_TEST_SUITE(KqpWrite) { } } - Y_UNIT_TEST(InplaceUpdate) { - TKikimrRunner kikimr; - auto db = kikimr.GetTableClient(); - auto session = db.CreateSession().GetValueSync().GetSession(); - - NYdb::NTable::TExecDataQuerySettings execSettings; - execSettings.CollectQueryStats(ECollectQueryStatsMode::Basic); - - auto params = db.GetParamsBuilder() - .AddParam("$key").Uint64(201).Build() - .Build(); - - auto result = session.ExecuteDataQuery(R"( - PRAGMA Kikimr.UseNewEngine = 'false'; - PRAGMA kikimr.CommitSafety = "Moderate"; - - DECLARE $key AS Uint64; - - $data = (SELECT Data FROM `/Root/EightShard` WHERE Key = $key); - $newData = COALESCE($data, 0u) + 1; - $tuple = (SELECT $key AS Key, $newData AS Data); - - UPSERT INTO `/Root/EightShard` - SELECT * FROM $tuple; - )", TTxControl::BeginTx().CommitTx(), params, execSettings).ExtractValueSync(); - result.GetIssues().PrintTo(Cerr); - UNIT_ASSERT(result.IsSuccess()); - - auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 1); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access().size(), 1); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).name(), "/Root/EightShard"); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).reads().rows(), 2); // KIKIMR-7302 - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).updates().rows(), 1); - } - - Y_UNIT_TEST(InplaceUpdateBatch) { - TKikimrRunner kikimr; - auto db = kikimr.GetTableClient(); - auto session = db.CreateSession().GetValueSync().GetSession(); - - auto queryPrefix = R"( - PRAGMA Kikimr.UseNewEngine = 'false'; - PRAGMA kikimr.CommitSafety = "Moderate"; - )"; - - auto declareTemplate = R"( - DECLARE $key%1$d AS Uint64; - )"; - - auto readTemplate = R"( - $data%1$d = (SELECT Data FROM `/Root/EightShard` WHERE Key = $key%1$d); - $newData%1$d = COALESCE($data%1$d, 0u) + 1; - $tuple%1$d = (SELECT $key%1$d AS Key, $newData%1$d AS Data); - )"; - - auto writeTemplate = R"( - UPSERT INTO `/Root/EightShard` - SELECT * FROM $tuple%1$d; - )"; - - auto makeQuery = [&](ui32 batchSize) { - auto paramsBuilder = db.GetParamsBuilder(); - TStringBuilder queryDeclares; - TStringBuilder queryReads; - TStringBuilder queryWrites; - for (ui32 i = 0; i < batchSize; ++i) { - queryDeclares << Sprintf(declareTemplate, i); - queryReads << Sprintf(readTemplate, i); - queryWrites << Sprintf(writeTemplate, i); - - paramsBuilder.AddParam(Sprintf("$key%1$d", i)).Uint64(100 + i).Build(); - } - - auto query = TStringBuilder() << queryPrefix << queryDeclares << queryReads << queryWrites; - - NYdb::NTable::TExecDataQuerySettings execSettings; - execSettings.CollectQueryStats(ECollectQueryStatsMode::Basic); - - return session.ExecuteDataQuery(query, TTxControl::BeginTx().CommitTx(), - paramsBuilder.Build(), execSettings).ExtractValueSync(); - }; - - auto result10 = makeQuery(10); - UNIT_ASSERT_VALUES_EQUAL_C(result10.GetStatus(), EStatus::SUCCESS, result10.GetIssues().ToString()); - - auto& stats = NYdb::TProtoAccessor::GetProto(*result10.GetStats()); - - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 1); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access().size(), 1); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).name(), "/Root/EightShard"); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).reads().rows(), 6); // KIKIMR-7302 - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).updates().rows(), 10); - - auto result20 = makeQuery(20); - UNIT_ASSERT_VALUES_EQUAL_C(result20.GetStatus(), EStatus::GENERIC_ERROR, result20.GetIssues().ToString()); - } - - Y_UNIT_TEST(InplaceUpdateBigRow) { - auto keysLimitSetting = NKikimrKqp::TKqpSetting(); - keysLimitSetting.SetName("_CommitPerShardKeysSizeLimitBytes"); - keysLimitSetting.SetValue("100"); - - TKikimrRunner kikimr({keysLimitSetting}); - auto db = kikimr.GetTableClient(); - auto session = db.CreateSession().GetValueSync().GetSession(); - - UNIT_ASSERT(session.ExecuteSchemeQuery(R"( - CREATE TABLE `/Root/Temp` ( - Key Uint32, - Value1 String, - Value2 String, - PRIMARY KEY (Key) - ); - )").GetValueSync().IsSuccess()); - - auto result = session.ExecuteDataQuery(R"( - REPLACE INTO `/Root/Temp` (Key, Value1) VALUES - (1u, "123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"), - (3u, "123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"); - )", TTxControl::BeginTx().CommitTx()).ExtractValueSync(); - UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); - - TString query(R"( - PRAGMA Kikimr.UseNewEngine = 'false'; - PRAGMA kikimr.CommitSafety = "%s"; - - DECLARE $Key AS Uint32; - - $value1 = (SELECT Value1 FROM `/Root/Temp` WHERE Key = $Key); - $tuple = (SELECT $Key AS Key, $value1 AS Value1, $value1 AS Value2); - - UPSERT INTO `/Root/Temp` - SELECT * FROM $tuple; - )"); - - auto params = db.GetParamsBuilder() - .AddParam("$Key").Uint32(1).Build() - .Build(); - - result = session.ExecuteDataQuery(Sprintf(query.c_str(), "Moderate"), - TTxControl::BeginTx().CommitTx(), params).ExtractValueSync(); - result.GetIssues().PrintTo(Cerr); - UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::BAD_REQUEST); - UNIT_ASSERT(HasIssue(result.GetIssues(), NYql::TIssuesIds::DEFAULT_ERROR, [](const NYql::TIssue& issue) { - return issue.Message.Contains("READ_SIZE_EXECEEDED"); - })); - - result = session.ExecuteDataQuery(R"( - SELECT Value2 FROM `/Root/Temp` ORDER BY Value2; - )", TTxControl::BeginTx().CommitTx()).ExtractValueSync(); - UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); - CompareYson(R"([[#];[#]])", FormatResultSetYson(result.GetResultSet(0))); - - result = session.ExecuteDataQuery(Sprintf(query.c_str(), "Safe"), - TTxControl::BeginTx().CommitTx(), params).ExtractValueSync(); - UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); - - result = session.ExecuteDataQuery(R"( - SELECT Value2 FROM `/Root/Temp` ORDER BY Value2; - )", TTxControl::BeginTx().CommitTx()).ExtractValueSync(); - UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); - CompareYson(R"([ - [#];[["123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"]] - ])", FormatResultSetYson(result.GetResultSet(0))); - } - - Y_UNIT_TEST(CommitSafetyDisabled) { - NKikimrConfig::TAppConfig appConfig; - appConfig.MutableTableServiceConfig()->SetAllowUnsafeCommit(false); - - TKikimrRunner kikimr(appConfig); - auto db = kikimr.GetTableClient(); - auto session = db.CreateSession().GetValueSync().GetSession(); - - auto params = db.GetParamsBuilder() - .AddParam("$key").Uint64(201).Build() - .Build(); - - auto result = session.ExecuteDataQuery(R"( - PRAGMA Kikimr.UseNewEngine = 'false'; - PRAGMA kikimr.CommitSafety = "Moderate"; - - DECLARE $key AS Uint64; - - $data = (SELECT Data FROM `/Root/EightShard` WHERE Key = $key); - $newData = COALESCE($data, 0u) + 1; - $tuple = (SELECT $key AS Key, $newData AS Data); - - UPSERT INTO `/Root/EightShard` - SELECT * FROM $tuple; - )", TTxControl::BeginTx().CommitTx(), params).ExtractValueSync(); - - result.GetIssues().PrintTo(Cerr); - UNIT_ASSERT(!result.IsSuccess()); - UNIT_ASSERT(HasIssue(result.GetIssues(), NYql::TIssuesIds::KIKIMR_BAD_OPERATION)); - } - - Y_UNIT_TEST_QUAD(Insert, UseNewEngine, UseSessionActor) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine && UseSessionActor); + Y_UNIT_TEST_TWIN(Insert, UseSessionActor) { + auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -401,8 +202,8 @@ Y_UNIT_TEST_SUITE(KqpWrite) { CompareYson(R"([[[3u]]])", FormatResultSetYson(result.GetResultSet(1))); } - Y_UNIT_TEST_QUAD(InsertRevert, UseNewEngine, UseSessionActor) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine && UseSessionActor); + Y_UNIT_TEST_TWIN(InsertRevert, UseSessionActor) { + auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -447,12 +248,9 @@ Y_UNIT_TEST_SUITE(KqpWrite) { TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx(), params).ExtractValueSync(); result.GetIssues().PrintTo(Cerr); UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); - if constexpr (UseNewEngine) { - // ¯\_(ツ)_/¯ - UNIT_ASSERT_C(result.GetIssues().Size() == 0, result.GetIssues().ToString()); - } else { - UNIT_ASSERT(HasIssue(result.GetIssues(), NYql::TIssuesIds::KIKIMR_OPERATION_REVERTED)); - } + + // TODO: + // UNIT_ASSERT(HasIssue(result.GetIssues(), NYql::TIssuesIds::KIKIMR_OPERATION_REVERTED)); params = db.GetParamsBuilder() .AddParam("$rows") @@ -483,12 +281,9 @@ Y_UNIT_TEST_SUITE(KqpWrite) { TTxControl::BeginTx(TTxSettings::SerializableRW()).CommitTx(), params).ExtractValueSync(); result.GetIssues().PrintTo(Cerr); UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); - if constexpr (UseNewEngine) { - // ¯\_(ツ)_/¯ - UNIT_ASSERT_C(result.GetIssues().Size() == 0, result.GetIssues().ToString()); - } else { - UNIT_ASSERT(HasIssue(result.GetIssues(), NYql::TIssuesIds::KIKIMR_OPERATION_REVERTED)); - } + + // TODO: + // UNIT_ASSERT(HasIssue(result.GetIssues(), NYql::TIssuesIds::KIKIMR_OPERATION_REVERTED)); params = db.GetParamsBuilder() .AddParam("$rows") @@ -528,8 +323,8 @@ Y_UNIT_TEST_SUITE(KqpWrite) { CompareYson(R"([[[1u]];[[2u]];[[3u]]])", FormatResultSetYson(result.GetResultSet(1))); } - Y_UNIT_TEST_QUAD(ProjectReplace, UseNewEngine, UseSessionActor) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine && UseSessionActor); + Y_UNIT_TEST_TWIN(ProjectReplace, UseSessionActor) { + auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -573,57 +368,11 @@ Y_UNIT_TEST_SUITE(KqpWrite) { auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats()); - UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), UseNewEngine ? 2 : 1); - } - - Y_UNIT_TEST(Uint8Key) { - TKikimrRunner kikimr; - auto db = kikimr.GetTableClient(); - auto session = db.CreateSession().GetValueSync().GetSession(); - - UNIT_ASSERT(session.ExecuteSchemeQuery(R"( - --!syntax_v1 - CREATE TABLE `/Root/Temp` ( - Key Uint8, - PRIMARY KEY (Key) - ); - )").GetValueSync().IsSuccess()); - - auto result = session.ExecuteDataQuery(R"( - --!syntax_v1 - PRAGMA Kikimr.UseNewEngine = 'false'; - UPSERT INTO `/Root/Temp` (Key) VALUES (127); - )", TTxControl::BeginTx().CommitTx()).ExtractValueSync(); - UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); - - result = session.ExecuteDataQuery(R"( - --!syntax_v1 - PRAGMA Kikimr.UseNewEngine = 'false'; - UPSERT INTO `/Root/Temp` (Key) VALUES (128); - )", TTxControl::BeginTx().CommitTx()).ExtractValueSync(); - result.GetIssues().PrintTo(Cerr); - UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::GENERIC_ERROR); - - result = session.ExecuteDataQuery(R"( - --!syntax_v1 - PRAGMA Kikimr.UseNewEngine = 'false'; - DELETE FROM `/Root/Temp` ON (Key) VALUES (140); - )", TTxControl::BeginTx().CommitTx()).ExtractValueSync(); - result.GetIssues().PrintTo(Cerr); - UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::GENERIC_ERROR); - - result = session.ExecuteDataQuery(R"( - --!syntax_v1 - PRAGMA Kikimr.UseNewEngine = 'false'; - SELECT * FROM `/Root/Temp`; - )", TTxControl::BeginTx().CommitTx()).ExtractValueSync(); - UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); - - CompareYson(R"([[[127u]]])", FormatResultSetYson(result.GetResultSet(0))); + UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 2); } - Y_UNIT_TEST_QUAD(CastValues, UseNewEngine, UseSessionActor) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine && UseSessionActor); + Y_UNIT_TEST_TWIN(CastValues, UseSessionActor) { + auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -657,8 +406,8 @@ Y_UNIT_TEST_SUITE(KqpWrite) { ])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_QUAD(CastValuesOptional, UseNewEngine, UseSessionActor) { - auto kikimr = KikimrRunnerEnableSessionActor(UseNewEngine && UseSessionActor); + Y_UNIT_TEST_TWIN(CastValuesOptional, UseSessionActor) { + auto kikimr = KikimrRunnerEnableSessionActor(UseSessionActor); auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); diff --git a/ydb/core/kqp/ut/kqp_yql_ut.cpp b/ydb/core/kqp/ut/kqp_yql_ut.cpp index 7434323cca6..cab2aac4450 100644 --- a/ydb/core/kqp/ut/kqp_yql_ut.cpp +++ b/ydb/core/kqp/ut/kqp_yql_ut.cpp @@ -251,7 +251,7 @@ Y_UNIT_TEST_SUITE(KqpYql) { UNIT_ASSERT(HasIssue(result.GetIssues(), NYql::TIssuesIds::DEFAULT_ERROR)); } - Y_UNIT_TEST_NEW_ENGINE(StrictDml) { + Y_UNIT_TEST(StrictDml) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -312,7 +312,7 @@ Y_UNIT_TEST_SUITE(KqpYql) { ])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(ColumnTypeMismatch) { + Y_UNIT_TEST(ColumnTypeMismatch) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -338,7 +338,7 @@ Y_UNIT_TEST_SUITE(KqpYql) { UNIT_ASSERT_STRING_CONTAINS(req.GetIssues().ToString(), "Failed to convert 'Value': Uint64 to Optional<String>"); } - Y_UNIT_TEST_NEW_ENGINE(FlexibleTypes) { + Y_UNIT_TEST(FlexibleTypes) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -360,7 +360,7 @@ Y_UNIT_TEST_SUITE(KqpYql) { CompareYson(R"([["Some text";"Some bytes"]])", FormatResultSetYson(result.GetResultSet(0))); } - Y_UNIT_TEST_NEW_ENGINE(BinaryJsonOffsetBound) { + Y_UNIT_TEST(BinaryJsonOffsetBound) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -372,7 +372,7 @@ Y_UNIT_TEST_SUITE(KqpYql) { UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::INTERNAL_ERROR, result.GetIssues().ToString()); } - Y_UNIT_TEST_NEW_ENGINE(BinaryJsonOffsetNormal) { + Y_UNIT_TEST(BinaryJsonOffsetNormal) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); @@ -384,7 +384,7 @@ Y_UNIT_TEST_SUITE(KqpYql) { UNIT_ASSERT_VALUES_EQUAL_C(result.GetStatus(), EStatus::SUCCESS, result.GetIssues().ToString()); } - Y_UNIT_TEST_NEW_ENGINE(JsonNumberPrecision) { + Y_UNIT_TEST(JsonNumberPrecision) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); diff --git a/ydb/core/kqp/ut/pg/kqp_pg_ut.cpp b/ydb/core/kqp/ut/pg/kqp_pg_ut.cpp index a8cb5602b9b..4b26725f6d4 100644 --- a/ydb/core/kqp/ut/pg/kqp_pg_ut.cpp +++ b/ydb/core/kqp/ut/pg/kqp_pg_ut.cpp @@ -15,7 +15,7 @@ Y_UNIT_TEST_SUITE(KqpPg) { auto makePgType = [] (ui32 oid, i32 typlen = -1) { return TPgType(oid, typlen, -1); }; - Y_UNIT_TEST_NEW_ENGINE(CreateTableBulkUpsertAndRead) { + Y_UNIT_TEST(CreateTableBulkUpsertAndRead) { TKikimrRunner kikimr; auto db = kikimr.GetTableClient(); auto session = db.CreateSession().GetValueSync().GetSession(); diff --git a/ydb/core/tx/datashard/datashard_ut_kqp_errors.cpp b/ydb/core/tx/datashard/datashard_ut_kqp_errors.cpp index 8318b5e9dcb..75aa10c5392 100644 --- a/ydb/core/tx/datashard/datashard_ut_kqp_errors.cpp +++ b/ydb/core/tx/datashard/datashard_ut_kqp_errors.cpp @@ -34,12 +34,12 @@ bool HasIssue(const TIssues& issues, ui32 code, TStringBuf message, std::functio class TLocalFixture { public: - TLocalFixture(bool useNewEngine = false) { + TLocalFixture() { TPortManager pm; TServerSettings serverSettings(pm.GetPort(2134)); serverSettings.SetDomainName("Root") .SetNodeCount(2) - .SetEnableKqpSessionActor(useNewEngine) + .SetEnableKqpSessionActor(true) .SetUseRealThreads(false); Server = new TServer(serverSettings); @@ -97,7 +97,7 @@ Y_UNIT_TEST(ResolveTableError) { }; fixture.Runtime->SetObserverFunc(mitm); - SendRequest(*fixture.Runtime, fixture.Client, MakeSQLRequest("pragma kikimr.UseNewEngine='true'; select * from `/Root/table-1`")); + SendRequest(*fixture.Runtime, fixture.Client, MakeSQLRequest("select * from `/Root/table-1`")); auto ev = fixture.Runtime->GrabEdgeEventRethrow<NKqp::TEvKqp::TEvQueryResponse>(fixture.Client); auto& record = ev->Get()->Record.GetRef(); @@ -111,8 +111,8 @@ Y_UNIT_TEST(ResolveTableError) { UNIT_ASSERT(HasIssue(issues, NYql::TIssuesIds::KIKIMR_TEMPORARILY_UNAVAILABLE)); } -Y_UNIT_TEST_NEW_ENGINE(ProposeError) { - TLocalFixture fixture(UseNewEngine); +Y_UNIT_TEST(ProposeError) { + TLocalFixture fixture; THashSet<TActorId> knownExecuters; using TMod = std::function<void(NKikimrTxDataShard::TEvProposeTransactionResult&)>; @@ -189,37 +189,29 @@ Y_UNIT_TEST_NEW_ENGINE(ProposeError) { test(TEvProposeTransactionResult::ERROR, Ydb::StatusIds::ABORTED, NYql::TIssuesIds::KIKIMR_SCHEME_MISMATCH, - UseNewEngine ? "blah-blah-blah" : "Scheme mismatch found while executing query.", + "blah-blah-blah", [](NKikimrTxDataShard::TEvProposeTransactionResult& x) { auto* error = x.MutableError()->Add(); error->SetKind(NKikimrTxDataShard::TError::SCHEME_CHANGED); error->SetReason("blah-blah-blah"); }); - if (UseNewEngine) { - test(TEvProposeTransactionResult::ERROR, - Ydb::StatusIds::ABORTED, - NYql::TIssuesIds::KIKIMR_SCHEME_MISMATCH, - "blah-blah-blah", - [](NKikimrTxDataShard::TEvProposeTransactionResult& x) { - auto* error = x.MutableError()->Add(); - error->SetKind(NKikimrTxDataShard::TError::SCHEME_ERROR); - error->SetReason("blah-blah-blah"); - }); - } else { - test(TEvProposeTransactionResult::ERROR, - Ydb::StatusIds::UNAVAILABLE, - NYql::TIssuesIds::KIKIMR_TEMPORARILY_UNAVAILABLE, - "Kikimr cluster or one of its subsystems was unavailable."); - } + test(TEvProposeTransactionResult::ERROR, + Ydb::StatusIds::ABORTED, + NYql::TIssuesIds::KIKIMR_SCHEME_MISMATCH, + "blah-blah-blah", + [](NKikimrTxDataShard::TEvProposeTransactionResult& x) { + auto* error = x.MutableError()->Add(); + error->SetKind(NKikimrTxDataShard::TError::SCHEME_ERROR); + error->SetReason("blah-blah-blah"); + }); test(TEvProposeTransactionResult::EXEC_ERROR, Ydb::StatusIds::GENERIC_ERROR, NYql::TIssuesIds::DEFAULT_ERROR, - UseNewEngine ? "Error executing transaction (ExecError): Execution failed" : "Default error"); + "Error executing transaction (ExecError): Execution failed"); - if (UseNewEngine) { - test(TEvProposeTransactionResult::EXEC_ERROR, + test(TEvProposeTransactionResult::EXEC_ERROR, Ydb::StatusIds::PRECONDITION_FAILED, NYql::TIssuesIds::KIKIMR_PRECONDITION_FAILED, "Kikimr precondition failed", @@ -229,16 +221,14 @@ Y_UNIT_TEST_NEW_ENGINE(ProposeError) { error->SetReason("blah-blah-blah"); }); - // verify in old engine - test(TEvProposeTransactionResult::RESPONSE_DATA, - Ydb::StatusIds::GENERIC_ERROR, - NYql::TIssuesIds::DEFAULT_ERROR, - "Error executing transaction: transaction failed."); - } + test(TEvProposeTransactionResult::RESPONSE_DATA, + Ydb::StatusIds::GENERIC_ERROR, + NYql::TIssuesIds::DEFAULT_ERROR, + "Error executing transaction: transaction failed."); } -Y_UNIT_TEST_NEW_ENGINE(ProposeRequestUndelivered) { - TLocalFixture fixture(UseNewEngine); +Y_UNIT_TEST(ProposeRequestUndelivered) { + TLocalFixture fixture; auto mitm = [&](TTestActorRuntimeBase& rt, TAutoPtr<IEventHandle> &ev) { if (ev->GetTypeRewrite() == TEvPipeCache::TEvForward::EventType) { auto forwardEvent = ev.Get()->Get<TEvPipeCache::TEvForward>(); @@ -266,9 +256,7 @@ Y_UNIT_TEST_NEW_ENGINE(ProposeRequestUndelivered) { "Kikimr cluster or one of its subsystems was unavailable."), record.GetResponse().DebugString()); UNIT_ASSERT_C(HasIssue(issues, NYql::TIssuesIds::DEFAULT_ERROR, "", [] (const TIssue& issue) { - return UseNewEngine - ? issue.Message.StartsWith("Could not deliver program to shard ") - : issue.Message == "Error executing transaction (ProxyShardNotAvailable): One or more of affected datashards not available, request execution cancelled"; + return issue.Message.StartsWith("Could not deliver program to shard "); }), record.GetResponse().DebugString()); } @@ -313,8 +301,8 @@ void TestProposeResultLost(TTestActorRuntime& runtime, TActorId client, const TS fn(record); } -Y_UNIT_TEST_NEW_ENGINE(ProposeResultLost_RoTx) { - TLocalFixture fixture(UseNewEngine); +Y_UNIT_TEST(ProposeResultLost_RoTx) { + TLocalFixture fixture; TestProposeResultLost(*fixture.Runtime, fixture.Client, Q_("select * from `/Root/table-1`"), [](const NKikimrKqp::TEvQueryResponse& record) { @@ -326,15 +314,13 @@ Y_UNIT_TEST_NEW_ENGINE(ProposeResultLost_RoTx) { "Kikimr cluster or one of its subsystems was unavailable."), record.GetResponse().DebugString()); UNIT_ASSERT_C(HasIssue(issues, NKikimrIssues::TIssuesIds::TX_STATE_UNKNOWN, "", [] (const TIssue& issue) { - return UseNewEngine - ? issue.Message.StartsWith("Tx state unknown for shard ") - : issue.Message.StartsWith("tx state unknown for shard "); + return issue.Message.StartsWith("Tx state unknown for shard "); }), record.GetResponse().DebugString()); }); } -Y_UNIT_TEST_NEW_ENGINE(ProposeResultLost_RwTx) { - TLocalFixture fixture(UseNewEngine); +Y_UNIT_TEST(ProposeResultLost_RwTx) { + TLocalFixture fixture; TestProposeResultLost(*fixture.Runtime, fixture.Client, Q_(R"( upsert into `/Root/table-1` (key, value) VALUES @@ -349,9 +335,7 @@ Y_UNIT_TEST_NEW_ENGINE(ProposeResultLost_RwTx) { "State of operation is unknown."), record.GetResponse().DebugString()); UNIT_ASSERT_C(HasIssue(issues, NKikimrIssues::TIssuesIds::TX_STATE_UNKNOWN, "", [] (const TIssue& issue) { - return UseNewEngine - ? issue.Message.StartsWith("Tx state unknown for shard ") - : issue.Message.StartsWith("tx state unknown for shard "); + return issue.Message.StartsWith("Tx state unknown for shard "); }), record.GetResponse().DebugString()); }); } diff --git a/ydb/core/tx/datashard/datashard_ut_order.cpp b/ydb/core/tx/datashard/datashard_ut_order.cpp index 4b21b7a23a5..579542a44b2 100644 --- a/ydb/core/tx/datashard/datashard_ut_order.cpp +++ b/ydb/core/tx/datashard/datashard_ut_order.cpp @@ -1236,12 +1236,12 @@ Y_UNIT_TEST_WITH_MVCC(ScanFollowedByUpdate) { proxy.ExecQueue(); } -Y_UNIT_TEST_QUAD(TestDelayedTxWaitsForWriteActiveTxOnly, UseMvcc, UseNewEngine) { +Y_UNIT_TEST_TWIN(TestDelayedTxWaitsForWriteActiveTxOnly, UseMvcc) { TPortManager pm; TServerSettings serverSettings(pm.GetPort(2134)); serverSettings.SetDomainName("Root") .SetEnableMvcc(WithMvcc) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetUseRealThreads(false); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -1250,11 +1250,7 @@ Y_UNIT_TEST_QUAD(TestDelayedTxWaitsForWriteActiveTxOnly, UseMvcc, UseNewEngine) TAutoPtr<IEventHandle> handle; runtime.SetLogPriority(NKikimrServices::TX_DATASHARD, NLog::PRI_DEBUG); - if (UseNewEngine) { - runtime.SetLogPriority(NKikimrServices::KQP_EXECUTER, NLog::PRI_DEBUG); - } else { - runtime.SetLogPriority(NKikimrServices::KQP_PROXY, NLog::PRI_DEBUG); - } + runtime.SetLogPriority(NKikimrServices::KQP_EXECUTER, NLog::PRI_DEBUG); runtime.SetLogPriority(NKikimrServices::MINIKQL_ENGINE, NActors::NLog::PRI_DEBUG); InitRoot(server, sender); @@ -1333,12 +1329,12 @@ Y_UNIT_TEST_QUAD(TestDelayedTxWaitsForWriteActiveTxOnly, UseMvcc, UseNewEngine) } } -Y_UNIT_TEST_QUAD(TestOnlyDataTxLagCausesRejects, UseMvcc, UseNewEngine) { +Y_UNIT_TEST_TWIN(TestOnlyDataTxLagCausesRejects, UseMvcc) { TPortManager pm; TServerSettings serverSettings(pm.GetPort(2134)); serverSettings.SetDomainName("Root") .SetEnableMvcc(WithMvcc) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetUseRealThreads(false); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -1347,8 +1343,8 @@ Y_UNIT_TEST_QUAD(TestOnlyDataTxLagCausesRejects, UseMvcc, UseNewEngine) { TAutoPtr<IEventHandle> handle; runtime.SetLogPriority(NKikimrServices::TX_DATASHARD, NLog::PRI_TRACE); - runtime.SetLogPriority(UseNewEngine ? NKikimrServices::KQP_EXECUTER : NKikimrServices::KQP_PROXY, NLog::PRI_DEBUG); - runtime.SetLogPriority(UseNewEngine ? NKikimrServices::KQP_SESSION : NKikimrServices::KQP_WORKER, NLog::PRI_DEBUG); + runtime.SetLogPriority(NKikimrServices::KQP_EXECUTER, NLog::PRI_DEBUG); + runtime.SetLogPriority(NKikimrServices::KQP_SESSION, NLog::PRI_DEBUG); runtime.SetLogPriority(NKikimrServices::MINIKQL_ENGINE, NActors::NLog::PRI_DEBUG); InitRoot(server, sender); @@ -1419,12 +1415,12 @@ Y_UNIT_TEST_QUAD(TestOnlyDataTxLagCausesRejects, UseMvcc, UseNewEngine) { Y_UNIT_TEST_SUITE(DataShardOutOfOrder) { -Y_UNIT_TEST_QUAD(TestOutOfOrderLockLost, UseMvcc, UseNewEngine) { +Y_UNIT_TEST_TWIN(TestOutOfOrderLockLost, UseMvcc) { TPortManager pm; TServerSettings serverSettings(pm.GetPort(2134)); serverSettings.SetDomainName("Root") .SetEnableMvcc(WithMvcc) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetUseRealThreads(false); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -1432,7 +1428,7 @@ Y_UNIT_TEST_QUAD(TestOutOfOrderLockLost, UseMvcc, UseNewEngine) { auto sender = runtime.AllocateEdgeActor(); runtime.SetLogPriority(NKikimrServices::TX_DATASHARD, NLog::PRI_TRACE); - runtime.SetLogPriority(UseNewEngine ? NKikimrServices::KQP_EXECUTER : NKikimrServices::TX_PROXY, NLog::PRI_DEBUG); + runtime.SetLogPriority(NKikimrServices::KQP_EXECUTER, NLog::PRI_DEBUG); InitRoot(server, sender); @@ -1553,12 +1549,12 @@ Y_UNIT_TEST_QUAD(TestOutOfOrderLockLost, UseMvcc, UseNewEngine) { } } -Y_UNIT_TEST_NEW_ENGINE(TestMvccReadDoesntBlockWrites) { +Y_UNIT_TEST(TestMvccReadDoesntBlockWrites) { TPortManager pm; TServerSettings serverSettings(pm.GetPort(2134)); serverSettings.SetDomainName("Root") .SetEnableMvcc(true) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetUseRealThreads(false); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -1569,7 +1565,7 @@ Y_UNIT_TEST_NEW_ENGINE(TestMvccReadDoesntBlockWrites) { auto sender3 = runtime.AllocateEdgeActor(); runtime.SetLogPriority(NKikimrServices::TX_DATASHARD, NLog::PRI_TRACE); - runtime.SetLogPriority(UseNewEngine ? NKikimrServices::KQP_EXECUTER : NKikimrServices::TX_PROXY, NLog::PRI_DEBUG); + runtime.SetLogPriority(NKikimrServices::KQP_EXECUTER, NLog::PRI_DEBUG); InitRoot(server, sender); @@ -1692,12 +1688,12 @@ Y_UNIT_TEST_NEW_ENGINE(TestMvccReadDoesntBlockWrites) { } } -Y_UNIT_TEST_QUAD(TestOutOfOrderReadOnlyAllowed, UseMvcc, UseNewEngine) { +Y_UNIT_TEST_TWIN(TestOutOfOrderReadOnlyAllowed, UseMvcc) { TPortManager pm; TServerSettings serverSettings(pm.GetPort(2134)); serverSettings.SetDomainName("Root") .SetEnableMvcc(WithMvcc) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetUseRealThreads(false); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -1705,7 +1701,7 @@ Y_UNIT_TEST_QUAD(TestOutOfOrderReadOnlyAllowed, UseMvcc, UseNewEngine) { auto sender = runtime.AllocateEdgeActor(); runtime.SetLogPriority(NKikimrServices::TX_DATASHARD, NLog::PRI_TRACE); - runtime.SetLogPriority(UseNewEngine ? NKikimrServices::KQP_EXECUTER : NKikimrServices::TX_PROXY, NLog::PRI_DEBUG); + runtime.SetLogPriority(NKikimrServices::KQP_EXECUTER, NLog::PRI_DEBUG); InitRoot(server, sender); @@ -1803,12 +1799,12 @@ Y_UNIT_TEST_QUAD(TestOutOfOrderReadOnlyAllowed, UseMvcc, UseNewEngine) { } } -Y_UNIT_TEST_QUAD(TestOutOfOrderNonConflictingWrites, UseMvcc, UseNewEngine) { +Y_UNIT_TEST_TWIN(TestOutOfOrderNonConflictingWrites, UseMvcc) { TPortManager pm; TServerSettings serverSettings(pm.GetPort(2134)); serverSettings.SetDomainName("Root") .SetEnableMvcc(WithMvcc) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetUseRealThreads(false); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -1816,7 +1812,7 @@ Y_UNIT_TEST_QUAD(TestOutOfOrderNonConflictingWrites, UseMvcc, UseNewEngine) { auto sender = runtime.AllocateEdgeActor(); runtime.SetLogPriority(NKikimrServices::TX_DATASHARD, NLog::PRI_TRACE); - runtime.SetLogPriority(UseNewEngine ? NKikimrServices::KQP_EXECUTER : NKikimrServices::TX_PROXY, NLog::PRI_DEBUG); + runtime.SetLogPriority(NKikimrServices::KQP_EXECUTER, NLog::PRI_DEBUG); InitRoot(server, sender); @@ -1920,12 +1916,12 @@ Y_UNIT_TEST_QUAD(TestOutOfOrderNonConflictingWrites, UseMvcc, UseNewEngine) { } } -Y_UNIT_TEST_NEW_ENGINE(TestOutOfOrderRestartLocksSingleWithoutBarrier) { +Y_UNIT_TEST(TestOutOfOrderRestartLocksSingleWithoutBarrier) { TPortManager pm; TServerSettings serverSettings(pm.GetPort(2134)); serverSettings.SetDomainName("Root") .SetEnableMvcc(false) // intentionally, because we test non-mvcc locks logic - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetUseRealThreads(false); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -1936,7 +1932,7 @@ Y_UNIT_TEST_NEW_ENGINE(TestOutOfOrderRestartLocksSingleWithoutBarrier) { runtime.GetAppData().FeatureFlags.SetDisableDataShardBarrier(true); runtime.SetLogPriority(NKikimrServices::TX_DATASHARD, NLog::PRI_TRACE); - runtime.SetLogPriority(UseNewEngine ? NKikimrServices::KQP_EXECUTER : NKikimrServices::TX_PROXY, NLog::PRI_DEBUG); + runtime.SetLogPriority(NKikimrServices::KQP_EXECUTER, NLog::PRI_DEBUG); InitRoot(server, sender); @@ -2066,12 +2062,12 @@ Y_UNIT_TEST_NEW_ENGINE(TestOutOfOrderRestartLocksSingleWithoutBarrier) { } } -Y_UNIT_TEST_NEW_ENGINE(MvccTestOutOfOrderRestartLocksSingleWithoutBarrier) { +Y_UNIT_TEST(MvccTestOutOfOrderRestartLocksSingleWithoutBarrier) { TPortManager pm; TServerSettings serverSettings(pm.GetPort(2134)); serverSettings.SetDomainName("Root") .SetEnableMvcc(true) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetUseRealThreads(false); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -2082,7 +2078,7 @@ Y_UNIT_TEST_NEW_ENGINE(MvccTestOutOfOrderRestartLocksSingleWithoutBarrier) { runtime.GetAppData().FeatureFlags.SetDisableDataShardBarrier(true); runtime.SetLogPriority(NKikimrServices::TX_DATASHARD, NLog::PRI_TRACE); - runtime.SetLogPriority(UseNewEngine ? NKikimrServices::KQP_EXECUTER : NKikimrServices::TX_PROXY, NLog::PRI_DEBUG); + runtime.SetLogPriority(NKikimrServices::KQP_EXECUTER, NLog::PRI_DEBUG); InitRoot(server, sender); @@ -2208,12 +2204,12 @@ Y_UNIT_TEST_NEW_ENGINE(MvccTestOutOfOrderRestartLocksSingleWithoutBarrier) { } } -Y_UNIT_TEST_QUAD(TestOutOfOrderRestartLocksReorderedWithoutBarrier, UseMvcc, UseNewEngine) { +Y_UNIT_TEST_TWIN(TestOutOfOrderRestartLocksReorderedWithoutBarrier, UseMvcc) { TPortManager pm; TServerSettings serverSettings(pm.GetPort(2134)); serverSettings.SetDomainName("Root") .SetEnableMvcc(WithMvcc) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetUseRealThreads(false); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -2224,7 +2220,7 @@ Y_UNIT_TEST_QUAD(TestOutOfOrderRestartLocksReorderedWithoutBarrier, UseMvcc, Use runtime.GetAppData().FeatureFlags.SetDisableDataShardBarrier(true); runtime.SetLogPriority(NKikimrServices::TX_DATASHARD, NLog::PRI_TRACE); - runtime.SetLogPriority(UseNewEngine ? NKikimrServices::KQP_EXECUTER : NKikimrServices::TX_PROXY, NLog::PRI_DEBUG); + runtime.SetLogPriority(NKikimrServices::KQP_EXECUTER, NLog::PRI_DEBUG); InitRoot(server, sender); @@ -2355,12 +2351,12 @@ Y_UNIT_TEST_QUAD(TestOutOfOrderRestartLocksReorderedWithoutBarrier, UseMvcc, Use } } -Y_UNIT_TEST_QUAD(TestOutOfOrderNoBarrierRestartImmediateLongTail, UseMvcc, UseNewEngine) { +Y_UNIT_TEST_TWIN(TestOutOfOrderNoBarrierRestartImmediateLongTail, UseMvcc) { TPortManager pm; TServerSettings serverSettings(pm.GetPort(2134)); serverSettings.SetDomainName("Root") .SetEnableMvcc(WithMvcc) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetUseRealThreads(false); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -2371,7 +2367,7 @@ Y_UNIT_TEST_QUAD(TestOutOfOrderNoBarrierRestartImmediateLongTail, UseMvcc, UseNe runtime.GetAppData().FeatureFlags.SetDisableDataShardBarrier(true); runtime.SetLogPriority(NKikimrServices::TX_DATASHARD, NLog::PRI_TRACE); - runtime.SetLogPriority(UseNewEngine ? NKikimrServices::KQP_EXECUTER : NKikimrServices::TX_PROXY, NLog::PRI_DEBUG); + runtime.SetLogPriority(NKikimrServices::KQP_EXECUTER, NLog::PRI_DEBUG); InitRoot(server, sender); @@ -2545,12 +2541,12 @@ Y_UNIT_TEST_QUAD(TestOutOfOrderNoBarrierRestartImmediateLongTail, UseMvcc, UseNe } } -Y_UNIT_TEST_QUAD(TestCopyTableNoDeadlock, UseMvcc, UseNewEngine) { +Y_UNIT_TEST_TWIN(TestCopyTableNoDeadlock, UseMvcc) { TPortManager pm; TServerSettings serverSettings(pm.GetPort(2134)); serverSettings.SetDomainName("Root") .SetEnableMvcc(WithMvcc) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetUseRealThreads(false); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -2558,7 +2554,7 @@ Y_UNIT_TEST_QUAD(TestCopyTableNoDeadlock, UseMvcc, UseNewEngine) { auto sender = runtime.AllocateEdgeActor(); runtime.SetLogPriority(NKikimrServices::TX_DATASHARD, NLog::PRI_TRACE); - runtime.SetLogPriority(UseNewEngine ? NKikimrServices::KQP_EXECUTER : NKikimrServices::TX_PROXY, NLog::PRI_DEBUG); + runtime.SetLogPriority(NKikimrServices::KQP_EXECUTER, NLog::PRI_DEBUG); InitRoot(server, sender); @@ -2730,11 +2726,11 @@ Y_UNIT_TEST_QUAD(TestCopyTableNoDeadlock, UseMvcc, UseNewEngine) { } } -Y_UNIT_TEST_NEW_ENGINE(TestPlannedCancelSplit) { +Y_UNIT_TEST(TestPlannedCancelSplit) { TPortManager pm; TServerSettings serverSettings(pm.GetPort(2134)); serverSettings.SetDomainName("Root") - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetUseRealThreads(false); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -2742,7 +2738,7 @@ Y_UNIT_TEST_NEW_ENGINE(TestPlannedCancelSplit) { auto sender = runtime.AllocateEdgeActor(); runtime.SetLogPriority(NKikimrServices::TX_DATASHARD, NLog::PRI_TRACE); - runtime.SetLogPriority(UseNewEngine ? NKikimrServices::KQP_EXECUTER : NKikimrServices::TX_PROXY, NLog::PRI_DEBUG); + runtime.SetLogPriority(NKikimrServices::KQP_EXECUTER, NLog::PRI_DEBUG); InitRoot(server, sender); @@ -2918,12 +2914,12 @@ Y_UNIT_TEST_NEW_ENGINE(TestPlannedCancelSplit) { "Split needed " << elapsed.ToString() << " to complete, which is too long"); } -Y_UNIT_TEST_QUAD(TestPlannedTimeoutSplit, UseMvcc, UseNewEngine) { +Y_UNIT_TEST_TWIN(TestPlannedTimeoutSplit, UseMvcc) { TPortManager pm; TServerSettings serverSettings(pm.GetPort(2134)); serverSettings.SetDomainName("Root") .SetEnableMvcc(WithMvcc) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetUseRealThreads(false); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -2931,7 +2927,7 @@ Y_UNIT_TEST_QUAD(TestPlannedTimeoutSplit, UseMvcc, UseNewEngine) { auto sender = runtime.AllocateEdgeActor(); runtime.SetLogPriority(NKikimrServices::TX_DATASHARD, NLog::PRI_TRACE); - runtime.SetLogPriority(UseNewEngine ? NKikimrServices::KQP_EXECUTER : NKikimrServices::TX_PROXY, NLog::PRI_DEBUG); + runtime.SetLogPriority(NKikimrServices::KQP_EXECUTER, NLog::PRI_DEBUG); InitRoot(server, sender); @@ -3038,12 +3034,12 @@ Y_UNIT_TEST_QUAD(TestPlannedTimeoutSplit, UseMvcc, UseNewEngine) { } } -Y_UNIT_TEST_QUAD(TestPlannedHalfOverloadedSplit, UseMvcc, UseNewEngine) { +Y_UNIT_TEST_TWIN(TestPlannedHalfOverloadedSplit, UseMvcc) { TPortManager pm; TServerSettings serverSettings(pm.GetPort(2134)); serverSettings.SetDomainName("Root") .SetEnableMvcc(WithMvcc) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetUseRealThreads(false); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -3051,7 +3047,7 @@ Y_UNIT_TEST_QUAD(TestPlannedHalfOverloadedSplit, UseMvcc, UseNewEngine) { auto sender = runtime.AllocateEdgeActor(); runtime.SetLogPriority(NKikimrServices::TX_DATASHARD, NLog::PRI_TRACE); - runtime.SetLogPriority(UseNewEngine ? NKikimrServices::KQP_EXECUTER : NKikimrServices::TX_PROXY, NLog::PRI_DEBUG); + runtime.SetLogPriority(NKikimrServices::KQP_EXECUTER, NLog::PRI_DEBUG); InitRoot(server, sender); @@ -3206,11 +3202,11 @@ namespace { /** * Regression test for KIKIMR-7751, designed to crash under asan */ -Y_UNIT_TEST_NEW_ENGINE(TestReadTableWriteConflict) { +Y_UNIT_TEST(TestReadTableWriteConflict) { TPortManager pm; TServerSettings serverSettings(pm.GetPort(2134)); serverSettings.SetDomainName("Root") - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetUseRealThreads(false); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -3357,11 +3353,11 @@ Y_UNIT_TEST_NEW_ENGINE(TestReadTableWriteConflict) { /** * Regression test for KIKIMR-7903 */ -Y_UNIT_TEST_NEW_ENGINE(TestReadTableImmediateWriteBlock) { +Y_UNIT_TEST(TestReadTableImmediateWriteBlock) { TPortManager pm; TServerSettings serverSettings(pm.GetPort(2134)); serverSettings.SetDomainName("Root") - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetUseRealThreads(false); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -3428,12 +3424,12 @@ Y_UNIT_TEST_NEW_ENGINE(TestReadTableImmediateWriteBlock) { } } -Y_UNIT_TEST_QUAD(TestReadTableSingleShardImmediate, WithMvcc, UseNewEngine) { +Y_UNIT_TEST_TWIN(TestReadTableSingleShardImmediate, WithMvcc) { TPortManager pm; TServerSettings serverSettings(pm.GetPort(2134)); serverSettings.SetDomainName("Root") .SetEnableMvcc(WithMvcc) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetUseRealThreads(false); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -3477,11 +3473,11 @@ Y_UNIT_TEST_QUAD(TestReadTableSingleShardImmediate, WithMvcc, UseNewEngine) { UNIT_ASSERT_VALUES_EQUAL(seenPlanSteps, 0u); } -Y_UNIT_TEST_NEW_ENGINE(TestImmediateQueueThenSplit) { +Y_UNIT_TEST(TestImmediateQueueThenSplit) { TPortManager pm; TServerSettings serverSettings(pm.GetPort(2134)); serverSettings.SetDomainName("Root") - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetUseRealThreads(false); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -3489,7 +3485,7 @@ Y_UNIT_TEST_NEW_ENGINE(TestImmediateQueueThenSplit) { auto sender = runtime.AllocateEdgeActor(); runtime.SetLogPriority(NKikimrServices::TX_DATASHARD, NLog::PRI_TRACE); - runtime.SetLogPriority(UseNewEngine ? NKikimrServices::KQP_EXECUTER : NKikimrServices::TX_PROXY, NLog::PRI_DEBUG); + runtime.SetLogPriority(NKikimrServices::KQP_EXECUTER, NLog::PRI_DEBUG); InitRoot(server, sender); @@ -3764,17 +3760,16 @@ Y_UNIT_TEST_WITH_MVCC(TestLateKqpScanAfterColumnDrop) { Y_UNIT_TEST_WITH_MVCC(TestLateKqpDataReadAfterColumnDrop) { TestLateKqpQueryAfterColumnDrop(true, R"( - PRAGMA kikimr.UseNewEngine = "true"; SELECT SUM(value2) FROM `/Root/table-1` )", WithMvcc); } -Y_UNIT_TEST_NEW_ENGINE(MvccTestSnapshotRead) { +Y_UNIT_TEST(MvccTestSnapshotRead) { TPortManager pm; TServerSettings serverSettings(pm.GetPort(2134)); serverSettings.SetDomainName("Root") .SetEnableMvcc(true) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetUseRealThreads(false); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -3782,7 +3777,7 @@ Y_UNIT_TEST_NEW_ENGINE(MvccTestSnapshotRead) { auto sender = runtime.AllocateEdgeActor(); runtime.SetLogPriority(NKikimrServices::TX_DATASHARD, NLog::PRI_TRACE); - runtime.SetLogPriority(UseNewEngine ? NKikimrServices::KQP_EXECUTER : NKikimrServices::TX_PROXY, NLog::PRI_DEBUG); + runtime.SetLogPriority(NKikimrServices::KQP_EXECUTER, NLog::PRI_DEBUG); InitRoot(server, sender); @@ -3897,11 +3892,11 @@ Y_UNIT_TEST_NEW_ENGINE(MvccTestSnapshotRead) { UNIT_ASSERT(!rescheduled); } -Y_UNIT_TEST_NEW_ENGINE(TestSecondaryClearanceAfterShardRestartRace) { +Y_UNIT_TEST(TestSecondaryClearanceAfterShardRestartRace) { TPortManager pm; TServerSettings serverSettings(pm.GetPort(2134)); serverSettings.SetDomainName("Root") - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetUseRealThreads(false); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -3909,7 +3904,7 @@ Y_UNIT_TEST_NEW_ENGINE(TestSecondaryClearanceAfterShardRestartRace) { auto sender = runtime.AllocateEdgeActor(); runtime.SetLogPriority(NKikimrServices::TX_DATASHARD, NLog::PRI_TRACE); - runtime.SetLogPriority(UseNewEngine ? NKikimrServices::KQP_EXECUTER : NKikimrServices::TX_PROXY, NLog::PRI_TRACE); + runtime.SetLogPriority(NKikimrServices::KQP_EXECUTER, NLog::PRI_TRACE); InitRoot(server, sender); @@ -3983,26 +3978,18 @@ Y_UNIT_TEST_NEW_ENGINE(TestSecondaryClearanceAfterShardRestartRace) { ExecSQL(server, sender, Q_("UPSERT INTO `/Root/table-1` (key, value) VALUES (4, 4);")); } -Y_UNIT_TEST_QUAD(TestShardRestartNoUndeterminedImmediate, UseMvcc, UseNewEngine) { +Y_UNIT_TEST_TWIN(TestShardRestartNoUndeterminedImmediate, UseMvcc) { TPortManager pm; TServerSettings serverSettings(pm.GetPort(2134)); serverSettings.SetDomainName("Root") .SetEnableMvcc(WithMvcc) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetUseRealThreads(false); Tests::TServer::TPtr server = new TServer(serverSettings); auto &runtime = *server->GetRuntime(); auto sender = runtime.AllocateEdgeActor(); -// runtime.SetLogPriority(NKikimrServices::TABLET_MAIN, NLog::PRI_TRACE); -// runtime.SetLogPriority(NKikimrServices::TX_DATASHARD, NLog::PRI_TRACE); -// if (UseNewEngine) { -// runtime.SetLogPriority(NKikimrServices::KQP_EXECUTER, NLog::PRI_TRACE); -// } else { -// runtime.SetLogPriority(NKikimrServices::TX_PROXY, NLog::PRI_TRACE); -// } - InitRoot(server, sender); CreateShardedTable(server, sender, "/Root", "table-1", 1); @@ -4103,26 +4090,18 @@ Y_UNIT_TEST_QUAD(TestShardRestartNoUndeterminedImmediate, UseMvcc, UseNewEngine) } } -Y_UNIT_TEST_QUAD(TestShardRestartPlannedCommitShouldSucceed, UseMvcc, UseNewEngine) { +Y_UNIT_TEST_TWIN(TestShardRestartPlannedCommitShouldSucceed, UseMvcc) { TPortManager pm; TServerSettings serverSettings(pm.GetPort(2134)); serverSettings.SetDomainName("Root") .SetEnableMvcc(WithMvcc) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetUseRealThreads(false); Tests::TServer::TPtr server = new TServer(serverSettings); auto &runtime = *server->GetRuntime(); auto sender = runtime.AllocateEdgeActor(); -// runtime.SetLogPriority(NKikimrServices::TABLET_MAIN, NLog::PRI_TRACE); -// runtime.SetLogPriority(NKikimrServices::TX_DATASHARD, NLog::PRI_TRACE); -// if (UseNewEngine) { -// runtime.SetLogPriority(NKikimrServices::KQP_EXECUTER, NLog::PRI_TRACE); -// } else { -// runtime.SetLogPriority(NKikimrServices::TX_PROXY, NLog::PRI_TRACE); -// } - InitRoot(server, sender); CreateShardedTable(server, sender, "/Root", "table-1", 1); @@ -4207,13 +4186,13 @@ Y_UNIT_TEST_QUAD(TestShardRestartPlannedCommitShouldSucceed, UseMvcc, UseNewEngi } } -Y_UNIT_TEST_NEW_ENGINE(TestShardSnapshotReadNoEarlyReply) { +Y_UNIT_TEST(TestShardSnapshotReadNoEarlyReply) { TPortManager pm; TServerSettings serverSettings(pm.GetPort(2134)); serverSettings.SetDomainName("Root") .SetEnableMvcc(true) .SetEnableMvccSnapshotReads(true) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetUseRealThreads(false); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -4352,13 +4331,13 @@ Y_UNIT_TEST_NEW_ENGINE(TestShardSnapshotReadNoEarlyReply) { } } -Y_UNIT_TEST_TWIN(TestSnapshotReadAfterBrokenLock, UseNewEngine) { +Y_UNIT_TEST(TestSnapshotReadAfterBrokenLock) { TPortManager pm; TServerSettings serverSettings(pm.GetPort(2134)); serverSettings.SetDomainName("Root") .SetEnableMvcc(true) .SetEnableMvccSnapshotReads(true) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetUseRealThreads(false); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -4425,13 +4404,13 @@ Y_UNIT_TEST_TWIN(TestSnapshotReadAfterBrokenLock, UseNewEngine) { } } -Y_UNIT_TEST_TWIN(TestSnapshotReadAfterBrokenLockOutOfOrder, UseNewEngine) { +Y_UNIT_TEST(TestSnapshotReadAfterBrokenLockOutOfOrder) { TPortManager pm; TServerSettings serverSettings(pm.GetPort(2134)); serverSettings.SetDomainName("Root") .SetEnableMvcc(true) .SetEnableMvccSnapshotReads(true) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetUseRealThreads(false); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -4554,13 +4533,13 @@ Y_UNIT_TEST_TWIN(TestSnapshotReadAfterBrokenLockOutOfOrder, UseNewEngine) { } } -Y_UNIT_TEST_TWIN(TestSnapshotReadAfterStuckRW, UseNewEngine) { +Y_UNIT_TEST(TestSnapshotReadAfterStuckRW) { TPortManager pm; TServerSettings serverSettings(pm.GetPort(2134)); serverSettings.SetDomainName("Root") .SetEnableMvcc(true) .SetEnableMvccSnapshotReads(true) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetUseRealThreads(false); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -4650,7 +4629,7 @@ Y_UNIT_TEST_TWIN(TestSnapshotReadAfterStuckRW, UseNewEngine) { } } -Y_UNIT_TEST_QUAD(TestSnapshotReadPriority, UnprotectedReads, UseNewEngine) { +Y_UNIT_TEST_TWIN(TestSnapshotReadPriority, UnprotectedReads) { TPortManager pm; TServerSettings::TControls controls; controls.MutableDataShardControls()->SetPrioritizedMvccSnapshotReads(1); @@ -4659,7 +4638,7 @@ Y_UNIT_TEST_QUAD(TestSnapshotReadPriority, UnprotectedReads, UseNewEngine) { serverSettings.SetDomainName("Root") .SetEnableMvcc(true) .SetEnableMvccSnapshotReads(true) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetControls(controls) .SetUseRealThreads(false); @@ -4968,7 +4947,7 @@ Y_UNIT_TEST_QUAD(TestSnapshotReadPriority, UnprotectedReads, UseNewEngine) { "} Struct { Bool: false }"); } -Y_UNIT_TEST_TWIN(TestUnprotectedReadsThenWriteVisibility, UseNewEngine) { +Y_UNIT_TEST(TestUnprotectedReadsThenWriteVisibility) { TPortManager pm; TServerSettings::TControls controls; controls.MutableDataShardControls()->SetPrioritizedMvccSnapshotReads(1); @@ -4978,7 +4957,7 @@ Y_UNIT_TEST_TWIN(TestUnprotectedReadsThenWriteVisibility, UseNewEngine) { .SetNodeCount(2) .SetEnableMvcc(true) .SetEnableMvccSnapshotReads(true) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetControls(controls) .SetUseRealThreads(false); @@ -5187,12 +5166,12 @@ Y_UNIT_TEST_TWIN(TestUnprotectedReadsThenWriteVisibility, UseNewEngine) { "} Struct { Bool: false }"); } -Y_UNIT_TEST_TWIN(UncommittedReadSetAck, UseNewEngine) { +Y_UNIT_TEST(UncommittedReadSetAck) { TPortManager pm; TServerSettings serverSettings(pm.GetPort(2134)); serverSettings.SetDomainName("Root") .SetNodeCount(2) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetUseRealThreads(false); @@ -5425,7 +5404,7 @@ Y_UNIT_TEST_TWIN(UncommittedReadSetAck, UseNewEngine) { )")); } -Y_UNIT_TEST_TWIN(UncommittedReads, UseNewEngine) { +Y_UNIT_TEST(UncommittedReads) { TPortManager pm; TServerSettings::TControls controls; controls.MutableDataShardControls()->SetPrioritizedMvccSnapshotReads(1); @@ -5435,7 +5414,7 @@ Y_UNIT_TEST_TWIN(UncommittedReads, UseNewEngine) { serverSettings.SetDomainName("Root") .SetEnableMvcc(true) .SetEnableMvccSnapshotReads(true) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetControls(controls) .SetUseRealThreads(false); diff --git a/ydb/core/tx/datashard/datashard_ut_snapshot.cpp b/ydb/core/tx/datashard/datashard_ut_snapshot.cpp index 3432193978f..29574c8dab0 100644 --- a/ydb/core/tx/datashard/datashard_ut_snapshot.cpp +++ b/ydb/core/tx/datashard/datashard_ut_snapshot.cpp @@ -978,7 +978,7 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { "key = 3, value = 3\n"); } - Y_UNIT_TEST_TWIN(MvccSnapshotTailCleanup, UseNewEngine) { + Y_UNIT_TEST(MvccSnapshotTailCleanup) { TPortManager pm; TServerSettings::TControls controls; controls.MutableDataShardControls()->SetPrioritizedMvccSnapshotReads(1); @@ -988,7 +988,7 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { .SetUseRealThreads(false) .SetEnableMvcc(true) .SetEnableMvccSnapshotReads(true) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetKeepSnapshotTimeout(TDuration::Seconds(2)) .SetControls(controls); @@ -1086,7 +1086,7 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { UNIT_ASSERT_C(failed, "Snapshot was not cleaned up"); } - Y_UNIT_TEST_TWIN(MvccSnapshotAndSplit, UseNewEngine) { + Y_UNIT_TEST(MvccSnapshotAndSplit) { TPortManager pm; TServerSettings::TControls controls; controls.MutableDataShardControls()->SetPrioritizedMvccSnapshotReads(1); @@ -1096,7 +1096,7 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { .SetUseRealThreads(false) .SetEnableMvcc(true) .SetEnableMvccSnapshotReads(true) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetControls(controls); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -1282,7 +1282,7 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { "} Struct { Bool: false }"); } - Y_UNIT_TEST_TWIN(MvccSnapshotReadWithLongPlanQueue, UseNewEngine) { + Y_UNIT_TEST(MvccSnapshotReadWithLongPlanQueue) { TPortManager pm; TServerSettings::TControls controls; controls.MutableDataShardControls()->SetPrioritizedMvccSnapshotReads(1); @@ -1293,7 +1293,7 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { .SetUseRealThreads(false) .SetEnableMvcc(true) .SetEnableMvccSnapshotReads(true) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetControls(controls); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -1648,7 +1648,7 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { TVector<THolder<IEventHandle>> BlockedReadSets; }; - Y_UNIT_TEST_TWIN(MvccSnapshotLockedWrites, UseNewEngine) { + Y_UNIT_TEST(MvccSnapshotLockedWrites) { TPortManager pm; TServerSettings::TControls controls; controls.MutableDataShardControls()->SetPrioritizedMvccSnapshotReads(1); @@ -1660,7 +1660,7 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { .SetUseRealThreads(false) .SetEnableMvcc(true) .SetEnableMvccSnapshotReads(true) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetControls(controls); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -1703,16 +1703,9 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { UNIT_ASSERT_VALUES_EQUAL( KqpSimpleExec(runtime, Q_(R"( UPSERT INTO `/Root/table-1` (key, value) VALUES (2, 2) - )")), - UseNewEngine ? "<empty>" : "ERROR: UNAVAILABLE"); + )")), "<empty>"); observer.Inject = {}; - // Old engine doesn't support LockNodeId - // There's nothing to test unless we can write uncommitted data - if (!UseNewEngine) { - return; - } - // Start another snapshot read, it should not see above write (it's uncommitted) TString sessionId2, txId2; UNIT_ASSERT_VALUES_EQUAL( @@ -1744,27 +1737,23 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { )")), "<empty>"); - if (UseNewEngine) { - // Verify new snapshots observe all committed changes - // This is only possible with new engine at this time - TString sessionId3, txId3; - UNIT_ASSERT_VALUES_EQUAL( - KqpSimpleBegin(runtime, sessionId3, txId3, Q_(R"( - SELECT key, value FROM `/Root/table-1` - WHERE key >= 1 AND key <= 3 - ORDER BY key - )")), - "Struct { " - "List { Struct { Optional { Uint32: 1 } } Struct { Optional { Uint32: 1 } } } " - "List { Struct { Optional { Uint32: 2 } } Struct { Optional { Uint32: 2 } } } " - "List { Struct { Optional { Uint32: 3 } } Struct { Optional { Uint32: 3 } } } " - "} Struct { Bool: false }"); - } + // Verify new snapshots observe all committed changes + // This is only possible with new engine at this time + TString sessionId3, txId3; + UNIT_ASSERT_VALUES_EQUAL( + KqpSimpleBegin(runtime, sessionId3, txId3, Q_(R"( + SELECT key, value FROM `/Root/table-1` + WHERE key >= 1 AND key <= 3 + ORDER BY key + )")), + "Struct { " + "List { Struct { Optional { Uint32: 1 } } Struct { Optional { Uint32: 1 } } } " + "List { Struct { Optional { Uint32: 2 } } Struct { Optional { Uint32: 2 } } } " + "List { Struct { Optional { Uint32: 3 } } Struct { Optional { Uint32: 3 } } } " + "} Struct { Bool: false }"); } Y_UNIT_TEST(MvccSnapshotLockedWritesRestart) { - constexpr bool UseNewEngine = true; - TPortManager pm; TServerSettings::TControls controls; controls.MutableDataShardControls()->SetPrioritizedMvccSnapshotReads(1); @@ -1776,7 +1765,7 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { .SetUseRealThreads(false) .SetEnableMvcc(true) .SetEnableMvccSnapshotReads(true) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetControls(controls); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -1877,8 +1866,6 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { } Y_UNIT_TEST(MvccSnapshotLockedWritesWithoutConflicts) { - constexpr bool UseNewEngine = true; - TPortManager pm; TServerSettings::TControls controls; controls.MutableDataShardControls()->SetPrioritizedMvccSnapshotReads(1); @@ -1890,7 +1877,7 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { .SetUseRealThreads(false) .SetEnableMvcc(true) .SetEnableMvccSnapshotReads(true) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetControls(controls); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -2020,8 +2007,6 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { } Y_UNIT_TEST(MvccSnapshotLockedWritesWithConflicts) { - constexpr bool UseNewEngine = true; - TPortManager pm; TServerSettings::TControls controls; controls.MutableDataShardControls()->SetPrioritizedMvccSnapshotReads(1); @@ -2033,7 +2018,7 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { .SetUseRealThreads(false) .SetEnableMvcc(true) .SetEnableMvccSnapshotReads(true) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetControls(controls); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -2197,8 +2182,6 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { } Y_UNIT_TEST(MvccSnapshotReadLockedWrites) { - constexpr bool UseNewEngine = true; - TPortManager pm; TServerSettings::TControls controls; controls.MutableDataShardControls()->SetPrioritizedMvccSnapshotReads(1); @@ -2210,7 +2193,7 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { .SetUseRealThreads(false) .SetEnableMvcc(true) .SetEnableMvccSnapshotReads(true) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetControls(controls); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -2362,8 +2345,6 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { } Y_UNIT_TEST(MvccSnapshotLockedWritesWithReadConflicts) { - constexpr bool UseNewEngine = true; - TPortManager pm; TServerSettings::TControls controls; controls.MutableDataShardControls()->SetPrioritizedMvccSnapshotReads(1); @@ -2375,7 +2356,7 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { .SetUseRealThreads(false) .SetEnableMvcc(true) .SetEnableMvccSnapshotReads(true) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetControls(controls); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -2521,8 +2502,6 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { } Y_UNIT_TEST(LockedWriteBulkUpsertConflict) { - constexpr bool UseNewEngine = true; - TPortManager pm; TServerSettings::TControls controls; controls.MutableDataShardControls()->SetPrioritizedMvccSnapshotReads(1); @@ -2534,7 +2513,7 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { .SetUseRealThreads(false) .SetEnableMvcc(true) .SetEnableMvccSnapshotReads(true) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetControls(controls); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -2626,8 +2605,6 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { } Y_UNIT_TEST(LockedWriteReuseAfterCommit) { - constexpr bool UseNewEngine = true; - TPortManager pm; TServerSettings::TControls controls; controls.MutableDataShardControls()->SetPrioritizedMvccSnapshotReads(1); @@ -2639,7 +2616,7 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { .SetUseRealThreads(false) .SetEnableMvcc(true) .SetEnableMvccSnapshotReads(true) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetControls(controls); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -2718,8 +2695,6 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { } Y_UNIT_TEST(LockedWriteDistributedCommitSuccess) { - constexpr bool UseNewEngine = true; - TPortManager pm; TServerSettings::TControls controls; controls.MutableDataShardControls()->SetPrioritizedMvccSnapshotReads(1); @@ -2731,7 +2706,7 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { .SetUseRealThreads(false) .SetEnableMvcc(true) .SetEnableMvccSnapshotReads(true) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetControls(controls); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -2834,8 +2809,6 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { } Y_UNIT_TEST(LockedWriteDistributedCommitAborted) { - constexpr bool UseNewEngine = true; - TPortManager pm; TServerSettings::TControls controls; controls.MutableDataShardControls()->SetPrioritizedMvccSnapshotReads(1); @@ -2847,7 +2820,7 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { .SetUseRealThreads(false) .SetEnableMvcc(true) .SetEnableMvccSnapshotReads(true) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetControls(controls); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -2956,8 +2929,6 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { } Y_UNIT_TEST(LockedWriteDistributedCommitFreeze) { - constexpr bool UseNewEngine = true; - TPortManager pm; TServerSettings::TControls controls; controls.MutableDataShardControls()->SetPrioritizedMvccSnapshotReads(1); @@ -2969,7 +2940,7 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { .SetUseRealThreads(false) .SetEnableMvcc(true) .SetEnableMvccSnapshotReads(true) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetControls(controls); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -3083,8 +3054,6 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { } Y_UNIT_TEST(LockedWriteDistributedCommitCrossConflict) { - constexpr bool UseNewEngine = true; - TPortManager pm; TServerSettings::TControls controls; controls.MutableDataShardControls()->SetPrioritizedMvccSnapshotReads(1); @@ -3096,7 +3065,7 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { .SetUseRealThreads(false) .SetEnableMvcc(true) .SetEnableMvccSnapshotReads(true) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetControls(controls); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -3269,8 +3238,6 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { } Y_UNIT_TEST(LockedWriteCleanupOnSplit) { - constexpr bool UseNewEngine = true; - TPortManager pm; TServerSettings::TControls controls; controls.MutableDataShardControls()->SetPrioritizedMvccSnapshotReads(1); @@ -3282,7 +3249,7 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { .SetUseRealThreads(false) .SetEnableMvcc(true) .SetEnableMvccSnapshotReads(true) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetControls(controls); Tests::TServer::TPtr server = new TServer(serverSettings); @@ -3373,8 +3340,6 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { } Y_UNIT_TEST(LockedWriteCleanupOnCopyTable) { - constexpr bool UseNewEngine = true; - TPortManager pm; TServerSettings::TControls controls; controls.MutableDataShardControls()->SetPrioritizedMvccSnapshotReads(1); @@ -3386,7 +3351,7 @@ Y_UNIT_TEST_SUITE(DataShardSnapshots) { .SetUseRealThreads(false) .SetEnableMvcc(true) .SetEnableMvccSnapshotReads(true) - .SetEnableKqpSessionActor(UseNewEngine) + .SetEnableKqpSessionActor(true) .SetControls(controls); Tests::TServer::TPtr server = new TServer(serverSettings); |