diff options
| -rw-r--r-- | ydb/core/kqp/compile_service/kqp_compile_actor.cpp | 1 | ||||
| -rw-r--r-- | ydb/core/kqp/compile_service/kqp_compile_service.cpp | 3 | ||||
| -rw-r--r-- | ydb/core/kqp/host/kqp_host.cpp | 3 | ||||
| -rw-r--r-- | ydb/core/kqp/opt/logical/kqp_opt_log_ranges_predext.cpp | 9 | ||||
| -rw-r--r-- | ydb/core/kqp/provider/yql_kikimr_settings.cpp | 1 | ||||
| -rw-r--r-- | ydb/core/kqp/provider/yql_kikimr_settings.h | 2 | ||||
| -rw-r--r-- | ydb/core/kqp/ut/opt/kqp_ne_ut.cpp | 14 | ||||
| -rw-r--r-- | ydb/core/kqp/ut/opt/kqp_sort_ut.cpp | 2 | ||||
| -rw-r--r-- | ydb/core/kqp/ut/scheme/kqp_constraints_ut.cpp | 1 | ||||
| -rw-r--r-- | ydb/core/protos/table_service_config.proto | 8 | ||||
| -rw-r--r-- | ydb/tools/query_replay_yt/query_compiler.cpp | 1 |
11 files changed, 7 insertions, 38 deletions
diff --git a/ydb/core/kqp/compile_service/kqp_compile_actor.cpp b/ydb/core/kqp/compile_service/kqp_compile_actor.cpp index 9fdd0ada2ab..23cc5d6c23c 100644 --- a/ydb/core/kqp/compile_service/kqp_compile_actor.cpp +++ b/ydb/core/kqp/compile_service/kqp_compile_actor.cpp @@ -633,7 +633,6 @@ void ApplyServiceConfig(TKikimrConfiguration& kqpConfig, const TTableServiceConf kqpConfig.EnableKqpScanQueryStreamIdxLookupJoin = serviceConfig.GetEnableKqpScanQueryStreamIdxLookupJoin(); kqpConfig.EnableKqpDataQueryStreamIdxLookupJoin = serviceConfig.GetEnableKqpDataQueryStreamIdxLookupJoin(); kqpConfig.BindingsMode = RemapBindingsMode(serviceConfig.GetBindingsMode()); - kqpConfig.IndexAutoChooserMode = serviceConfig.GetIndexAutoChooseMode(); kqpConfig.EnablePgConstsToParams = serviceConfig.GetEnablePgConstsToParams() && serviceConfig.GetEnableAstCache(); kqpConfig.ExtractPredicateRangesLimit = serviceConfig.GetExtractPredicateRangesLimit(); kqpConfig.EnablePerStatementQueryExecution = serviceConfig.GetEnablePerStatementQueryExecution(); diff --git a/ydb/core/kqp/compile_service/kqp_compile_service.cpp b/ydb/core/kqp/compile_service/kqp_compile_service.cpp index 94909f09ab8..5d5694e3e46 100644 --- a/ydb/core/kqp/compile_service/kqp_compile_service.cpp +++ b/ydb/core/kqp/compile_service/kqp_compile_service.cpp @@ -292,8 +292,6 @@ private: bool defaultSyntaxVersion = TableServiceConfig.GetSqlVersion(); - auto indexAutoChooser = TableServiceConfig.GetIndexAutoChooseMode(); - ui64 rangesLimit = TableServiceConfig.GetExtractPredicateRangesLimit(); ui64 idxLookupPointsLimit = TableServiceConfig.GetIdxLookupJoinPointsLimit(); @@ -342,7 +340,6 @@ private: TableServiceConfig.GetEnableKqpScanQueryStreamIdxLookupJoin() != enableKqpScanQueryStreamIdxLookupJoin || TableServiceConfig.GetEnableKqpDataQueryStreamIdxLookupJoin() != enableKqpDataQueryStreamIdxLookupJoin || TableServiceConfig.GetEnableKqpScanQuerySourceRead() != enableKqpScanQuerySourceRead || - TableServiceConfig.GetIndexAutoChooseMode() != indexAutoChooser || TableServiceConfig.GetAllowOlapDataQuery() != allowOlapDataQuery || TableServiceConfig.GetEnableStreamWrite() != enableStreamWrite || TableServiceConfig.GetEnableOlapSink() != enableOlapSink || diff --git a/ydb/core/kqp/host/kqp_host.cpp b/ydb/core/kqp/host/kqp_host.cpp index aa575c511f9..57aa7b7a16b 100644 --- a/ydb/core/kqp/host/kqp_host.cpp +++ b/ydb/core/kqp/host/kqp_host.cpp @@ -1352,9 +1352,6 @@ private: &effectiveSettings ); SessionCtx->Query().TranslationSettings = std::move(effectiveSettings); - if (astRes.ActualSyntaxType == NYql::ESyntaxType::Pg) { - SessionCtx->Config().IndexAutoChooserMode = NKikimrConfig::TTableServiceConfig_EIndexAutoChooseMode::TTableServiceConfig_EIndexAutoChooseMode_MAX_USED_PREFIX; - } queryAst = std::make_shared<NYql::TAstParseResult>(std::move(astRes)); } else { queryAst = query.AstResult->Ast; diff --git a/ydb/core/kqp/opt/logical/kqp_opt_log_ranges_predext.cpp b/ydb/core/kqp/opt/logical/kqp_opt_log_ranges_predext.cpp index 93db491e18f..be7523b6105 100644 --- a/ydb/core/kqp/opt/logical/kqp_opt_log_ranges_predext.cpp +++ b/ydb/core/kqp/opt/logical/kqp_opt_log_ranges_predext.cpp @@ -147,7 +147,7 @@ TExprBase KqpPushExtractedPredicateToReadTable(TExprBase node, TExprContext& ctx bool prepareSuccess = extractor->Prepare(flatmap.Lambda().Ptr(), *mainTableDesc.SchemeNode, possibleKeys, ctx, typesCtx); YQL_ENSURE(prepareSuccess); - if (!indexName.IsValid() && !readSettings.ForcePrimary && kqpCtx.Config->IndexAutoChooserMode != NKikimrConfig::TTableServiceConfig_EIndexAutoChooseMode_DISABLED) { + if (!indexName.IsValid() && !readSettings.ForcePrimary) { using TIndexComparisonKey = std::tuple<bool, bool, size_t, bool, size_t, bool>; auto calcNeedsJoin = [&] (const TKikimrTableMetadataPtr& keyTable) -> bool { bool needsJoin = false; @@ -202,13 +202,6 @@ TExprBase KqpPushExtractedPredicateToReadTable(TExprBase node, TExprContext& ctx auto buildResult = extractor->BuildComputeNode(tableDesc.Metadata->KeyColumnNames, ctx, typesCtx); bool needsJoin = calcNeedsJoin(tableDesc.Metadata); - if (needsJoin && kqpCtx.Config->IndexAutoChooserMode == NKikimrConfig::TTableServiceConfig_EIndexAutoChooseMode_ONLY_FULL_KEY && buildResult.PointPrefixLen < index.KeyColumns.size()) { - continue; - } - if (needsJoin && kqpCtx.Config->IndexAutoChooserMode == NKikimrConfig::TTableServiceConfig_EIndexAutoChooseMode_ONLY_POINTS && buildResult.PointPrefixLen == 0) { - continue; - } - auto key = calcKey(buildResult, index.KeyColumns.size(), needsJoin, tableDesc); if (key > maxKey) { maxKey = key; diff --git a/ydb/core/kqp/provider/yql_kikimr_settings.cpp b/ydb/core/kqp/provider/yql_kikimr_settings.cpp index 1bddb39a051..4437733d2bb 100644 --- a/ydb/core/kqp/provider/yql_kikimr_settings.cpp +++ b/ydb/core/kqp/provider/yql_kikimr_settings.cpp @@ -109,7 +109,6 @@ TKikimrConfiguration::TKikimrConfiguration() { /* Runtime */ REGISTER_SETTING(*this, ScanQuery); - IndexAutoChooserMode = NKikimrConfig::TTableServiceConfig_EIndexAutoChooseMode_DISABLED; BlockChannelsMode = NKikimrConfig::TTableServiceConfig_EBlockChannelsMode_BLOCK_CHANNELS_SCALAR; } diff --git a/ydb/core/kqp/provider/yql_kikimr_settings.h b/ydb/core/kqp/provider/yql_kikimr_settings.h index 00017d38f66..c369e1121cd 100644 --- a/ydb/core/kqp/provider/yql_kikimr_settings.h +++ b/ydb/core/kqp/provider/yql_kikimr_settings.h @@ -8,7 +8,6 @@ #include <yql/essentials/core/cbo/cbo_optimizer_new.h> namespace NKikimrConfig { - enum TTableServiceConfig_EIndexAutoChooseMode : int; enum TTableServiceConfig_EBlockChannelsMode : int; } @@ -169,7 +168,6 @@ struct TKikimrConfiguration : public TKikimrSettings, public NCommon::TSettingDi bool EnableKqpScanQueryStreamIdxLookupJoin = false; bool EnableKqpDataQueryStreamIdxLookupJoin = false; NSQLTranslation::EBindingsMode BindingsMode = NSQLTranslation::EBindingsMode::ENABLED; - NKikimrConfig::TTableServiceConfig_EIndexAutoChooseMode IndexAutoChooserMode; bool EnableAstCache = false; bool EnablePgConstsToParams = false; ui64 ExtractPredicateRangesLimit = 0; diff --git a/ydb/core/kqp/ut/opt/kqp_ne_ut.cpp b/ydb/core/kqp/ut/opt/kqp_ne_ut.cpp index 234e07ed879..ca5b02bf0b1 100644 --- a/ydb/core/kqp/ut/opt/kqp_ne_ut.cpp +++ b/ydb/core/kqp/ut/opt/kqp_ne_ut.cpp @@ -14,7 +14,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { Y_UNIT_TEST(StreamLookupWithView) { TKikimrSettings settings = TKikimrSettings().SetWithSampleTables(false); NKikimrConfig::TAppConfig appConfig; - appConfig.MutableTableServiceConfig()->SetIndexAutoChooseMode(NKikimrConfig::TTableServiceConfig_EIndexAutoChooseMode_MAX_USED_PREFIX); appConfig.MutableFeatureFlags()->SetEnableViews(true); settings.SetDomainRoot(KikimrDefaultUtDomainRoot); settings.SetAppConfig(appConfig); @@ -1369,7 +1368,7 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { if (UseSink) { 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).affected_shards(), 1); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).partitions_count(), 1); @@ -1792,12 +1791,12 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { if (UseSink) { 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/TwoShard"); UNIT_ASSERT_VALUES_EQUAL(stats.query_phases(0).table_access(0).updates().rows(), 2); UNIT_ASSERT(stats.query_phases(0).table_access(0).updates().bytes() > 0); - UNIT_ASSERT(stats.query_phases(0).duration_us() > 0); + UNIT_ASSERT(stats.query_phases(0).duration_us() > 0); } else { UNIT_ASSERT_VALUES_EQUAL(stats.query_phases().size(), 2); @@ -2380,7 +2379,7 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { // from master - should read CheckTableReads(session, tablePath, false, true); // from followers - should NOT read - CheckTableReads(session, tablePath, true, false); + CheckTableReads(session, tablePath, true, false); } }; @@ -4067,7 +4066,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { Y_UNIT_TEST(PrimaryView) { TKikimrSettings settings; NKikimrConfig::TAppConfig appConfig; - appConfig.MutableTableServiceConfig()->SetIndexAutoChooseMode(NKikimrConfig::TTableServiceConfig_EIndexAutoChooseMode_MAX_USED_PREFIX); settings.SetAppConfig(appConfig); TKikimrRunner kikimr(settings); @@ -4089,7 +4087,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { Y_UNIT_TEST(AutoChooseIndex) { TKikimrSettings settings; NKikimrConfig::TAppConfig appConfig; - appConfig.MutableTableServiceConfig()->SetIndexAutoChooseMode(NKikimrConfig::TTableServiceConfig_EIndexAutoChooseMode_ONLY_POINTS); settings.SetAppConfig(appConfig); TKikimrRunner kikimr(settings); @@ -4112,7 +4109,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { Y_UNIT_TEST(AutoChooseIndexOrderByLimit) { TKikimrSettings settings; NKikimrConfig::TAppConfig appConfig; - appConfig.MutableTableServiceConfig()->SetIndexAutoChooseMode(NKikimrConfig::TTableServiceConfig_EIndexAutoChooseMode_MAX_USED_PREFIX); settings.SetAppConfig(appConfig); TKikimrRunner kikimr(settings); @@ -4172,7 +4168,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { Y_UNIT_TEST(AutoChooseIndexOrderByLambda) { TKikimrSettings settings; NKikimrConfig::TAppConfig appConfig; - appConfig.MutableTableServiceConfig()->SetIndexAutoChooseMode(NKikimrConfig::TTableServiceConfig_EIndexAutoChooseMode_MAX_USED_PREFIX); settings.SetAppConfig(appConfig); TKikimrRunner kikimr(settings); @@ -4235,7 +4230,6 @@ Y_UNIT_TEST_SUITE(KqpNewEngine) { Y_UNIT_TEST(MultipleBroadcastJoin) { TKikimrSettings kisettings; NKikimrConfig::TAppConfig appConfig; - appConfig.MutableTableServiceConfig()->SetIndexAutoChooseMode(NKikimrConfig::TTableServiceConfig_EIndexAutoChooseMode_MAX_USED_PREFIX); kisettings.SetAppConfig(appConfig); TKikimrRunner kikimr(kisettings); diff --git a/ydb/core/kqp/ut/opt/kqp_sort_ut.cpp b/ydb/core/kqp/ut/opt/kqp_sort_ut.cpp index d2645e07234..1ac2f779881 100644 --- a/ydb/core/kqp/ut/opt/kqp_sort_ut.cpp +++ b/ydb/core/kqp/ut/opt/kqp_sort_ut.cpp @@ -932,7 +932,7 @@ Y_UNIT_TEST_SUITE(KqpSort) { DECLARE $value AS Int32; SELECT * - FROM `/Root/TwoShard` + FROM `/Root/TwoShard` VIEW PRIMARY KEY WHERE Value2 != $value LIMIT $limit; )"; diff --git a/ydb/core/kqp/ut/scheme/kqp_constraints_ut.cpp b/ydb/core/kqp/ut/scheme/kqp_constraints_ut.cpp index 53577c95bc8..ab2b84a15bc 100644 --- a/ydb/core/kqp/ut/scheme/kqp_constraints_ut.cpp +++ b/ydb/core/kqp/ut/scheme/kqp_constraints_ut.cpp @@ -781,7 +781,6 @@ Y_UNIT_TEST_SUITE(KqpConstraints) { Y_UNIT_TEST(IndexAutoChooseAndNonReadyIndex) { NKikimrConfig::TAppConfig appConfig; - appConfig.MutableTableServiceConfig()->SetIndexAutoChooseMode(NKikimrConfig::TTableServiceConfig_EIndexAutoChooseMode_MAX_USED_PREFIX); TKikimrRunner kikimr(TKikimrSettings().SetUseRealThreads(false).SetPQConfig(DefaultPQConfig()).SetAppConfig(appConfig)); auto db = kikimr.RunCall([&] { return kikimr.GetTableClient(); } ); auto session = kikimr.RunCall([&] { return db.CreateSession().GetValueSync().GetSession(); } ); diff --git a/ydb/core/protos/table_service_config.proto b/ydb/core/protos/table_service_config.proto index 5430b2ffa8f..807eabd9d08 100644 --- a/ydb/core/protos/table_service_config.proto +++ b/ydb/core/protos/table_service_config.proto @@ -278,13 +278,7 @@ message TTableServiceConfig { optional EChannelTransportVersion ChannelTransportVersion = 46 [default = CTV_OOB_PICKLE_1_0]; - enum EIndexAutoChooseMode { - DISABLED = 0; - ONLY_FULL_KEY = 1; // Accepts iff point prefix includes all key columns - ONLY_POINTS = 2; // Accepts iff point prefix len > 0 - MAX_USED_PREFIX = 3; - } - optional EIndexAutoChooseMode IndexAutoChooseMode = 50 [default = MAX_USED_PREFIX]; + reserved 50; // optional EIndexAutoChooseMode IndexAutoChooseMode = 50 [default = MAX_USED_PREFIX]; reserved 51; // optional bool EnableColumnsWithDefault = 51 [default = true]; diff --git a/ydb/tools/query_replay_yt/query_compiler.cpp b/ydb/tools/query_replay_yt/query_compiler.cpp index a72878f4d07..7c3bf814411 100644 --- a/ydb/tools/query_replay_yt/query_compiler.cpp +++ b/ydb/tools/query_replay_yt/query_compiler.cpp @@ -273,7 +273,6 @@ public: { Config->EnableAntlr4Parser = enableAntlr4Parser; Config->DefaultCostBasedOptimizationLevel = 2; - Config->IndexAutoChooserMode = NKikimrConfig::TTableServiceConfig_EIndexAutoChooseMode::TTableServiceConfig_EIndexAutoChooseMode_MAX_USED_PREFIX; } void Bootstrap() { |
