aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVitalii Gridnev <gridnevvvit@gmail.com>2025-02-28 16:36:54 +0300
committerGitHub <noreply@github.com>2025-02-28 16:36:54 +0300
commit1ecde826fd81f9cdb003f94d2975886b217c874f (patch)
treeab36dc0f0aa9d94788b6742b5e983aa614053339
parent94c61d5c6c2dcdb74c2b6021922ee544a46240a1 (diff)
downloadydb-1ecde826fd81f9cdb003f94d2975886b217c874f.tar.gz
remove some portion of stream lookup tests (#15202)
-rw-r--r--ydb/core/kqp/ut/cost/kqp_cost_ut.cpp34
-rw-r--r--ydb/core/kqp/ut/effects/kqp_inplace_update_ut.cpp2
-rw-r--r--ydb/core/kqp/ut/indexes/kqp_indexes_multishard_ut.cpp21
-rw-r--r--ydb/core/kqp/ut/indexes/kqp_indexes_ut.cpp76
-rw-r--r--ydb/core/kqp/ut/join/kqp_index_lookup_join_ut.cpp39
-rw-r--r--ydb/core/kqp/ut/join/kqp_join_order_ut.cpp106
-rw-r--r--ydb/core/kqp/ut/join/kqp_join_ut.cpp55
-rw-r--r--ydb/core/kqp/ut/opt/kqp_extract_predicate_unpack_ut.cpp23
-rw-r--r--ydb/core/kqp/ut/opt/kqp_ne_ut.cpp36
-rw-r--r--ydb/core/kqp/ut/opt/kqp_ranges_ut.cpp10
-rw-r--r--ydb/core/kqp/ut/opt/kqp_sqlin_ut.cpp13
-rw-r--r--ydb/core/kqp/ut/perf/kqp_query_perf_ut.cpp11
-rw-r--r--ydb/core/kqp/ut/query/kqp_explain_ut.cpp11
-rw-r--r--ydb/core/kqp/ut/query/kqp_limits_ut.cpp17
-rw-r--r--ydb/core/kqp/ut/query/kqp_stats_ut.cpp2
-rw-r--r--ydb/core/kqp/ut/scan/kqp_scan_ut.cpp1
-rw-r--r--ydb/core/kqp/ut/service/kqp_qs_queries_ut.cpp2
-rw-r--r--ydb/core/kqp/ut/tx/kqp_mvcc_ut.cpp2
-rw-r--r--ydb/core/kqp/ut/tx/kqp_sink_common.h1
-rw-r--r--ydb/core/kqp/ut/yql/kqp_yql_ut.cpp3
-rw-r--r--ydb/core/tx/datashard/datashard_ut_erase_rows.cpp5
-rw-r--r--ydb/core/tx/datashard/datashard_ut_order.cpp21
-rw-r--r--ydb/core/tx/datashard/datashard_ut_upload_rows.cpp3
-rw-r--r--ydb/services/ydb/ydb_table_split_ut.cpp1
24 files changed, 149 insertions, 346 deletions
diff --git a/ydb/core/kqp/ut/cost/kqp_cost_ut.cpp b/ydb/core/kqp/ut/cost/kqp_cost_ut.cpp
index 994d9fab51..9c446a4732 100644
--- a/ydb/core/kqp/ut/cost/kqp_cost_ut.cpp
+++ b/ydb/core/kqp/ut/cost/kqp_cost_ut.cpp
@@ -12,10 +12,9 @@ namespace NKqp {
using namespace NYdb;
using namespace NYdb::NTable;
-static NKikimrConfig::TAppConfig GetAppConfig(bool scanSourceRead = false, bool streamLookup = true, bool streamLookupJoin = false, bool enableOltpSink = false) {
+static NKikimrConfig::TAppConfig GetAppConfig(bool scanSourceRead = false, bool streamLookupJoin = false, bool enableOltpSink = false) {
auto app = NKikimrConfig::TAppConfig();
app.MutableTableServiceConfig()->SetEnableKqpScanQuerySourceRead(scanSourceRead);
- app.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(streamLookup);
app.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamIdxLookupJoin(streamLookupJoin);
app.MutableTableServiceConfig()->SetEnableOlapSink(true);
app.MutableTableServiceConfig()->SetEnableOltpSink(enableOltpSink);
@@ -110,11 +109,8 @@ Y_UNIT_TEST_SUITE(KqpCost) {
//runtime->SetLogPriority(NKikimrServices::GRPC_SERVER, NActors::NLog::PRI_DEBUG);
}
- Y_UNIT_TEST_QUAD(IndexLookup, StreamLookup, useSink) {
- if (useSink && !StreamLookup) {
- return;
- }
- TKikimrRunner kikimr(GetAppConfig(true, StreamLookup, false, useSink));
+ Y_UNIT_TEST_TWIN(IndexLookup, useSink) {
+ TKikimrRunner kikimr(GetAppConfig(true, false, useSink));
auto db = kikimr.GetTableClient();
auto session = db.CreateSession().GetValueSync().GetSession();
@@ -178,11 +174,8 @@ Y_UNIT_TEST_SUITE(KqpCost) {
UNIT_ASSERT_VALUES_EQUAL(readsByTable.at("/Root/SecondaryKeys/Index/indexImplTable").second, 8);
}
- Y_UNIT_TEST_QUAD(IndexLookupAtLeast8BytesInStorage, StreamLookup, useSink) {
- if (useSink && !StreamLookup) {
- return;
- }
- TKikimrRunner kikimr(GetAppConfig(true, StreamLookup, false, useSink));
+ Y_UNIT_TEST_TWIN(IndexLookupAtLeast8BytesInStorage, useSink) {
+ TKikimrRunner kikimr(GetAppConfig(true, false, useSink));
auto db = kikimr.GetTableClient();
auto session = db.CreateSession().GetValueSync().GetSession();
@@ -247,11 +240,8 @@ Y_UNIT_TEST_SUITE(KqpCost) {
UNIT_ASSERT_VALUES_EQUAL(readsByTable.at("/Root/SecondaryKeys/Index/indexImplTable").second, 8);
}
- Y_UNIT_TEST_QUAD(IndexLookupAndTake, StreamLookup, useSink) {
- if (useSink && !StreamLookup) {
- return;
- }
- TKikimrRunner kikimr(GetAppConfig(true, StreamLookup, false, useSink));
+ Y_UNIT_TEST_TWIN(IndexLookupAndTake, useSink) {
+ TKikimrRunner kikimr(GetAppConfig(true, false, useSink));
auto db = kikimr.GetTableClient();
auto session = db.CreateSession().GetValueSync().GetSession();
@@ -370,7 +360,7 @@ Y_UNIT_TEST_SUITE(KqpCost) {
}
Y_UNIT_TEST_TWIN(IndexLookupJoin, StreamLookupJoin) {
- TKikimrRunner kikimr(GetAppConfig(true, true, StreamLookupJoin, false));
+ TKikimrRunner kikimr(GetAppConfig(true, StreamLookupJoin, false));
auto db = kikimr.GetTableClient();
auto session = db.CreateSession().GetValueSync().GetSession();
@@ -532,7 +522,7 @@ Y_UNIT_TEST_SUITE(KqpCost) {
}
Y_UNIT_TEST(OlapPointLookup) {
- TKikimrRunner kikimr(GetAppConfig(false, false));
+ TKikimrRunner kikimr(GetAppConfig(false));
auto db = kikimr.GetQueryClient();
auto session = db.GetSession().GetValueSync().GetSession();
@@ -622,7 +612,7 @@ Y_UNIT_TEST_SUITE(KqpCost) {
}
Y_UNIT_TEST(OlapWriteRow) {
- TKikimrRunner kikimr(GetAppConfig(false, false, false, true));
+ TKikimrRunner kikimr(GetAppConfig(false, false, true));
auto db = kikimr.GetQueryClient();
auto session = db.GetSession().GetValueSync().GetSession();
@@ -676,7 +666,7 @@ Y_UNIT_TEST_SUITE(KqpCost) {
auto result = session.ExecuteQuery(query, txControl, GetQuerySettings()).ExtractValueSync();
// TODO: fix status?
UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::BAD_REQUEST);
-
+
auto stats = NYdb::TProtoAccessor::GetProto(*result.GetStats());
Cerr << stats.DebugString() << Endl;
@@ -789,7 +779,7 @@ Y_UNIT_TEST_SUITE(KqpCost) {
}
Y_UNIT_TEST_TWIN(OltpWriteRow, isSink) {
- TKikimrRunner kikimr(GetAppConfig(false, false, false, isSink));
+ TKikimrRunner kikimr(GetAppConfig(false, false, isSink));
auto db = kikimr.GetQueryClient();
auto session = db.GetSession().GetValueSync().GetSession();
diff --git a/ydb/core/kqp/ut/effects/kqp_inplace_update_ut.cpp b/ydb/core/kqp/ut/effects/kqp_inplace_update_ut.cpp
index da6187a2ee..64130b3546 100644
--- a/ydb/core/kqp/ut/effects/kqp_inplace_update_ut.cpp
+++ b/ydb/core/kqp/ut/effects/kqp_inplace_update_ut.cpp
@@ -69,7 +69,6 @@ void Test(
// source read and stream lookup use iterator interface, that doesn't use datashard transactions
NKikimrConfig::TAppConfig appConfig;
- appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(false);
auto settings = TKikimrSettings()
.SetAppConfig(appConfig)
@@ -370,7 +369,6 @@ Y_UNIT_TEST(BigRow) {
// source read use iterator interface, that doesn't use datashard transactions
NKikimrConfig::TAppConfig appConfig;
- appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(false);
auto settings = TKikimrSettings()
.SetAppConfig(appConfig)
diff --git a/ydb/core/kqp/ut/indexes/kqp_indexes_multishard_ut.cpp b/ydb/core/kqp/ut/indexes/kqp_indexes_multishard_ut.cpp
index a98fecc1e3..46b1e84f2c 100644
--- a/ydb/core/kqp/ut/indexes/kqp_indexes_multishard_ut.cpp
+++ b/ydb/core/kqp/ut/indexes/kqp_indexes_multishard_ut.cpp
@@ -1641,10 +1641,8 @@ Y_UNIT_TEST_SUITE(KqpMultishardIndex) {
}
}
- Y_UNIT_TEST_TWIN(DataColumnUpsertMixedSemantic, StreamLookup) {
+ Y_UNIT_TEST(DataColumnUpsertMixedSemantic) {
NKikimrConfig::TAppConfig appConfig;
- appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(StreamLookup);
-
auto setting = NKikimrKqp::TKqpSetting();
auto serverSettings = TKikimrSettings()
.SetAppConfig(appConfig)
@@ -1689,10 +1687,8 @@ Y_UNIT_TEST_SUITE(KqpMultishardIndex) {
}
}
- Y_UNIT_TEST_TWIN(DataColumnWriteNull, StreamLookup) {
+ Y_UNIT_TEST(DataColumnWriteNull) {
NKikimrConfig::TAppConfig appConfig;
- appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(StreamLookup);
-
auto setting = NKikimrKqp::TKqpSetting();
auto serverSettings = TKikimrSettings()
.SetAppConfig(appConfig)
@@ -1771,9 +1767,8 @@ Y_UNIT_TEST_SUITE(KqpMultishardIndex) {
}
}
- Y_UNIT_TEST_TWIN(DataColumnWrite, StreamLookup) {
+ Y_UNIT_TEST(DataColumnWrite) {
NKikimrConfig::TAppConfig appConfig;
- appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(StreamLookup);
auto setting = NKikimrKqp::TKqpSetting();
auto serverSettings = TKikimrSettings()
@@ -2171,9 +2166,8 @@ Y_UNIT_TEST_SUITE(KqpMultishardIndex) {
}
}
- Y_UNIT_TEST_TWIN(DataColumnSelect, StreamLookup) {
+ Y_UNIT_TEST(DataColumnSelect) {
NKikimrConfig::TAppConfig appConfig;
- appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(StreamLookup);
auto setting = NKikimrKqp::TKqpSetting();
auto serverSettings = TKikimrSettings()
@@ -2268,9 +2262,8 @@ Y_UNIT_TEST_SUITE(KqpMultishardIndex) {
}
}
- Y_UNIT_TEST_TWIN(DuplicateUpsert, StreamLookup) {
+ Y_UNIT_TEST(DuplicateUpsert) {
NKikimrConfig::TAppConfig appConfig;
- appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(StreamLookup);
auto setting = NKikimrKqp::TKqpSetting();
auto serverSettings = TKikimrSettings()
@@ -2304,10 +2297,8 @@ Y_UNIT_TEST_SUITE(KqpMultishardIndex) {
}
}
- Y_UNIT_TEST_TWIN(SortByPk, StreamLookup) {
+ Y_UNIT_TEST(SortByPk) {
NKikimrConfig::TAppConfig appConfig;
- appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(StreamLookup);
-
auto serverSettings = TKikimrSettings()
.SetAppConfig(appConfig);
diff --git a/ydb/core/kqp/ut/indexes/kqp_indexes_ut.cpp b/ydb/core/kqp/ut/indexes/kqp_indexes_ut.cpp
index 9d14476a91..e7494b88bb 100644
--- a/ydb/core/kqp/ut/indexes/kqp_indexes_ut.cpp
+++ b/ydb/core/kqp/ut/indexes/kqp_indexes_ut.cpp
@@ -2796,24 +2796,11 @@ Y_UNIT_TEST_SUITE(KqpIndexes) {
auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats());
- if (serverSettings.AppConfig.GetTableServiceConfig().GetEnableKqpDataQueryStreamLookup()) {
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access().size(), 2);
- 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(), 3);
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(1).name(), "/Root/TestTable/ix_cust/indexImplTable");
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(1).reads().rows(), 3);
- } else {
- int indexPhaseId = 0;
- int tablePhaseId = 1;
-
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(tablePhaseId).table_access().size(), 1);
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(tablePhaseId).table_access(0).name(), "/Root/TestTable");
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(tablePhaseId).table_access(0).reads().rows(), 3);
-
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(indexPhaseId).table_access().size(), 1);
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(indexPhaseId).table_access(0).name(), "/Root/TestTable/ix_cust/indexImplTable");
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(indexPhaseId).table_access(0).reads().rows(), 3);
- }
+ UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access().size(), 2);
+ 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(), 3);
+ UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(1).name(), "/Root/TestTable/ix_cust/indexImplTable");
+ UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(1).reads().rows(), 3);
}
}
@@ -2844,24 +2831,11 @@ Y_UNIT_TEST_SUITE(KqpIndexes) {
auto& stats = NYdb::TProtoAccessor::GetProto(*result.GetStats());
- if (serverSettings.AppConfig.GetTableServiceConfig().GetEnableKqpDataQueryStreamLookup()) {
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access().size(), 2);
- 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(), 2);
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(1).name(), "/Root/TestTable/ix_cust2/indexImplTable");
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(1).reads().rows(), 2);
- } else {
- int indexPhaseId = 0;
- int tablePhaseId = 1;
-
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(tablePhaseId).table_access().size(), 1);
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(tablePhaseId).table_access(0).name(), "/Root/TestTable");
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(tablePhaseId).table_access(0).reads().rows(), 2);
-
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(indexPhaseId).table_access().size(), 1);
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(indexPhaseId).table_access(0).name(), "/Root/TestTable/ix_cust2/indexImplTable");
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(indexPhaseId).table_access(0).reads().rows(), 2);
- }
+ UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access().size(), 2);
+ 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(), 2);
+ UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(1).name(), "/Root/TestTable/ix_cust2/indexImplTable");
+ UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(1).reads().rows(), 2);
}
}
@@ -4855,7 +4829,6 @@ R"([[#;#;["Primary1"];[41u]];[["Secondary2"];[2u];["Primary2"];[42u]];[["Seconda
.SetKqpSettings({setting});
NKikimrConfig::TAppConfig appConfig;
- appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(true);
appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamIdxLookupJoin(true);
// setting channel buffer size so small to make sure that we will be able to transfer at least
// one row in stream lookup.
@@ -4998,30 +4971,13 @@ R"([[#;#;["Primary1"];[41u]];[["Secondary2"];[2u];["Primary2"];[42u]];[["Seconda
auto& stats = NYdb::TProtoAccessor::GetProto(*result2.GetStats());
- int readPhase = 0;
- if (serverSettings.AppConfig.GetTableServiceConfig().GetEnableKqpDataQueryStreamLookup()) {
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 1);
-
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(readPhase).table_access().size(), 2);
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(readPhase).table_access(0).name(), "/Root/SecondaryComplexKeys");
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(readPhase).table_access(0).reads().rows(), 1);
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(readPhase).table_access(1).name(), "/Root/SecondaryComplexKeys/Index/indexImplTable");
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(readPhase).table_access(1).reads().rows(), 1);
- } else {
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3);
-
- readPhase++;
-
- 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");
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(readPhase).table_access(0).reads().rows(), 1);
-
- readPhase++;
+ UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 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");
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(readPhase).table_access(0).reads().rows(), 1);
- }
+ UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access().size(), 2);
+ UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).name(), "/Root/SecondaryComplexKeys");
+ UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).reads().rows(), 1);
+ UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(1).name(), "/Root/SecondaryComplexKeys/Index/indexImplTable");
+ UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(1).reads().rows(), 1);
}
}
diff --git a/ydb/core/kqp/ut/join/kqp_index_lookup_join_ut.cpp b/ydb/core/kqp/ut/join/kqp_index_lookup_join_ut.cpp
index 5a513a6c54..4213ecdfef 100644
--- a/ydb/core/kqp/ut/join/kqp_index_lookup_join_ut.cpp
+++ b/ydb/core/kqp/ut/join/kqp_index_lookup_join_ut.cpp
@@ -75,7 +75,7 @@ void PrepareTables(TSession session) {
(1, "Value1"),
(2, "Value2"),
(3, "Value3"),
- (4, "Value4");
+ (4, "Value4");
REPLACE INTO `/Root/LaunchByProcessIdAndPinned` (idx_processId, idx_pinned, idx_launchNumber) VALUES
("eProcess", false, 4),
@@ -133,7 +133,7 @@ void Test(const TString& query, const TString& answer, size_t rightTableReads, b
UNIT_ASSERT_VALUES_EQUAL(tableStat.reads().rows(), rightTableReads);
}
}
- } else if (settings.AppConfig.GetTableServiceConfig().GetEnableKqpDataQueryStreamLookup()) {
+ } else {
UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 2);
UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access().size(), 1);
@@ -143,18 +143,6 @@ void Test(const TString& query, const TString& answer, size_t rightTableReads, b
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/Right");
UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access(0).reads().rows(), rightTableReads);
- } else {
- 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(), 7);
-
- UNIT_ASSERT(stats.query_phases(1).table_access().empty()); // keys extraction for lookups
-
- 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/Right");
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(2).table_access(0).reads().rows(), rightTableReads);
}
}
@@ -575,7 +563,7 @@ Y_UNIT_TEST_TWIN(LeftSemiJoinWithLeftFilter, StreamLookup) {
FROM `/Root/Left` AS l
LEFT SEMI JOIN `/Root/Right` AS r
ON l.Fk = r.Key
- WHERE l.Value != 'Value1'
+ WHERE l.Value != 'Value1'
ORDER BY l.Value
)",
R"([
@@ -651,10 +639,8 @@ void TestKeyCastForAllJoinTypes(TSession session, const TString& leftTable, cons
if (settings.AppConfig.GetTableServiceConfig().GetEnableKqpDataQueryStreamIdxLookupJoin()) {
UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 1);
- } else if (settings.AppConfig.GetTableServiceConfig().GetEnableKqpDataQueryStreamLookup()) {
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 2);
} else {
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3);
+ UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 2);
}
}
}
@@ -728,8 +714,7 @@ void TestKeyCast(const TKikimrSettings& settings, TSession session, const TStrin
const TString query = GetQuery(joinType, leftTable, rightTable);
auto result = session.ExecuteDataQuery(Q_(query), TTxControl::BeginTx().CommitTx(), execSettings).ExtractValueSync();
- ui32 index = settings.AppConfig.GetTableServiceConfig().GetEnableKqpDataQueryStreamIdxLookupJoin() ? 0
- : (settings.AppConfig.GetTableServiceConfig().GetEnableKqpDataQueryStreamLookup() ? 1 : 2);
+ ui32 index = settings.AppConfig.GetTableServiceConfig().GetEnableKqpDataQueryStreamIdxLookupJoin() ? 0 : 1;
CompareYson(answer, FormatResultSetYson(result.GetResultSet(0)));
@@ -764,7 +749,7 @@ Y_UNIT_TEST_QUAD(CheckCastInt32ToInt16, StreamLookupJoin, NotNull) {
(-32769, "Value12");
REPLACE INTO `/Root/{rightTable}` (Key, Value) VALUES
(1, "Value21"),
- (32767, "Value22");
+ (32767, "Value22");
)",
"leftTable"_a = leftKeyColumnType,
"rightTable"_a = rightTableName
@@ -777,7 +762,7 @@ Y_UNIT_TEST_QUAD(CheckCastInt32ToInt16, StreamLookupJoin, NotNull) {
[[1];["Value11"];[1];["Value21"]]
])";
- TestKeyCast(settings, session, "LEFT", leftKeyColumnType, rightTableName, answer, StreamLookupJoin ? 1 : 2);
+ TestKeyCast(settings, session, "LEFT", leftKeyColumnType, rightTableName, answer, StreamLookupJoin ? 1 : 2);
}
Y_UNIT_TEST_QUAD(CheckCastUint32ToUint16, StreamLookupJoin, NotNull) {
@@ -816,7 +801,7 @@ Y_UNIT_TEST_QUAD(CheckCastUint32ToUint16, StreamLookupJoin, NotNull) {
[[4294967295u];["Value12"];#;#]
])";
- TestKeyCast(settings, session, "LEFT", leftKeyColumnType, rightTableName, answer, StreamLookupJoin ? 1 : 2);
+ TestKeyCast(settings, session, "LEFT", leftKeyColumnType, rightTableName, answer, StreamLookupJoin ? 1 : 2);
}
Y_UNIT_TEST_QUAD(CheckCastUint64ToInt64, StreamLookupJoin, NotNull) {
@@ -857,7 +842,7 @@ Y_UNIT_TEST_QUAD(CheckCastUint64ToInt64, StreamLookupJoin, NotNull) {
[[18446744073709551615u];["Value11"];#;#]
])";
- TestKeyCast(settings, session, "LEFT", leftKeyColumnType, rightTableName, answer, StreamLookupJoin ? 1 : 2);
+ TestKeyCast(settings, session, "LEFT", leftKeyColumnType, rightTableName, answer, StreamLookupJoin ? 1 : 2);
}
Y_UNIT_TEST_QUAD(CheckCastInt64ToUint64, StreamLookupJoin, NotNull) {
@@ -896,7 +881,7 @@ Y_UNIT_TEST_QUAD(CheckCastInt64ToUint64, StreamLookupJoin, NotNull) {
[[1];["Value11"];[1u];["Value22"]]
])";
- TestKeyCast(settings, session, "LEFT", leftKeyColumnType, rightTableName, answer, StreamLookupJoin ? 1 : 2);
+ TestKeyCast(settings, session, "LEFT", leftKeyColumnType, rightTableName, answer, StreamLookupJoin ? 1 : 2);
}
Y_UNIT_TEST_QUAD(CheckCastUtf8ToString, StreamLookupJoin, NotNull) {
@@ -971,7 +956,7 @@ Y_UNIT_TEST_TWIN(JoinByComplexKeyWithNullComponents, StreamLookupJoin) {
(1, "one", "value1"),
(2, NULL, "value2"),
(NULL, "three", "value3");
-
+
REPLACE INTO `/Root/Right` (Key1, Key2, Value) VALUES
(1, "one", "value1"),
(2, NULL, "value2"),
@@ -1216,7 +1201,7 @@ Y_UNIT_TEST_TWIN(LeftSemiJoinWithDuplicatesInRightTable, StreamLookupJoin) {
(1, 10, "value1"),
(2, 20, "value2"),
(3, 30, "value3");
-
+
REPLACE INTO `/Root/Right` (Key1, Key2, Value) VALUES
(10, 100, "value1"),
(10, 101, "value1"),
diff --git a/ydb/core/kqp/ut/join/kqp_join_order_ut.cpp b/ydb/core/kqp/ut/join/kqp_join_order_ut.cpp
index 4024038d4a..b6985792ff 100644
--- a/ydb/core/kqp/ut/join/kqp_join_order_ut.cpp
+++ b/ydb/core/kqp/ut/join/kqp_join_order_ut.cpp
@@ -32,11 +32,11 @@ TString GetStatic(const TString& filePath) {
TString fullPath = SRC_("data/" + filePath);
std::ifstream file(fullPath);
-
+
if (!file.is_open()) {
throw std::runtime_error("can't open + " + fullPath + " " + std::filesystem::current_path());
}
-
+
std::stringstream buffer;
buffer << file.rdbuf();
@@ -91,16 +91,16 @@ static void CreateSampleTable(NYdb::NQuery::TSession session, bool useColumnStor
{
CreateTables(session, "schema/different_join_predicate_key_types.sql", false /* olap params are already set in schema */);
- const TString upsert =
+ const TString upsert =
R"(
UPSERT INTO t1 (id1) VALUES (1);
UPSERT INTO t2 (id2, t1_id1) VALUES (1, 1);
UPSERT INTO t3 (id3) VALUES (1);
)";
- auto result =
+ auto result =
session.ExecuteQuery(
- upsert,
- NYdb::NQuery::TTxControl::NoTx(),
+ upsert,
+ NYdb::NQuery::TTxControl::NoTx(),
NYdb::NQuery::TExecuteQuerySettings().ExecMode(NQuery::EExecMode::Execute)
).ExtractValueSync();
@@ -116,10 +116,6 @@ static TKikimrRunner GetKikimrWithJoinSettings(bool useStreamLookupJoin = false,
NKikimrKqp::TKqpSetting setting;
- setting.SetName("EnableKqpDataQueryStreamLookup");
- setting.SetValue("true");
- settings.push_back(setting);
-
if (stats != "") {
setting.SetName("OptOverrideStatistics");
setting.SetValue(stats);
@@ -232,7 +228,7 @@ private:
TKikimrRunner Kikimr;
NYdb::NTable::TTableClient TableClient;
TSession Session;
- size_t ChainSize;
+ size_t ChainSize;
};
void ExplainJoinOrderTestDataQueryWithStats(const TString& queryPath, const TString& statsPath, bool useStreamLookupJoin, bool useColumnStore, bool useCBO = true) {
@@ -246,11 +242,11 @@ void ExplainJoinOrderTestDataQueryWithStats(const TString& queryPath, const TStr
/* join with parameters */
{
const TString query = GetStatic(queryPath);
-
- auto result =
+
+ auto result =
session.ExecuteQuery(
- query,
- NYdb::NQuery::TTxControl::NoTx(),
+ query,
+ NYdb::NQuery::TTxControl::NoTx(),
NYdb::NQuery::TExecuteQuerySettings().ExecMode(NQuery::EExecMode::Explain)
).ExtractValueSync();
result.GetIssues().PrintTo(Cerr);
@@ -270,10 +266,10 @@ void TestOlapEstimationRowsCorrectness(const TString& queryPath, const TString&
const TString actualQuery = GetStatic(queryPath);
TString actualPlan;
{
- auto result =
+ auto result =
session.ExecuteQuery(
- actualQuery,
- NYdb::NQuery::TTxControl::NoTx(),
+ actualQuery,
+ NYdb::NQuery::TTxControl::NoTx(),
NYdb::NQuery::TExecuteQuerySettings().ExecMode(NQuery::EExecMode::Explain)
).ExtractValueSync();
@@ -288,8 +284,8 @@ void TestOlapEstimationRowsCorrectness(const TString& queryPath, const TString&
TString expectedPlan;
{
auto result = session.ExecuteQuery(
- expectedQuery,
- NYdb::NQuery::TTxControl::NoTx(),
+ expectedQuery,
+ NYdb::NQuery::TTxControl::NoTx(),
NYdb::NQuery::TExecuteQuerySettings().ExecMode(NQuery::EExecMode::Explain)
).ExtractValueSync();
UNIT_ASSERT_VALUES_EQUAL(result.GetStatus(), EStatus::SUCCESS);
@@ -400,7 +396,7 @@ Y_UNIT_TEST_SUITE(KqpJoinOrder) {
/* join with parameters */
{
const TString query = GetStatic(queryPath);
-
+
auto explainRes = session.ExecuteQuery(query, NYdb::NQuery::TTxControl::NoTx(), NYdb::NQuery::TExecuteQuerySettings().ExecMode(NQuery::EExecMode::Explain)).ExtractValueSync();
explainRes.GetIssues().PrintTo(Cerr);
UNIT_ASSERT_VALUES_EQUAL(explainRes.GetStatus(), EStatus::SUCCESS);
@@ -425,10 +421,10 @@ Y_UNIT_TEST_SUITE(KqpJoinOrder) {
{
const TString query = GetStatic(queryPath);
- auto result =
+ auto result =
session.ExecuteQuery(
- query,
- NYdb::NQuery::TTxControl::NoTx(),
+ query,
+ NYdb::NQuery::TTxControl::NoTx(),
NYdb::NQuery::TExecuteQuerySettings().ExecMode(NQuery::EExecMode::Explain)
).ExtractValueSync();
PrintPlan(TString{*result.GetStats()->GetPlan()});
@@ -538,7 +534,7 @@ Y_UNIT_TEST_SUITE(KqpJoinOrder) {
}
Y_UNIT_TEST_XOR_OR_BOTH_FALSE(TPCDS16, StreamLookupJoin, ColumnStore) {
- ExecuteJoinOrderTestGenericQueryWithStats("queries/tpcds16.sql", "stats/tpcds1000s.json", StreamLookupJoin, ColumnStore);
+ ExecuteJoinOrderTestGenericQueryWithStats("queries/tpcds16.sql", "stats/tpcds1000s.json", StreamLookupJoin, ColumnStore);
}
/* tpcds23 has > 1 result sets */
@@ -573,11 +569,11 @@ Y_UNIT_TEST_SUITE(KqpJoinOrder) {
}
Y_UNIT_TEST_XOR_OR_BOTH_FALSE(TPCDS34, StreamLookupJoin, ColumnStore) {
- ExecuteJoinOrderTestGenericQueryWithStats("queries/tpcds34.sql", "stats/tpcds1000s.json", StreamLookupJoin, ColumnStore);
+ ExecuteJoinOrderTestGenericQueryWithStats("queries/tpcds34.sql", "stats/tpcds1000s.json", StreamLookupJoin, ColumnStore);
}
Y_UNIT_TEST_XOR_OR_BOTH_FALSE(TPCDS61, StreamLookupJoin, ColumnStore) {
- ExecuteJoinOrderTestGenericQueryWithStats("queries/tpcds61.sql", "stats/tpcds1000s.json", StreamLookupJoin, ColumnStore);
+ ExecuteJoinOrderTestGenericQueryWithStats("queries/tpcds61.sql", "stats/tpcds1000s.json", StreamLookupJoin, ColumnStore);
}
Y_UNIT_TEST_XOR_OR_BOTH_FALSE(TPCDS87, StreamLookupJoin, ColumnStore) {
@@ -585,27 +581,27 @@ Y_UNIT_TEST_SUITE(KqpJoinOrder) {
}
Y_UNIT_TEST_XOR_OR_BOTH_FALSE(TPCDS88, StreamLookupJoin, ColumnStore) {
- ExecuteJoinOrderTestGenericQueryWithStats("queries/tpcds88.sql", "stats/tpcds1000s.json", StreamLookupJoin, ColumnStore);
+ ExecuteJoinOrderTestGenericQueryWithStats("queries/tpcds88.sql", "stats/tpcds1000s.json", StreamLookupJoin, ColumnStore);
}
Y_UNIT_TEST_XOR_OR_BOTH_FALSE(TPCDS90, StreamLookupJoin, ColumnStore) {
- ExecuteJoinOrderTestGenericQueryWithStats("queries/tpcds90.sql", "stats/tpcds1000s.json", StreamLookupJoin, ColumnStore);
+ ExecuteJoinOrderTestGenericQueryWithStats("queries/tpcds90.sql", "stats/tpcds1000s.json", StreamLookupJoin, ColumnStore);
}
-
+
Y_UNIT_TEST_XOR_OR_BOTH_FALSE(TPCDS92, StreamLookupJoin, ColumnStore) {
ExecuteJoinOrderTestGenericQueryWithStats("queries/tpcds92.sql", "stats/tpcds1000s.json", StreamLookupJoin, ColumnStore);
}
Y_UNIT_TEST_XOR_OR_BOTH_FALSE(TPCDS94, StreamLookupJoin, ColumnStore) {
- ExecuteJoinOrderTestGenericQueryWithStats("queries/tpcds94.sql", "stats/tpcds1000s.json", StreamLookupJoin, ColumnStore);
+ ExecuteJoinOrderTestGenericQueryWithStats("queries/tpcds94.sql", "stats/tpcds1000s.json", StreamLookupJoin, ColumnStore);
}
Y_UNIT_TEST_XOR_OR_BOTH_FALSE(TPCDS95, StreamLookupJoin, ColumnStore) {
- ExecuteJoinOrderTestGenericQueryWithStats("queries/tpcds95.sql", "stats/tpcds1000s.json", StreamLookupJoin, ColumnStore);
+ ExecuteJoinOrderTestGenericQueryWithStats("queries/tpcds95.sql", "stats/tpcds1000s.json", StreamLookupJoin, ColumnStore);
}
Y_UNIT_TEST_XOR_OR_BOTH_FALSE(TPCDS96, StreamLookupJoin, ColumnStore) {
- ExecuteJoinOrderTestGenericQueryWithStats("queries/tpcds96.sql", "stats/tpcds1000s.json", StreamLookupJoin, ColumnStore);
+ ExecuteJoinOrderTestGenericQueryWithStats("queries/tpcds96.sql", "stats/tpcds1000s.json", StreamLookupJoin, ColumnStore);
}
Y_UNIT_TEST_XOR_OR_BOTH_FALSE(TestJoinHint1, StreamLookupJoin, ColumnStore) {
@@ -624,12 +620,12 @@ Y_UNIT_TEST_SUITE(KqpJoinOrder) {
)
: Plan(
GetDetailedJoinOrder(
- fullPlan.GetStringRobust(),
+ fullPlan.GetStringRobust(),
TGetPlanParams{
- .IncludeFilters = false,
- .IncludeOptimizerEstimation = false,
+ .IncludeFilters = false,
+ .IncludeOptimizerEstimation = false,
.IncludeTables = true,
- .IncludeShuffles = true
+ .IncludeShuffles = true
}
)
)
@@ -639,7 +635,7 @@ Y_UNIT_TEST_SUITE(KqpJoinOrder) {
TString Join;
bool LhsShuffled;
bool RhsShuffled;
- };
+ };
TJoin Find(const TVector<TString>& labels) {
Labels = labels;
@@ -700,7 +696,7 @@ Y_UNIT_TEST_SUITE(KqpJoinOrder) {
Y_UNIT_TEST(ShuffleEliminationReuseShuffleTwoJoins) {
auto [plan, _] = ExecuteJoinOrderTestGenericQueryWithStats("queries/shuffle_elimination_reuse_shuffle_two_joins.sql", "stats/tpch1000s.json", false, true, true);
auto joinFinder = TFindJoinWithLabels(plan);
-
+
{
auto join = joinFinder.Find({"partsupp", "part"});
UNIT_ASSERT_C(join.Join == "InnerJoin (Grace)", join.Join);
@@ -715,18 +711,18 @@ Y_UNIT_TEST_SUITE(KqpJoinOrder) {
UNIT_ASSERT(join.RhsShuffled);
}
}
-
+
Y_UNIT_TEST(ShuffleEliminationDifferentJoinPredicateKeyTypeCorrectness1) {
auto [plan, resultSets] = ExecuteJoinOrderTestGenericQueryWithStats(
"queries/shuffle_elimination_different_join_predicate_key_type_correctness1.sql", "stats/different_join_predicate_key_types.json", false, false, true
);
-
+
auto joinFinder = TFindJoinWithLabels(plan);
auto join = joinFinder.Find({"t1", "t2"});
UNIT_ASSERT_EQUAL(join.Join, "InnerJoin (Grace)");
UNIT_ASSERT(!join.LhsShuffled);
UNIT_ASSERT(join.RhsShuffled);
-
+
UNIT_ASSERT(resultSets.size() == 1);
auto resultSet = FormatResultSetYson(resultSets[0]);
UNIT_ASSERT_EQUAL_C(resultSet, "[[1;1;1]]", resultSet);
@@ -736,7 +732,7 @@ Y_UNIT_TEST_SUITE(KqpJoinOrder) {
auto [plan, resultSets] = ExecuteJoinOrderTestGenericQueryWithStats(
"queries/shuffle_elimination_different_join_predicate_key_type_correctness2.sql", "stats/different_join_predicate_key_types.json", false, false, true
);
-
+
auto joinFinder = TFindJoinWithLabels(plan);
{
auto join = joinFinder.Find({"t1", "t2"});
@@ -751,7 +747,7 @@ Y_UNIT_TEST_SUITE(KqpJoinOrder) {
UNIT_ASSERT(join.LhsShuffled);
UNIT_ASSERT(!join.RhsShuffled);
}
-
+
UNIT_ASSERT(resultSets.size() == 1);
auto resultSet = FormatResultSetYson(resultSets[0]);
UNIT_ASSERT_EQUAL_C(resultSet, "[[1;1;1;1]]", resultSet);
@@ -761,7 +757,7 @@ Y_UNIT_TEST_SUITE(KqpJoinOrder) {
auto [plan, resultSets] = ExecuteJoinOrderTestGenericQueryWithStats(
"queries/shuffle_elimination_many_keys_join_predicate.sql", "stats/tpch1000s.json", false, false, true
);
-
+
auto joinFinder = TFindJoinWithLabels(plan);
{
auto join = joinFinder.Find({"partsupp", "lineitem"});
@@ -781,18 +777,18 @@ Y_UNIT_TEST_SUITE(KqpJoinOrder) {
}
Y_UNIT_TEST_XOR_OR_BOTH_FALSE(TestJoinOrderHintsSimple, StreamLookupJoin, ColumnStore) {
- auto [plan, _] = ExecuteJoinOrderTestGenericQueryWithStats("queries/join_order_hints_simple.sql", "stats/basic.json", StreamLookupJoin, ColumnStore);
+ auto [plan, _] = ExecuteJoinOrderTestGenericQueryWithStats("queries/join_order_hints_simple.sql", "stats/basic.json", StreamLookupJoin, ColumnStore);
UNIT_ASSERT_VALUES_EQUAL(GetJoinOrder(plan).GetStringRobust(), R"(["T",["R","S"]])") ;
}
Y_UNIT_TEST_XOR_OR_BOTH_FALSE(TestJoinOrderHintsComplex, StreamLookupJoin, ColumnStore) {
- auto [plan, _] = ExecuteJoinOrderTestGenericQueryWithStats("queries/join_order_hints_complex.sql", "stats/basic.json", StreamLookupJoin, ColumnStore);
+ auto [plan, _] = ExecuteJoinOrderTestGenericQueryWithStats("queries/join_order_hints_complex.sql", "stats/basic.json", StreamLookupJoin, ColumnStore);
auto joinOrder = GetJoinOrder(plan).GetStringRobust();
UNIT_ASSERT_C(joinOrder.find(R"([["R","S"],["T","U"]])") != TString::npos, joinOrder);
}
// Y_UNIT_TEST_XOR_OR_BOTH_FALSE(TestJoinOrderHintsManyHintTrees, StreamLookupJoin, ColumnStore) {
- // auto [plan, _] = ExecuteJoinOrderTestGenericQueryWithStats("queries/join_order_hints_many_hint_trees.sql", "stats/basic.json", StreamLookupJoin, ColumnStore);
+ // auto [plan, _] = ExecuteJoinOrderTestGenericQueryWithStats("queries/join_order_hints_many_hint_trees.sql", "stats/basic.json", StreamLookupJoin, ColumnStore);
// auto joinOrder = GetJoinOrder(plan).GetStringRobust();
// UNIT_ASSERT_C(joinOrder.find(R"(["R","S"])") != TString::npos, joinOrder);
// UNIT_ASSERT_C(joinOrder.find(R"(["T","U"])") != TString::npos, joinOrder);
@@ -810,11 +806,11 @@ Y_UNIT_TEST_SUITE(KqpJoinOrder) {
/* join with parameters */
{
const TString query = GetStatic(queryPath);
-
- auto result =
+
+ auto result =
session.ExecuteQuery(
- query,
- NYdb::NQuery::TTxControl::NoTx(),
+ query,
+ NYdb::NQuery::TTxControl::NoTx(),
NYdb::NQuery::TExecuteQuerySettings().ExecMode(NQuery::EExecMode::Explain)
).ExtractValueSync();
@@ -827,7 +823,7 @@ Y_UNIT_TEST_SUITE(KqpJoinOrder) {
}
if (useColumnStore) {
- correctJoinOrderPath = correctJoinOrderPath.substr(0, correctJoinOrderPath.find(".json")) + "_column_store.json";
+ correctJoinOrderPath = correctJoinOrderPath.substr(0, correctJoinOrderPath.find(".json")) + "_column_store.json";
}
auto currentJoinOrder = GetPrettyJSON(GetDetailedJoinOrder(TString{*result.GetStats()->GetPlan()}));
@@ -841,7 +837,7 @@ Y_UNIT_TEST_SUITE(KqpJoinOrder) {
}
TString ref = GetStatic(correctJoinOrderPath);
- Cout << "actual\n" << GetJoinOrder(TString{*result.GetStats()->GetPlan()}).GetStringRobust() << Endl;
+ Cout << "actual\n" << GetJoinOrder(TString{*result.GetStats()->GetPlan()}).GetStringRobust() << Endl;
Cout << "expected\n" << GetJoinOrderFromDetailedJoinOrder(ref).GetStringRobust() << Endl;
UNIT_ASSERT(JoinOrderAndAlgosMatch(TString{*result.GetStats()->GetPlan()}, ref));
}
@@ -870,7 +866,7 @@ Y_UNIT_TEST_SUITE(KqpJoinOrder) {
"queries/tpcds64_small.sql", "stats/tpcds1000s.json", "join_order/tpcds64_small_1000s.json", StreamLookupJoin, ColumnStore
);
}
-
+
Y_UNIT_TEST_XOR_OR_BOTH_FALSE(CanonizedJoinOrderTPCDS78, StreamLookupJoin, ColumnStore) {
CanonizedJoinOrderTest(
"queries/tpcds78.sql", "stats/tpcds1000s.json", "join_order/tpcds78_1000s.json", StreamLookupJoin, ColumnStore
diff --git a/ydb/core/kqp/ut/join/kqp_join_ut.cpp b/ydb/core/kqp/ut/join/kqp_join_ut.cpp
index 47cfbba286..3f9117e564 100644
--- a/ydb/core/kqp/ut/join/kqp_join_ut.cpp
+++ b/ydb/core/kqp/ut/join/kqp_join_ut.cpp
@@ -262,22 +262,13 @@ Y_UNIT_TEST_SUITE(KqpJoin) {
}
}
} else {
- if (settings.AppConfig.GetTableServiceConfig().GetEnableKqpDataQueryStreamLookup()) {
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 2);
- } else {
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3);
- }
+ 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/Join1_1");
UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).reads().rows(), 8);
ui32 index = 1;
- if (!settings.AppConfig.GetTableServiceConfig().GetEnableKqpDataQueryStreamLookup()) {
- 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);
@@ -326,22 +317,13 @@ Y_UNIT_TEST_SUITE(KqpJoin) {
}
}
} else {
- if (settings.AppConfig.GetTableServiceConfig().GetEnableKqpDataQueryStreamLookup()) {
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 2);
- } else {
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3);
- }
+ 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/Join1_1");
UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).reads().rows(), 8);
ui32 index = 1;
- if (!settings.AppConfig.GetTableServiceConfig().GetEnableKqpDataQueryStreamLookup()) {
- 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);
@@ -636,7 +618,7 @@ Y_UNIT_TEST_SUITE(KqpJoin) {
PRAGMA FilterPushdownOverJoinOptionalSide;
SELECT t1.Key1, t1.Key2, t1.Fk1, t1.Value, t2.Key, t2.Value, t3.Key, t3.Value
-
+
FROM `/Root/Join1_1` AS t1
LEFT JOIN `/Root/Join1_2` AS t2
ON t1.Fk1 = t2.Key
@@ -664,7 +646,7 @@ Y_UNIT_TEST_SUITE(KqpJoin) {
CROSS JOIN `/Root/Join1_3` AS t3
LEFT JOIN `/Root/Join1_2` AS t2
ON t1.Fk1 = t2.Key
-
+
WHERE t2.Value > 1001;
)"), TTxControl::BeginTx().CommitTx()).ExtractValueSync();
UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString());
@@ -817,7 +799,7 @@ Y_UNIT_TEST_SUITE(KqpJoin) {
}
}
- Y_UNIT_TEST(TwoJoinsWithQueryService) {
+ Y_UNIT_TEST(TwoJoinsWithQueryService) {
NKikimrConfig::TAppConfig appConfig;
auto serverSettings = TKikimrSettings()
.SetAppConfig(appConfig)
@@ -832,9 +814,9 @@ Y_UNIT_TEST_SUITE(KqpJoin) {
auto session = client.CreateSession().GetValueSync().GetSession();
const auto query = Q_(R"(
CREATE TABLE ta(
- a Int64,
- b Int64,
- c Int64,
+ a Int64,
+ b Int64,
+ c Int64,
PRIMARY KEY(a)
);
)");
@@ -845,10 +827,10 @@ Y_UNIT_TEST_SUITE(KqpJoin) {
auto session = client.CreateSession().GetValueSync().GetSession();
const auto query = Q_(R"(
CREATE TABLE tb(
- b Int64,
- bval Int64,
+ b Int64,
+ bval Int64,
PRIMARY KEY(b)
- );
+ );
)");
auto result = session.ExecuteSchemeQuery(query).ExtractValueSync();
UNIT_ASSERT_C(result.IsSuccess(), result.GetIssues().ToString());
@@ -857,8 +839,8 @@ Y_UNIT_TEST_SUITE(KqpJoin) {
auto session = client.CreateSession().GetValueSync().GetSession();
const auto query = Q_(R"(
CREATE TABLE tc(
- c Int64,
- cval Int64,
+ c Int64,
+ cval Int64,
PRIMARY KEY(c)
);
)");
@@ -1638,7 +1620,6 @@ Y_UNIT_TEST_SUITE(KqpJoin) {
NKikimrConfig::TAppConfig appConfig;
appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamIdxLookupJoin(StreamLookup);
appConfig.MutableTableServiceConfig()->SetIdxLookupJoinPointsLimit(10);
- //appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(false);
auto appsettings = TKikimrSettings().SetAppConfig(appConfig);
@@ -1831,11 +1812,11 @@ Y_UNIT_TEST_SUITE(KqpJoin) {
("04","1","07"),
("04","2","08"),
("05","1","09"),
- ("05","2","10"),
+ ("05","2","10"),
("06","1","11"),
- ("06","2","12"),
+ ("06","2","12"),
("07","1","13"),
- ("07","2","14"),
+ ("07","2","14"),
("09","1","15"),
("09","2","16");
@@ -1866,11 +1847,11 @@ Y_UNIT_TEST_SUITE(KqpJoin) {
(NULL,"1","01"),
(NULL,"2","02"),
("02","1","03"),
- ("02","1","04"),
+ ("02","1","04"),
("02","2","05"),
("02","2","06"),
("03","1","07"),
- ("03","2","08"),
+ ("03","2","08"),
("09","1","09"),
("09","2","10");
)", TTxControl::BeginTx().CommitTx()).ExtractValueSync();
diff --git a/ydb/core/kqp/ut/opt/kqp_extract_predicate_unpack_ut.cpp b/ydb/core/kqp/ut/opt/kqp_extract_predicate_unpack_ut.cpp
index fac1d7e373..4d32b2dbc3 100644
--- a/ydb/core/kqp/ut/opt/kqp_extract_predicate_unpack_ut.cpp
+++ b/ydb/core/kqp/ut/opt/kqp_extract_predicate_unpack_ut.cpp
@@ -150,12 +150,10 @@ Y_UNIT_TEST_SUITE(KqpExtractPredicateLookup) {
void Test(
const TString& query,
const TString& answer,
- bool enableKqpDataQueryStreamLookup,
THashSet<TString> allowScans = {},
NYdb::TParams params = TParamsBuilder().Build())
{
NKikimrConfig::TAppConfig appConfig;
- appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(enableKqpDataQueryStreamLookup);
TKikimrSettings settings;
settings.SetDomainRoot(KikimrDefaultUtDomainRoot);
settings.SetAppConfig(appConfig);
@@ -193,10 +191,8 @@ void Test(
}
}
-void TestRange(const TString& query, const TString& answer, ui64 rowsRead, int stagesCount = 1, bool streamLookup = true) {
+void TestRange(const TString& query, const TString& answer, ui64 rowsRead, int stagesCount = 1) {
NKikimrConfig::TAppConfig appConfig;
- appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(streamLookup);
-
auto settings = TKikimrSettings()
.SetAppConfig(appConfig);
@@ -245,8 +241,7 @@ Y_UNIT_TEST(OverflowLookup) {
)",
R"([])",
0,
- 2,
- false);
+ 2);
TestRange(
R"(
@@ -394,7 +389,7 @@ Y_UNIT_TEST(ComplexRange) {
2);
}
-Y_UNIT_TEST_TWIN(PointJoin, EnableKqpDataQueryStreamLookup) {
+Y_UNIT_TEST(PointJoin) {
Test(
R"(
DECLARE $p as Int32;
@@ -408,7 +403,6 @@ Y_UNIT_TEST_TWIN(PointJoin, EnableKqpDataQueryStreamLookup) {
[[2];[102];["Value1"];[102];["Value22"]];
[[2];[103];["Value3"];[103];["Value23"]]
])",
- EnableKqpDataQueryStreamLookup,
{"/Root/SimpleKey"},
TParamsBuilder().AddParam("$p").Int32(1).Build().Build());
@@ -424,7 +418,6 @@ Y_UNIT_TEST_TWIN(PointJoin, EnableKqpDataQueryStreamLookup) {
R"([
[[3u];[103];["Value2"];[103];["Value23"]]
])",
- EnableKqpDataQueryStreamLookup,
{"/Root/SimpleKey"},
TParamsBuilder().AddParam("$p").Int32(3).Build().Build());
@@ -439,7 +432,6 @@ Y_UNIT_TEST_TWIN(PointJoin, EnableKqpDataQueryStreamLookup) {
)",
R"([
])",
- EnableKqpDataQueryStreamLookup,
{"/Root/SimpleKey"},
TParamsBuilder().AddParam("$p").Int32(-2).Build().Build());
@@ -455,7 +447,6 @@ Y_UNIT_TEST_TWIN(PointJoin, EnableKqpDataQueryStreamLookup) {
R"([
[[3u];[103];["Value2"];[103];["Value23"];["103-2"]]
])",
- EnableKqpDataQueryStreamLookup,
{"/Root/SimpleKey", "/Root/UintComplexKeyWithIndex/Index/indexImplTable"},
TParamsBuilder().AddParam("$p").Int32(3).Build().Build());
@@ -472,12 +463,11 @@ Y_UNIT_TEST_TWIN(PointJoin, EnableKqpDataQueryStreamLookup) {
["2";"102";["Value1"];"102";["Value22"]];
["2";"103";["Value3"];"103";["Value23"]]
])",
- EnableKqpDataQueryStreamLookup,
{"/Root/PgKey"},
TParamsBuilder().AddParam("$p").Pg(TPgValue(TPgValue::VK_TEXT, "1", TPgType("pgint4"))).Build().Build());
}
-Y_UNIT_TEST_TWIN(SqlInJoin, EnableKqpDataQueryStreamLookup) {
+Y_UNIT_TEST(SqlInJoin) {
Test(
R"(
DECLARE $p AS Int32;
@@ -490,7 +480,6 @@ Y_UNIT_TEST_TWIN(SqlInJoin, EnableKqpDataQueryStreamLookup) {
[[2];[102];["Value1"]];
[[2];[103];["Value3"]]
])",
- EnableKqpDataQueryStreamLookup,
{"/Root/SimpleKey"},
TParamsBuilder().AddParam("$p").Int32(1).Build().Build());
@@ -504,7 +493,6 @@ Y_UNIT_TEST_TWIN(SqlInJoin, EnableKqpDataQueryStreamLookup) {
R"([
[[3u];[103];["Value2"]]
])",
- EnableKqpDataQueryStreamLookup,
{"/Root/SimpleKey"},
TParamsBuilder().AddParam("$p").Int32(3).Build().Build());
@@ -517,7 +505,6 @@ Y_UNIT_TEST_TWIN(SqlInJoin, EnableKqpDataQueryStreamLookup) {
)",
R"([
])",
- EnableKqpDataQueryStreamLookup,
{"/Root/SimpleKey"},
TParamsBuilder().AddParam("$p").Int32(-2).Build().Build());
@@ -531,7 +518,6 @@ Y_UNIT_TEST_TWIN(SqlInJoin, EnableKqpDataQueryStreamLookup) {
R"([
[[3u];[103];["Value2"];["103-2"]]
])",
- EnableKqpDataQueryStreamLookup,
{"/Root/SimpleKey", "/Root/UintComplexKeyWithIndex/Index/indexImplTable"},
TParamsBuilder().AddParam("$p").Int32(3).Build().Build());
@@ -547,7 +533,6 @@ Y_UNIT_TEST_TWIN(SqlInJoin, EnableKqpDataQueryStreamLookup) {
["2";"102";["Value1"]];
["2";"103";["Value3"]]
])",
- EnableKqpDataQueryStreamLookup,
{"/Root/PgKey"},
TParamsBuilder().AddParam("$p").Pg(TPgValue(TPgValue::VK_TEXT, "1", TPgType("pgint4"))).Build().Build());
}
diff --git a/ydb/core/kqp/ut/opt/kqp_ne_ut.cpp b/ydb/core/kqp/ut/opt/kqp_ne_ut.cpp
index a0dc58429b..280667bf24 100644
--- a/ydb/core/kqp/ut/opt/kqp_ne_ut.cpp
+++ b/ydb/core/kqp/ut/opt/kqp_ne_ut.cpp
@@ -262,10 +262,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) {
UNIT_ASSERT_VALUES_EQUAL(1, stats.query_phases().size()); // no LiteralExecuter phase
UNIT_ASSERT_VALUES_EQUAL(1, stats.query_phases()[0].table_access().size());
UNIT_ASSERT_VALUES_EQUAL("/Root/EightShard", stats.query_phases()[0].table_access()[0].name());
- if (!settings.AppConfig.GetTableServiceConfig().GetEnableKqpDataQueryStreamLookup()) {
- UNIT_ASSERT_VALUES_EQUAL(1, stats.query_phases()[0].affected_shards());
- UNIT_ASSERT_VALUES_EQUAL(1, stats.query_phases()[0].table_access()[0].partitions_count());
- }
params = kikimr.GetTableClient().GetParamsBuilder()
.AddParam("$key").Uint64(330).Build()
@@ -280,10 +276,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) {
UNIT_ASSERT_VALUES_EQUAL(1, stats.query_phases().size()); // no LiteralExecuter phase
UNIT_ASSERT_VALUES_EQUAL(1, stats.query_phases()[0].table_access().size());
UNIT_ASSERT_VALUES_EQUAL("/Root/EightShard", stats.query_phases()[0].table_access()[0].name());
- if (!settings.AppConfig.GetTableServiceConfig().GetEnableKqpDataQueryStreamLookup()) {
- UNIT_ASSERT_VALUES_EQUAL(1, stats.query_phases()[0].affected_shards());
- UNIT_ASSERT_VALUES_EQUAL(1, stats.query_phases()[0].table_access()[0].partitions_count());
- }
}
Y_UNIT_TEST(PkSelect2) {
@@ -1306,10 +1298,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) {
}
UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(phase).table_access().size(), 1);
- if (!settings.AppConfig.GetTableServiceConfig().GetEnableKqpDataQueryStreamLookup()) {
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(phase).affected_shards(), 2);
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(phase).table_access(0).partitions_count(), 2);
- }
UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(phase).table_access(0).name(), "/Root/EightShard");
UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(phase).table_access(0).reads().rows(), 2);
UNIT_ASSERT(stats.query_phases(phase).table_access(0).reads().bytes() > 0);
@@ -1574,21 +1562,12 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) {
}
}
} else {
- if (settings.AppConfig.GetTableServiceConfig().GetEnableKqpDataQueryStreamLookup()) {
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 2);
- } else {
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3);
- }
+ 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/Join1");
ui32 index = 1;
- if (!settings.AppConfig.GetTableServiceConfig().GetEnableKqpDataQueryStreamLookup()) {
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(1).table_access().size(), 0);
- 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/Join2");
UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(index).table_access(0).reads().rows(), 4);
@@ -2020,10 +1999,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) {
UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 2);
UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access().size(), 1);
- if (!serverSettings.AppConfig.GetTableServiceConfig().GetEnableKqpDataQueryStreamLookup()) {
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).affected_shards(), 1);
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).partitions_count(), 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(), 1);
UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).updates().rows(), 0);
@@ -3631,7 +3606,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) {
Y_UNIT_TEST_TWIN(StreamLookupForDataQuery, StreamLookupJoin) {
NKikimrConfig::TAppConfig appConfig;
- appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(true);
appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamIdxLookupJoin(StreamLookupJoin);
TKikimrRunner kikimr(TKikimrSettings().SetAppConfig(appConfig));
auto db = kikimr.GetTableClient();
@@ -4162,7 +4136,7 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) {
create table demo_ref2(id text, code text, some text, primary key(id), index ix_code global on (code));
)").GetValueSync());
}
-
+
auto query = R"(
select ba_0.id, ba_0.some,
r_1.id, r_1.some, r_1.code,
@@ -4343,9 +4317,9 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) {
querySettings.CollectQueryStats(ECollectQueryStatsMode::Profile);
TString query = R"(
- SELECT Key, Data FROM `/Root/EightShard`
- WHERE Text = "Value1"
- ORDER BY Key
+ SELECT Key, Data FROM `/Root/EightShard`
+ WHERE Text = "Value1"
+ ORDER BY Key
LIMIT 1;
)";
diff --git a/ydb/core/kqp/ut/opt/kqp_ranges_ut.cpp b/ydb/core/kqp/ut/opt/kqp_ranges_ut.cpp
index 87457cf4e2..6e7f712601 100644
--- a/ydb/core/kqp/ut/opt/kqp_ranges_ut.cpp
+++ b/ydb/core/kqp/ut/opt/kqp_ranges_ut.cpp
@@ -862,11 +862,6 @@ Y_UNIT_TEST_SUITE(KqpRanges) {
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).reads().rows(), 1);
-
- if (!settings.AppConfig.GetTableServiceConfig().GetEnableKqpDataQueryStreamLookup()) {
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).affected_shards(), 1);
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).partitions_count(), 1);
- }
}
Y_UNIT_TEST(DuplicateKeyPredicateLiteral) {
@@ -1094,11 +1089,6 @@ Y_UNIT_TEST_SUITE(KqpRanges) {
}
UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(phase).table_access().size(), 1);
UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(phase).table_access(0).reads().rows(), 3);
-
- if (!settings.AppConfig.GetTableServiceConfig().GetEnableKqpDataQueryStreamLookup()) {
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(phase).affected_shards(), 4);
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(phase).table_access(0).partitions_count(), 4);
- }
}
Y_UNIT_TEST(LiteralOrCompisite) {
diff --git a/ydb/core/kqp/ut/opt/kqp_sqlin_ut.cpp b/ydb/core/kqp/ut/opt/kqp_sqlin_ut.cpp
index 876c431802..a988e0cf7c 100644
--- a/ydb/core/kqp/ut/opt/kqp_sqlin_ut.cpp
+++ b/ydb/core/kqp/ut/opt/kqp_sqlin_ut.cpp
@@ -19,13 +19,10 @@ const char* FormatPragma(bool disableOpt) {
const bool DisableOpt = true;
const bool EnableOpt = false;
-TKikimrRunner GetKikimrRunner(bool enableKqpDataQueryStreamLookup = true) {
+TKikimrRunner GetKikimrRunner() {
NKikimrConfig::TAppConfig appConfig;
- appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(enableKqpDataQueryStreamLookup);
-
auto serverSettings = TKikimrSettings()
.SetAppConfig(appConfig);
-
return {serverSettings};
}
@@ -540,7 +537,7 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) {
[[1u];[100500u];["Just Jack"]];
[[4u];[77u];["Boss"]]]
)");
-
+
AssertTableReads(result, "/Root/Test", 3);
}
@@ -578,8 +575,8 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) {
AssertTableReads(result, "/Root/SecondaryKeys", 2);
}
- Y_UNIT_TEST_TWIN(SecondaryIndex_PgKey, EnableKqpDataQueryStreamLookup) {
- TKikimrRunner kikimr = GetKikimrRunner(EnableKqpDataQueryStreamLookup);
+ Y_UNIT_TEST(SecondaryIndex_PgKey) {
+ TKikimrRunner kikimr = GetKikimrRunner();
auto db = kikimr.GetTableClient();
auto session = db.CreateSession().GetValueSync().GetSession();
@@ -915,7 +912,7 @@ Y_UNIT_TEST_SUITE(KqpSqlIn) {
.EndList().Build().Build();
auto result = ExecQueryAndTestResult(session, query, params, R"([[["Payload1"]];[["Payload2"]]])");
-
+
AssertTableReads(result, "/Root/SecondaryComplexKeys/Index/indexImplTable", 2);
AssertTableReads(result, "/Root/SecondaryComplexKeys", 2);
}
diff --git a/ydb/core/kqp/ut/perf/kqp_query_perf_ut.cpp b/ydb/core/kqp/ut/perf/kqp_query_perf_ut.cpp
index b7ef8f640c..eeadaf267b 100644
--- a/ydb/core/kqp/ut/perf/kqp_query_perf_ut.cpp
+++ b/ydb/core/kqp/ut/perf/kqp_query_perf_ut.cpp
@@ -278,7 +278,6 @@ Y_UNIT_TEST_SUITE(KqpQueryPerf) {
Y_UNIT_TEST_QUAD(IndexLookupJoin, EnableStreamLookup, QueryService) {
NKikimrConfig::TAppConfig appConfig;
- appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(false);
appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamIdxLookupJoin(EnableStreamLookup);
auto settings = TKikimrSettings()
.SetAppConfig(appConfig);
@@ -316,7 +315,7 @@ Y_UNIT_TEST_SUITE(KqpQueryPerf) {
.ExpectedReads = EnableStreamLookup ? 13 : 10,
});
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), EnableStreamLookup ? 1 : 3);
+ UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), EnableStreamLookup ? 1 : 2);
}
Y_UNIT_TEST_TWIN(Upsert, QueryService) {
@@ -611,10 +610,8 @@ Y_UNIT_TEST_SUITE(KqpQueryPerf) {
if (settings.AppConfig.GetTableServiceConfig().GetEnableKqpDataQueryStreamIdxLookupJoin()) {
UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 1);
- } else if (settings.AppConfig.GetTableServiceConfig().GetEnableKqpDataQueryStreamLookup()) {
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 2);
} else {
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3);
+ UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 2);
}
}
@@ -638,10 +635,8 @@ Y_UNIT_TEST_SUITE(KqpQueryPerf) {
if (settings.AppConfig.GetTableServiceConfig().GetEnableKqpDataQueryStreamIdxLookupJoin()) {
UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 1);
- } else if (settings.AppConfig.GetTableServiceConfig().GetEnableKqpDataQueryStreamLookup()) {
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3);
} else {
- UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 5);
+ UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 3);
}
}
diff --git a/ydb/core/kqp/ut/query/kqp_explain_ut.cpp b/ydb/core/kqp/ut/query/kqp_explain_ut.cpp
index dc594ebc9b..218a9e49e6 100644
--- a/ydb/core/kqp/ut/query/kqp_explain_ut.cpp
+++ b/ydb/core/kqp/ut/query/kqp_explain_ut.cpp
@@ -489,13 +489,7 @@ Y_UNIT_TEST_SUITE(KqpExplain) {
node = FindPlanNodeByKv(plan, "Name", "TableFullScan");
UNIT_ASSERT_EQUAL(node.GetMapSafe().at("Table").GetStringSafe(), "KeyValue");
-
- if (settings.AppConfig.GetTableServiceConfig().GetEnableKqpDataQueryStreamLookup()) {
- node = FindPlanNodeByKv(plan, "Node Type", "TableLookup");
- } else {
- node = FindPlanNodeByKv(plan, "Name", "TablePointLookup");
- }
-
+ node = FindPlanNodeByKv(plan, "Node Type", "TableLookup");
if (node.IsDefined()) {
UNIT_ASSERT_EQUAL(node.GetMapSafe().at("Table").GetStringSafe(), "KeyValue");
}
@@ -894,7 +888,6 @@ Y_UNIT_TEST_SUITE(KqpExplain) {
Y_UNIT_TEST(MultiJoinCteLinks) {
NKikimrConfig::TAppConfig appConfig;
- appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(false);
appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamIdxLookupJoin(false);
auto settings = TKikimrSettings()
.SetAppConfig(appConfig);
@@ -924,7 +917,7 @@ Y_UNIT_TEST_SUITE(KqpExplain) {
auto cteLink1 = FindPlanNodeByKv(
plan,
"Subplan Name",
- "CTE precompute_1_0"
+ "CTE precompute_0_0"
);
UNIT_ASSERT(cteLink1.IsDefined());
diff --git a/ydb/core/kqp/ut/query/kqp_limits_ut.cpp b/ydb/core/kqp/ut/query/kqp_limits_ut.cpp
index ac78ebc00c..bca95aa56d 100644
--- a/ydb/core/kqp/ut/query/kqp_limits_ut.cpp
+++ b/ydb/core/kqp/ut/query/kqp_limits_ut.cpp
@@ -762,9 +762,8 @@ Y_UNIT_TEST_SUITE(KqpLimits) {
WaitForZeroReadIterators(kikimr.GetTestServer(), "/Root/EightShard");
}
- void DoCancelAfterRo(bool follower, bool streamLookup, bool dependedRead) {
+ void DoCancelAfterRo(bool follower, bool dependedRead) {
NKikimrConfig::TAppConfig appConfig;
- appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(streamLookup);
auto setting = NKikimrKqp::TKqpSetting();
auto serverSettings = TKikimrSettings()
@@ -879,23 +878,15 @@ Y_UNIT_TEST_SUITE(KqpLimits) {
Y_UNIT_TEST(CancelAfterRoTx) {
// false, false has no sense since we use TEvRead to read without followers
- DoCancelAfterRo(false, true, false);
- }
-
- Y_UNIT_TEST(CancelAfterRoTxWithFollowerLegacy) {
- DoCancelAfterRo(true, false, false);
- }
-
- Y_UNIT_TEST(CancelAfterRoTxWithFollowerLegacyDependedRead) {
- DoCancelAfterRo(true, false, true);
+ DoCancelAfterRo(false, false);
}
Y_UNIT_TEST(CancelAfterRoTxWithFollowerStreamLookup) {
- DoCancelAfterRo(true, true, false);
+ DoCancelAfterRo(true, false);
}
Y_UNIT_TEST(CancelAfterRoTxWithFollowerStreamLookupDepededRead) {
- DoCancelAfterRo(true, true, true);
+ DoCancelAfterRo(true, true);
}
Y_UNIT_TEST(QueryExecTimeout) {
diff --git a/ydb/core/kqp/ut/query/kqp_stats_ut.cpp b/ydb/core/kqp/ut/query/kqp_stats_ut.cpp
index 828564d13d..5763397cb1 100644
--- a/ydb/core/kqp/ut/query/kqp_stats_ut.cpp
+++ b/ydb/core/kqp/ut/query/kqp_stats_ut.cpp
@@ -104,7 +104,6 @@ TCollectedStreamResult JoinStatsBasic(
NKikimrConfig::TAppConfig appConfig;
appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamIdxLookupJoin(StreamLookupJoin);
appConfig.MutableTableServiceConfig()->SetEnableKqpScanQuerySourceRead(true);
- appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(true);
auto settings = TKikimrSettings()
.SetAppConfig(appConfig);
@@ -409,7 +408,6 @@ Y_UNIT_TEST(StatsProfile) {
Y_UNIT_TEST_TWIN(StreamLookupStats, StreamLookupJoin) {
NKikimrConfig::TAppConfig app;
app.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamIdxLookupJoin(StreamLookupJoin);
- app.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(true);
TKikimrRunner kikimr(TKikimrSettings().SetAppConfig(app));
auto db = kikimr.GetTableClient();
diff --git a/ydb/core/kqp/ut/scan/kqp_scan_ut.cpp b/ydb/core/kqp/ut/scan/kqp_scan_ut.cpp
index de6367f97e..9ece5942a0 100644
--- a/ydb/core/kqp/ut/scan/kqp_scan_ut.cpp
+++ b/ydb/core/kqp/ut/scan/kqp_scan_ut.cpp
@@ -2373,7 +2373,6 @@ Y_UNIT_TEST_SUITE(KqpScan) {
Y_UNIT_TEST(StreamLookupTryGetDataBeforeSchemeInitialization) {
NKikimrConfig::TAppConfig appConfig;
- appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(true);
TPortManager tp;
ui16 mbusport = tp.GetPort(2134);
diff --git a/ydb/core/kqp/ut/service/kqp_qs_queries_ut.cpp b/ydb/core/kqp/ut/service/kqp_qs_queries_ut.cpp
index 96b94e91f4..26586cdfc8 100644
--- a/ydb/core/kqp/ut/service/kqp_qs_queries_ut.cpp
+++ b/ydb/core/kqp/ut/service/kqp_qs_queries_ut.cpp
@@ -4506,7 +4506,6 @@ Y_UNIT_TEST_SUITE(KqpQueryService) {
void Execute() {
AppConfig.MutableTableServiceConfig()->SetEnableOlapSink(IsOlap);
AppConfig.MutableTableServiceConfig()->SetEnableOltpSink(!IsOlap);
- AppConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(true);
auto settings = TKikimrSettings().SetAppConfig(AppConfig).SetWithSampleTables(false);
Kikimr = std::make_unique<TKikimrRunner>(settings);
@@ -5778,7 +5777,6 @@ Y_UNIT_TEST_SUITE(KqpQueryService) {
appConfig.MutableTableServiceConfig()->SetEnableOlapSink(true);
appConfig.MutableTableServiceConfig()->SetEnableOltpSink(false);
appConfig.MutableTableServiceConfig()->SetEnableHtapTx(false);
- appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(false);
auto settings = TKikimrSettings()
.SetAppConfig(appConfig)
diff --git a/ydb/core/kqp/ut/tx/kqp_mvcc_ut.cpp b/ydb/core/kqp/ut/tx/kqp_mvcc_ut.cpp
index e32f0803db..c22fc24dad 100644
--- a/ydb/core/kqp/ut/tx/kqp_mvcc_ut.cpp
+++ b/ydb/core/kqp/ut/tx/kqp_mvcc_ut.cpp
@@ -114,7 +114,6 @@ Y_UNIT_TEST_SUITE(KqpSnapshotRead) {
Y_UNIT_TEST_TWIN(ReadOnlyTxCommitsOnConcurrentWrite, withSink) {
NKikimrConfig::TAppConfig appConfig;
appConfig.MutableTableServiceConfig()->SetEnableOltpSink(withSink);
- appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(true);
TKikimrRunner kikimr(TKikimrSettings()
.SetAppConfig(appConfig)
);
@@ -333,7 +332,6 @@ Y_UNIT_TEST_SUITE(KqpSnapshotRead) {
Y_UNIT_TEST_TWIN(ReadWriteTxFailsOnConcurrentWrite3, withSink) {
NKikimrConfig::TAppConfig appConfig;
appConfig.MutableTableServiceConfig()->SetEnableOltpSink(withSink);
- appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(true);
TKikimrRunner kikimr(
TKikimrSettings()
.SetAppConfig(appConfig)
diff --git a/ydb/core/kqp/ut/tx/kqp_sink_common.h b/ydb/core/kqp/ut/tx/kqp_sink_common.h
index d7e9075a1e..b29633af9b 100644
--- a/ydb/core/kqp/ut/tx/kqp_sink_common.h
+++ b/ydb/core/kqp/ut/tx/kqp_sink_common.h
@@ -26,7 +26,6 @@ public:
AppConfig.MutableTableServiceConfig()->SetEnableOlapSink(!DisableSinks);
AppConfig.MutableTableServiceConfig()->SetEnableOltpSink(!DisableSinks);
AppConfig.MutableTableServiceConfig()->SetEnableSnapshotIsolationRW(true);
- AppConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(true);
auto settings = TKikimrSettings().SetAppConfig(AppConfig).SetWithSampleTables(false);
if (FastSnapshotExpiration) {
settings.SetKeepSnapshotTimeout(TDuration::Seconds(1));
diff --git a/ydb/core/kqp/ut/yql/kqp_yql_ut.cpp b/ydb/core/kqp/ut/yql/kqp_yql_ut.cpp
index 390f194010..a3d38fb8c7 100644
--- a/ydb/core/kqp/ut/yql/kqp_yql_ut.cpp
+++ b/ydb/core/kqp/ut/yql/kqp_yql_ut.cpp
@@ -968,9 +968,8 @@ Y_UNIT_TEST_SUITE(KqpYql) {
}
}
- Y_UNIT_TEST_TWIN(PgIntPrimaryKey, EnableKqpDataQueryStreamLookup) {
+ Y_UNIT_TEST(PgIntPrimaryKey) {
NKikimrConfig::TAppConfig appConfig;
- appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(EnableKqpDataQueryStreamLookup);
auto setting = NKikimrKqp::TKqpSetting();
auto serverSettings = TKikimrSettings()
.SetAppConfig(appConfig)
diff --git a/ydb/core/tx/datashard/datashard_ut_erase_rows.cpp b/ydb/core/tx/datashard/datashard_ut_erase_rows.cpp
index 361988cbfc..384b0cf2c0 100644
--- a/ydb/core/tx/datashard/datashard_ut_erase_rows.cpp
+++ b/ydb/core/tx/datashard/datashard_ut_erase_rows.cpp
@@ -648,7 +648,7 @@ key = 4, value = 1902441600
key = 5, value = (empty maybe)
)", true);
}
-
+
Y_UNIT_TEST(ConditionalEraseRowsShouldEraseOnTimestamp64) {
ConditionalEraseShouldSuccess("Timestamp64", TUnit::AUTO, R"(
UPSERT INTO `/Root/table-1` (key, value) VALUES
@@ -788,12 +788,11 @@ key = 5, value = (pg null)
}
}
- Y_UNIT_TEST_TWIN(ConditionalEraseRowsShouldBreakLocks, StreamLookup) {
+ Y_UNIT_TEST(ConditionalEraseRowsShouldBreakLocks) {
using TEvResponse = TEvDataShard::TEvConditionalEraseRowsResponse;
TPortManager pm;
NKikimrConfig::TAppConfig appConfig;
- appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(StreamLookup);
TServerSettings serverSettings(pm.GetPort(2134));
serverSettings
.SetAppConfig(appConfig)
diff --git a/ydb/core/tx/datashard/datashard_ut_order.cpp b/ydb/core/tx/datashard/datashard_ut_order.cpp
index 64dbf04f01..9146d93818 100644
--- a/ydb/core/tx/datashard/datashard_ut_order.cpp
+++ b/ydb/core/tx/datashard/datashard_ut_order.cpp
@@ -1222,10 +1222,9 @@ Y_UNIT_TEST(ScanFollowedByUpdate) {
Y_UNIT_TEST_SUITE(DataShardOutOfOrder) {
-Y_UNIT_TEST_TWIN(TestOutOfOrderLockLost, StreamLookup) {
+Y_UNIT_TEST(TestOutOfOrderLockLost) {
TPortManager pm;
NKikimrConfig::TAppConfig app;
- app.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(StreamLookup);
TServerSettings serverSettings(pm.GetPort(2134));
serverSettings.SetDomainName("Root")
.SetUseRealThreads(false)
@@ -1350,10 +1349,9 @@ Y_UNIT_TEST_TWIN(TestOutOfOrderLockLost, StreamLookup) {
}
}
-Y_UNIT_TEST_QUAD(TestOutOfOrderReadOnlyAllowed, StreamLookup, EvWrite) {
+Y_UNIT_TEST_TWIN(TestOutOfOrderReadOnlyAllowed, EvWrite) {
TPortManager pm;
NKikimrConfig::TAppConfig app;
- app.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(StreamLookup);
app.MutableTableServiceConfig()->SetEnableOltpSink(EvWrite);
TServerSettings serverSettings(pm.GetPort(2134));
serverSettings.SetDomainName("Root")
@@ -1456,10 +1454,9 @@ Y_UNIT_TEST_QUAD(TestOutOfOrderReadOnlyAllowed, StreamLookup, EvWrite) {
}
}
-Y_UNIT_TEST_QUAD(TestOutOfOrderNonConflictingWrites, StreamLookup, EvWrite) {
+Y_UNIT_TEST_TWIN(TestOutOfOrderNonConflictingWrites, EvWrite) {
TPortManager pm;
NKikimrConfig::TAppConfig app;
- app.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(StreamLookup);
app.MutableTableServiceConfig()->SetEnableOltpSink(EvWrite);
TServerSettings serverSettings(pm.GetPort(2134));
serverSettings.SetDomainName("Root")
@@ -1571,10 +1568,9 @@ Y_UNIT_TEST_QUAD(TestOutOfOrderNonConflictingWrites, StreamLookup, EvWrite) {
}
}
-Y_UNIT_TEST_TWIN(TestOutOfOrderRestartLocksReorderedWithoutBarrier, StreamLookup) {
+Y_UNIT_TEST(TestOutOfOrderRestartLocksReorderedWithoutBarrier) {
TPortManager pm;
NKikimrConfig::TAppConfig app;
- app.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(StreamLookup);
TServerSettings serverSettings(pm.GetPort(2134));
serverSettings.SetDomainName("Root")
.SetAppConfig(app)
@@ -1707,10 +1703,9 @@ Y_UNIT_TEST_TWIN(TestOutOfOrderRestartLocksReorderedWithoutBarrier, StreamLookup
}
}
-Y_UNIT_TEST_TWIN(TestOutOfOrderNoBarrierRestartImmediateLongTail, StreamLookup) {
+Y_UNIT_TEST(TestOutOfOrderNoBarrierRestartImmediateLongTail) {
TPortManager pm;
NKikimrConfig::TAppConfig app;
- app.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(StreamLookup);
TServerSettings serverSettings(pm.GetPort(2134));
serverSettings.SetDomainName("Root")
.SetAppConfig(app)
@@ -2829,10 +2824,9 @@ Y_UNIT_TEST(TestSecondaryClearanceAfterShardRestartRace) {
ExecSQL(server, sender, Q_("UPSERT INTO `/Root/table-1` (key, value) VALUES (4, 4);"));
}
-Y_UNIT_TEST_TWIN(TestShardRestartNoUndeterminedImmediate, StreamLookup) {
+Y_UNIT_TEST(TestShardRestartNoUndeterminedImmediate) {
TPortManager pm;
NKikimrConfig::TAppConfig app;
- app.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(StreamLookup);
TServerSettings serverSettings(pm.GetPort(2134));
serverSettings.SetDomainName("Root")
.SetUseRealThreads(false)
@@ -2946,10 +2940,9 @@ Y_UNIT_TEST_TWIN(TestShardRestartNoUndeterminedImmediate, StreamLookup) {
}
}
-Y_UNIT_TEST_QUAD(TestShardRestartPlannedCommitShouldSucceed, StreamLookup, EvWrite) {
+Y_UNIT_TEST_TWIN(TestShardRestartPlannedCommitShouldSucceed, EvWrite) {
TPortManager pm;
NKikimrConfig::TAppConfig app;
- app.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(StreamLookup);
app.MutableTableServiceConfig()->SetEnableOltpSink(EvWrite);
TServerSettings serverSettings(pm.GetPort(2134));
serverSettings.SetDomainName("Root")
diff --git a/ydb/core/tx/datashard/datashard_ut_upload_rows.cpp b/ydb/core/tx/datashard/datashard_ut_upload_rows.cpp
index 23474b34dd..f24ba1d25a 100644
--- a/ydb/core/tx/datashard/datashard_ut_upload_rows.cpp
+++ b/ydb/core/tx/datashard/datashard_ut_upload_rows.cpp
@@ -198,9 +198,8 @@ Y_UNIT_TEST_SUITE(TTxDataShardUploadRows) {
DoWaitUploadTestRows(server, sender, Ydb::StatusIds::SCHEME_ERROR);
}
- Y_UNIT_TEST_TWIN(TestUploadRowsLocks, StreamLookup) {
+ Y_UNIT_TEST(TestUploadRowsLocks) {
NKikimrConfig::TAppConfig appConfig;
- appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(StreamLookup);
TPortManager pm;
TServerSettings serverSettings(pm.GetPort(2134));
diff --git a/ydb/services/ydb/ydb_table_split_ut.cpp b/ydb/services/ydb/ydb_table_split_ut.cpp
index 6d883a4ef5..dcac04f287 100644
--- a/ydb/services/ydb/ydb_table_split_ut.cpp
+++ b/ydb/services/ydb/ydb_table_split_ut.cpp
@@ -367,7 +367,6 @@ Y_UNIT_TEST_SUITE(YdbTableSplit) {
NKikimr::TAppData::TimeProvider = testTimeProvider;
NKikimrConfig::TAppConfig appConfig;
- appConfig.MutableTableServiceConfig()->SetEnableKqpDataQueryStreamLookup(false);
TKikimrWithGrpcAndRootSchema server(appConfig);
// Set min uptime before merge by load to 10h