diff options
author | Vitalii Gridnev <gridnevvvit@gmail.com> | 2025-04-21 12:28:59 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-04-21 12:28:59 +0300 |
commit | 9d849d23029cca45ca0852ca47dc11a72a62e92b (patch) | |
tree | d39a319310324d19c7aa3695169aabbd0926277e | |
parent | c6a5181cc24637afa8affa3d4107a85aef0ec077 (diff) | |
download | ydb-9d849d23029cca45ca0852ca47dc11a72a62e92b.tar.gz |
remove stream lookup feature flag usage (#17369)
-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 | 2 | ||||
-rw-r--r-- | ydb/core/kqp/executer_actor/kqp_data_executer.cpp | 3 | ||||
-rw-r--r-- | ydb/core/kqp/opt/logical/kqp_opt_log_indexes.cpp | 50 | ||||
-rw-r--r-- | ydb/core/kqp/opt/logical/kqp_opt_log_join.cpp | 59 | ||||
-rw-r--r-- | ydb/core/kqp/opt/logical/kqp_opt_log_ranges.cpp | 6 | ||||
-rw-r--r-- | ydb/core/kqp/opt/physical/kqp_opt_phy.cpp | 4 | ||||
-rw-r--r-- | ydb/core/kqp/opt/physical/kqp_opt_phy_build_stage.cpp | 10 | ||||
-rw-r--r-- | ydb/core/kqp/provider/yql_kikimr_settings.h | 1 | ||||
-rw-r--r-- | ydb/core/protos/table_service_config.proto | 4 | ||||
-rw-r--r-- | ydb/tools/query_replay_yt/query_compiler.cpp | 1 |
11 files changed, 48 insertions, 93 deletions
diff --git a/ydb/core/kqp/compile_service/kqp_compile_actor.cpp b/ydb/core/kqp/compile_service/kqp_compile_actor.cpp index cfbe2748c41..9d6f79f1550 100644 --- a/ydb/core/kqp/compile_service/kqp_compile_actor.cpp +++ b/ydb/core/kqp/compile_service/kqp_compile_actor.cpp @@ -631,7 +631,6 @@ void ApplyServiceConfig(TKikimrConfiguration& kqpConfig, const TTableServiceConf } kqpConfig.EnableKqpScanQuerySourceRead = serviceConfig.GetEnableKqpScanQuerySourceRead(); - kqpConfig.EnableKqpDataQueryStreamLookup = serviceConfig.GetEnableKqpDataQueryStreamLookup(); kqpConfig.EnableKqpScanQueryStreamIdxLookupJoin = serviceConfig.GetEnableKqpScanQueryStreamIdxLookupJoin(); kqpConfig.EnableKqpDataQueryStreamIdxLookupJoin = serviceConfig.GetEnableKqpDataQueryStreamIdxLookupJoin(); kqpConfig.BindingsMode = RemapBindingsMode(serviceConfig.GetBindingsMode()); diff --git a/ydb/core/kqp/compile_service/kqp_compile_service.cpp b/ydb/core/kqp/compile_service/kqp_compile_service.cpp index d329eddf89a..5dd8fe3c1db 100644 --- a/ydb/core/kqp/compile_service/kqp_compile_service.cpp +++ b/ydb/core/kqp/compile_service/kqp_compile_service.cpp @@ -280,7 +280,6 @@ private: auto &event = ev->Get()->Record; bool allowMultiBroadcasts = TableServiceConfig.GetAllowMultiBroadcasts(); - bool enableKqpDataQueryStreamLookup = TableServiceConfig.GetEnableKqpDataQueryStreamLookup(); bool enableKqpDataQueryStreamIdxLookupJoin = TableServiceConfig.GetEnableKqpDataQueryStreamIdxLookupJoin(); bool enableKqpScanQueryStreamIdxLookupJoin = TableServiceConfig.GetEnableKqpScanQueryStreamIdxLookupJoin(); @@ -325,7 +324,6 @@ private: Send(ev->Sender, responseEv.Release(), IEventHandle::FlagTrackDelivery, ev->Cookie); if (TableServiceConfig.GetSqlVersion() != defaultSyntaxVersion || - TableServiceConfig.GetEnableKqpDataQueryStreamLookup() != enableKqpDataQueryStreamLookup || TableServiceConfig.GetEnableKqpScanQueryStreamIdxLookupJoin() != enableKqpScanQueryStreamIdxLookupJoin || TableServiceConfig.GetEnableKqpDataQueryStreamIdxLookupJoin() != enableKqpDataQueryStreamIdxLookupJoin || TableServiceConfig.GetEnableKqpScanQuerySourceRead() != enableKqpScanQuerySourceRead || diff --git a/ydb/core/kqp/executer_actor/kqp_data_executer.cpp b/ydb/core/kqp/executer_actor/kqp_data_executer.cpp index 3279c4015dd..81317a6f053 100644 --- a/ydb/core/kqp/executer_actor/kqp_data_executer.cpp +++ b/ydb/core/kqp/executer_actor/kqp_data_executer.cpp @@ -123,9 +123,6 @@ public: || Request.IsolationLevel == NKikimrKqp::ISOLATION_LEVEL_SNAPSHOT_RW); } - YQL_ENSURE(Request.IsolationLevel != NKikimrKqp::ISOLATION_LEVEL_SNAPSHOT_RW - || tableServiceConfig.GetEnableKqpDataQueryStreamLookup()); - ReadOnlyTx = IsReadOnlyTx(); } diff --git a/ydb/core/kqp/opt/logical/kqp_opt_log_indexes.cpp b/ydb/core/kqp/opt/logical/kqp_opt_log_indexes.cpp index ca7721a0858..325bb689b74 100644 --- a/ydb/core/kqp/opt/logical/kqp_opt_log_indexes.cpp +++ b/ydb/core/kqp/opt/logical/kqp_opt_log_indexes.cpp @@ -416,7 +416,7 @@ auto NewLambdaFrom(TExprContext& ctx, TPositionHandle pos, TNodeOnNodeOwnedMap& } auto LevelLambdaFrom( - const TIndexDescription& indexDesc, TExprContext& ctx, TPositionHandle pos, TNodeOnNodeOwnedMap& replaces, + const TIndexDescription& indexDesc, TExprContext& ctx, TPositionHandle pos, TNodeOnNodeOwnedMap& replaces, const TExprNode& fromArgs, const TExprBase& fromBody) { auto newLambda = NewLambdaFrom(ctx, pos, replaces, fromArgs, fromBody); @@ -478,13 +478,13 @@ void RemapIdToParent(TExprContext& ctx, TPositionHandle pos, TExprNodePtr& read) .Args({mapArg}) .template Body<TCoAsStruct>().Add(mapMembers).Build() .Build() - .Done().Ptr(); + .Done().Ptr(); } void VectorReadLevel( - const TIndexDescription& indexDesc, TExprContext& ctx, TPositionHandle pos, const TKqpOptimizeContext& kqpCtx, + const TIndexDescription& indexDesc, TExprContext& ctx, TPositionHandle pos, const TKqpOptimizeContext& kqpCtx, const TExprNodePtr& lambda, const TCoTopBase& top, - const TKqpTable& levelTable, const TCoAtomList& levelColumns, + const TKqpTable& levelTable, const TCoAtomList& levelColumns, TExprNodePtr& read) { const auto& settings = std::get<NKikimrKqp::TVectorIndexKmeansTreeDescription>(indexDesc.SpecializedIndexDescription) @@ -736,54 +736,32 @@ TExprBase KqpRewriteLookupIndex(const TExprBase& node, TExprContext& ctx, const const bool needDataRead = CheckIndexCovering(lookupIndex, implTable); if (!needDataRead) { - if (kqpCtx.Config->EnableKqpDataQueryStreamLookup) { - TKqpStreamLookupSettings settings; - settings.Strategy = EStreamLookupStrategyType::LookupRows; - return Build<TKqlStreamLookupTable>(ctx, node.Pos()) - .Table(BuildTableMeta(*implTable, node.Pos(), ctx)) - .LookupKeys(lookupIndex.LookupKeys()) - .Columns(lookupIndex.Columns()) - .Settings(settings.BuildNode(ctx, node.Pos())) - .Done(); - } - - return Build<TKqlLookupTable>(ctx, node.Pos()) - .Table(BuildTableMeta(*implTable, node.Pos(), ctx)) - .LookupKeys(lookupIndex.LookupKeys()) - .Columns(lookupIndex.Columns()) - .Done(); - } - - auto keyColumnsList = BuildKeyColumnsList(tableDesc, node.Pos(), ctx); - - if (kqpCtx.Config->EnableKqpDataQueryStreamLookup) { TKqpStreamLookupSettings settings; settings.Strategy = EStreamLookupStrategyType::LookupRows; - TExprBase lookupIndexTable = Build<TKqlStreamLookupTable>(ctx, node.Pos()) + return Build<TKqlStreamLookupTable>(ctx, node.Pos()) .Table(BuildTableMeta(*implTable, node.Pos(), ctx)) .LookupKeys(lookupIndex.LookupKeys()) - .Columns(keyColumnsList) - .Settings(settings.BuildNode(ctx, node.Pos())) - .Done(); - - return Build<TKqlStreamLookupTable>(ctx, node.Pos()) - .Table(lookupIndex.Table()) - .LookupKeys(lookupIndexTable.Ptr()) .Columns(lookupIndex.Columns()) .Settings(settings.BuildNode(ctx, node.Pos())) .Done(); } - TExprBase lookupIndexTable = Build<TKqlLookupTable>(ctx, node.Pos()) + auto keyColumnsList = BuildKeyColumnsList(tableDesc, node.Pos(), ctx); + + TKqpStreamLookupSettings settings; + settings.Strategy = EStreamLookupStrategyType::LookupRows; + TExprBase lookupIndexTable = Build<TKqlStreamLookupTable>(ctx, node.Pos()) .Table(BuildTableMeta(*implTable, node.Pos(), ctx)) .LookupKeys(lookupIndex.LookupKeys()) .Columns(keyColumnsList) + .Settings(settings.BuildNode(ctx, node.Pos())) .Done(); - return Build<TKqlLookupTable>(ctx, node.Pos()) + return Build<TKqlStreamLookupTable>(ctx, node.Pos()) .Table(lookupIndex.Table()) .LookupKeys(lookupIndexTable.Ptr()) .Columns(lookupIndex.Columns()) + .Settings(settings.BuildNode(ctx, node.Pos())) .Done(); } @@ -1037,7 +1015,7 @@ TExprBase KqpRewriteTopSortOverIndexRead(const TExprBase& node, TExprContext& ct auto [implTable, indexDesc] = tableDesc.Metadata->GetIndex(indexName); if (indexDesc->Type == TIndexDescription::EType::GlobalSyncVectorKMeansTree) { auto reject = [&] (std::string_view because) { - auto message = TStringBuilder{} << "Given predicate is not suitable for used index: " + auto message = TStringBuilder{} << "Given predicate is not suitable for used index: " << indexName << ", because " << because << ", node dump:\n" << node.Ref().Dump(); TIssue issue{ctx.GetPosition(readTableIndex.Pos()), message}; SetIssueCode(EYqlIssueCode::TIssuesIds_EIssueCode_KIKIMR_WRONG_INDEX_USAGE, issue); diff --git a/ydb/core/kqp/opt/logical/kqp_opt_log_join.cpp b/ydb/core/kqp/opt/logical/kqp_opt_log_join.cpp index 86acba038fc..6c4fb205a54 100644 --- a/ydb/core/kqp/opt/logical/kqp_opt_log_join.cpp +++ b/ydb/core/kqp/opt/logical/kqp_opt_log_join.cpp @@ -239,23 +239,9 @@ TExprBase BuildLookupTable(TExprContext& ctx, const TPositionHandle pos, .Done(); } - if (kqpCtx.Config->EnableKqpDataQueryStreamLookup) { - TKqpStreamLookupSettings settings; - settings.Strategy = EStreamLookupStrategyType::LookupRows; - return Build<TKqlStreamLookupTable>(ctx, pos) - .Table(table) - .LookupKeys<TCoSkipNullMembers>() - .Input(keysToLookup) - .Members() - .Add(skipNullColumns) - .Build() - .Build() - .Columns(columns) - .Settings(settings.BuildNode(ctx, pos)) - .Done(); - } - - return Build<TKqlLookupTable>(ctx, pos) + TKqpStreamLookupSettings settings; + settings.Strategy = EStreamLookupStrategyType::LookupRows; + return Build<TKqlStreamLookupTable>(ctx, pos) .Table(table) .LookupKeys<TCoSkipNullMembers>() .Input(keysToLookup) @@ -264,6 +250,7 @@ TExprBase BuildLookupTable(TExprContext& ctx, const TPositionHandle pos, .Build() .Build() .Columns(columns) + .Settings(settings.BuildNode(ctx, pos)) .Done(); } @@ -446,9 +433,9 @@ TMaybeNode<TExprBase> BuildKqpStreamIndexLookupJoin( .Index().Value("1").Build() .Build() .Lambda(ctx.DeepCopyLambda(extraRightFilter.Cast().Ref())) - .Build() - .Build() - .Build() + .Build() + .Build() + .Build() .Done(); } @@ -468,11 +455,11 @@ TMaybeNode<TExprBase> BuildKqpStreamIndexLookupJoin( .Index().Value("1").Build() .Build() .Members(rightReadMatch.ExtractMembers.Cast().Members()) - .Build() + .Build() .Build() .Build() .Done(); - } + } if (rightReadMatch.FilterNullMembers) { lookupJoin = Build<TCoMap>(ctx, join.Pos()) @@ -490,12 +477,12 @@ TMaybeNode<TExprBase> BuildKqpStreamIndexLookupJoin( .Index().Value("1").Build() .Build() .Members(rightReadMatch.FilterNullMembers.Cast().Members()) - .Build() + .Build() .Build() .Build() .Done(); } - + if (rightReadMatch.SkipNullMembers) { lookupJoin = Build<TCoMap>(ctx, join.Pos()) .Input(lookupJoin.Cast()) @@ -512,7 +499,7 @@ TMaybeNode<TExprBase> BuildKqpStreamIndexLookupJoin( .Index().Value("1").Build() .Build() .Members(rightReadMatch.SkipNullMembers.Cast().Members()) - .Build() + .Build() .Build() .Build() .Done(); @@ -534,9 +521,9 @@ TMaybeNode<TExprBase> BuildKqpStreamIndexLookupJoin( .Index().Value("1").Build() .Build() .Lambda(rightReadMatch.FlatMap.Cast().Lambda()) - .Build() - .Build() - .Build() + .Build() + .Build() + .Build() .Done(); } @@ -860,8 +847,8 @@ TMaybeNode<TExprBase> KqpJoinToIndexLookupImpl(const TDqJoin& join, TExprContext .Predicate(joinKeyPredicate.Cast()) .Value<TCoAsStruct>() .Add(lookupMembers) - .Build() - .Build() + .Build() + .Build() .Add(leftRowArg) .Done(); @@ -907,7 +894,7 @@ TMaybeNode<TExprBase> KqpJoinToIndexLookupImpl(const TDqJoin& join, TExprContext .Lambda(ctx.DeepCopyLambda(prefixLookup->Filter.Cast().Ref())) .Done(); } - + if (prefixLookup->LookupColumns.Raw() != prefixLookup->ResultColumns.Raw()) { lookup = Build<TCoExtractMembers>(ctx, join.Pos()) .Input(lookup) @@ -967,7 +954,7 @@ TMaybeNode<TExprBase> KqpJoinToIndexLookupImpl(const TDqJoin& join, TExprContext TVector<TString> CollectLabels(const TExprBase& node) { TVector<TString> rels; - + if (node.Maybe<TDqPrecompute>()) { auto precompute = node.Cast<TDqPrecompute>(); return CollectLabels(precompute.Input()); @@ -978,14 +965,14 @@ TVector<TString> CollectLabels(const TExprBase& node) { if (join.LeftLabel().Maybe<TCoAtom>()) { rels.push_back(join.LeftLabel().Cast<TCoAtom>().StringValue()); - } else { + } else { auto lhs = CollectLabels(join.LeftInput()); rels.insert(rels.end(), std::make_move_iterator(lhs.begin()), std::make_move_iterator(lhs.end())); } if (join.RightLabel().Maybe<TCoAtom>()) { rels.push_back(join.RightLabel().Cast<TCoAtom>().StringValue()); - } else { + } else { auto rhs = CollectLabels(join.RightInput()); rels.insert(rels.end(), std::make_move_iterator(rhs.begin()), std::make_move_iterator(rhs.end())); } @@ -1017,14 +1004,14 @@ TExprBase KqpJoinToIndexLookup(const TExprBase& node, TExprContext& ctx, const T return node; } - /* + /* * this cycle looks for applied hints for these join labels. if we've found one then we will leave the function. * But if it is a LookupJoin we will rewrite it with KqpJoinToIndexLookupImpl because lookup join needs to be rewritten */ auto joinLabels = CollectLabels(node); for (const auto& hint: hints.JoinAlgoHints->Hints) { if ( - std::unordered_set<TString>(hint.JoinLabels.begin(), hint.JoinLabels.end()) == + std::unordered_set<TString>(hint.JoinLabels.begin(), hint.JoinLabels.end()) == std::unordered_set<TString>(joinLabels.begin(), joinLabels.end()) && hint.Applied ) { if (hint.Algo == EJoinAlgoType::LookupJoin || hint.Algo == EJoinAlgoType::LookupJoinReverse) { diff --git a/ydb/core/kqp/opt/logical/kqp_opt_log_ranges.cpp b/ydb/core/kqp/opt/logical/kqp_opt_log_ranges.cpp index 069bacafc65..cbc9b487973 100644 --- a/ydb/core/kqp/opt/logical/kqp_opt_log_ranges.cpp +++ b/ydb/core/kqp/opt/logical/kqp_opt_log_ranges.cpp @@ -44,7 +44,7 @@ TMaybeNode<TExprBase> KqpRewriteLiteralLookup(const TExprBase& node, TExprContex auto flatMapRangeInput = lookupKeysFlatMap.Cast().Input().Maybe<TCoRangeFinalize>(); // This rule should depend on feature flag for safety - if (!flatMapRangeInput || !kqpCtx.Config->EnableKqpDataQueryStreamLookup) { + if (!flatMapRangeInput) { return {}; } @@ -151,10 +151,6 @@ TExprBase KqpRewriteLookupTable(const TExprBase& node, TExprContext& ctx, const const TKqlLookupTable& lookup = node.Cast<TKqlLookupTable>(); - if (!kqpCtx.Config->EnableKqpDataQueryStreamLookup) { - return node; - } - TKqpStreamLookupSettings settings; settings.Strategy = EStreamLookupStrategyType::LookupRows; return Build<TKqlStreamLookupTable>(ctx, lookup.Pos()) diff --git a/ydb/core/kqp/opt/physical/kqp_opt_phy.cpp b/ydb/core/kqp/opt/physical/kqp_opt_phy.cpp index 11b18301990..1bee3d9f9c2 100644 --- a/ydb/core/kqp/opt/physical/kqp_opt_phy.cpp +++ b/ydb/core/kqp/opt/physical/kqp_opt_phy.cpp @@ -127,7 +127,7 @@ public: AddHandler(1, &TKqpWriteConstraint::Match, HNDL(BuildWriteConstraint<true>)); AddHandler(1, &TKqpReadOlapTableRanges::Match, HNDL(AddColumnForEmptyColumnsOlapRead)); - + AddHandler(2, &TDqStage::Match, HNDL(RewriteKqpReadTable)); AddHandler(2, &TDqStage::Match, HNDL(RewriteKqpLookupTable)); AddHandler(2, &TKqlUpsertRows::Match, HNDL(RewriteReturningUpsert)); @@ -451,7 +451,7 @@ protected: { // TODO: Allow push to left stage for data queries. // It is now possible as we don't use datashard transactions for reads in data queries. - bool pushLeftStage = (KqpCtx.IsScanQuery() || KqpCtx.Config->EnableKqpDataQueryStreamLookup) && AllowFuseJoinInputs(node); + bool pushLeftStage = AllowFuseJoinInputs(node); bool shuffleEliminationWithMap = KqpCtx.Config->OptShuffleEliminationWithMap.Get().GetOrElse(true); bool rightCollectStage = !KqpCtx.Config->AllowMultiBroadcasts; TExprBase output = DqBuildJoin(node, ctx, optCtx, *getParents(), IsGlobal, diff --git a/ydb/core/kqp/opt/physical/kqp_opt_phy_build_stage.cpp b/ydb/core/kqp/opt/physical/kqp_opt_phy_build_stage.cpp index 9d7668e3d31..64808e329e2 100644 --- a/ydb/core/kqp/opt/physical/kqp_opt_phy_build_stage.cpp +++ b/ydb/core/kqp/opt/physical/kqp_opt_phy_build_stage.cpp @@ -581,7 +581,9 @@ NYql::NNodes::TExprBase KqpBuildSequencerStages(NYql::NNodes::TExprBase node, NY NYql::NNodes::TExprBase KqpRewriteLookupTablePhy(NYql::NNodes::TExprBase node, NYql::TExprContext& ctx, const TKqpOptimizeContext& kqpCtx) { - if (!node.Maybe<TDqStage>() || !kqpCtx.Config->EnableKqpDataQueryStreamLookup) { + Y_UNUSED(kqpCtx); + + if (!node.Maybe<TDqStage>()) { return node; } @@ -608,7 +610,7 @@ NYql::NNodes::TExprBase KqpRewriteLookupTablePhy(NYql::NNodes::TExprBase node, N << KqpExprToPrettyString(lookupKeys, ctx)); TKqpStreamLookupSettings settings; - settings.Strategy = EStreamLookupStrategyType::LookupRows; + settings.Strategy = EStreamLookupStrategyType::LookupRows; TNodeOnNodeOwnedMap replaceMap; TVector<TExprBase> newInputs; TVector<TCoArgument> newArgs; @@ -768,12 +770,12 @@ NYql::NNodes::TExprBase KqpBuildStreamLookupTableStages(NYql::NNodes::TExprBase } NYql::NNodes::TExprBase KqpBuildStreamIdxLookupJoinStagesKeepSorted(NYql::NNodes::TExprBase node, NYql::TExprContext& ctx, - TTypeAnnotationContext& typeCtx, bool ruleEnabled) + TTypeAnnotationContext& typeCtx, bool ruleEnabled) { if (!ruleEnabled) { return node; } - + if (!node.Maybe<TKqlIndexLookupJoin>()) { return node; } diff --git a/ydb/core/kqp/provider/yql_kikimr_settings.h b/ydb/core/kqp/provider/yql_kikimr_settings.h index 86d7e117c3b..4e3483282f7 100644 --- a/ydb/core/kqp/provider/yql_kikimr_settings.h +++ b/ydb/core/kqp/provider/yql_kikimr_settings.h @@ -158,7 +158,6 @@ struct TKikimrConfiguration : public TKikimrSettings, public NCommon::TSettingDi NKikimrConfig::TFeatureFlags FeatureFlags; bool EnableKqpScanQuerySourceRead = false; - bool EnableKqpDataQueryStreamLookup = false; bool EnableKqpScanQueryStreamIdxLookupJoin = false; bool EnableKqpDataQueryStreamIdxLookupJoin = false; NSQLTranslation::EBindingsMode BindingsMode = NSQLTranslation::EBindingsMode::ENABLED; diff --git a/ydb/core/protos/table_service_config.proto b/ydb/core/protos/table_service_config.proto index 209437b1b36..6d1582e5d64 100644 --- a/ydb/core/protos/table_service_config.proto +++ b/ydb/core/protos/table_service_config.proto @@ -241,8 +241,8 @@ message TTableServiceConfig { reserved 27; // EnableKqpDataQuerySourceRead optional uint64 SessionIdleDurationSeconds = 28 [default = 600]; optional TAggregationConfig AggregationConfig = 29; - optional bool EnableKqpScanQueryStreamLookup = 30 [default = true]; - optional bool EnableKqpDataQueryStreamLookup = 31 [default = true]; + reserved 30; // optional bool EnableKqpScanQueryStreamLookup = 30 [default = true]; + reserved 31; // optional bool EnableKqpDataQueryStreamLookup = 31 [default = true]; optional TExecuterRetriesConfig ExecuterRetriesConfig = 32; reserved 33; // optional bool EnableKqpDataQueryStreamPointLookup = 33 [default = false]; optional bool EnablePublishKqpProxyByRM = 34 [default = true]; diff --git a/ydb/tools/query_replay_yt/query_compiler.cpp b/ydb/tools/query_replay_yt/query_compiler.cpp index c5ffb4cbb0c..08d2d6492b9 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->EnableKqpDataQueryStreamLookup = true; Config->IndexAutoChooserMode = NKikimrConfig::TTableServiceConfig_EIndexAutoChooseMode::TTableServiceConfig_EIndexAutoChooseMode_MAX_USED_PREFIX; } |