Skip to content

Commit

Permalink
remove PredicateExtract20 & OldJoinsBehavior options (#6502)
Browse files Browse the repository at this point in the history
  • Loading branch information
ssmike authored Jul 10, 2024
1 parent b1baa2e commit 87e2787
Show file tree
Hide file tree
Showing 24 changed files with 62 additions and 2,285 deletions.
2 changes: 0 additions & 2 deletions ydb/core/kqp/compile_service/kqp_compile_actor.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -597,7 +597,6 @@ void ApplyServiceConfig(TKikimrConfiguration& kqpConfig, const TTableServiceConf
kqpConfig.EnableSequences = serviceConfig.GetEnableSequences();
kqpConfig.EnableColumnsWithDefault = serviceConfig.GetEnableColumnsWithDefault();
kqpConfig.BindingsMode = RemapBindingsMode(serviceConfig.GetBindingsMode());
kqpConfig.PredicateExtract20 = serviceConfig.GetPredicateExtract20();
kqpConfig.IndexAutoChooserMode = serviceConfig.GetIndexAutoChooseMode();
kqpConfig.EnablePgConstsToParams = serviceConfig.GetEnablePgConstsToParams() && serviceConfig.GetEnableAstCache();
kqpConfig.ExtractPredicateRangesLimit = serviceConfig.GetExtractPredicateRangesLimit();
Expand All @@ -607,7 +606,6 @@ void ApplyServiceConfig(TKikimrConfiguration& kqpConfig, const TTableServiceConf
kqpConfig.EnableOltpSink = serviceConfig.GetEnableOltpSink();
kqpConfig.BlockChannelsMode = serviceConfig.GetBlockChannelsMode();
kqpConfig.IdxLookupJoinsPrefixPointLimit = serviceConfig.GetIdxLookupJoinPointsLimit();
kqpConfig.OldLookupJoinBehaviour = serviceConfig.GetOldLookupJoinBehaviour();
kqpConfig.EnableSpillingGenericQuery = serviceConfig.GetEnableQueryServiceSpilling();
kqpConfig.DefaultCostBasedOptimizationLevel = serviceConfig.GetDefaultCostBasedOptimizationLevel();

Expand Down
5 changes: 0 additions & 5 deletions ydb/core/kqp/compile_service/kqp_compile_service.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -509,15 +509,12 @@ class TKqpCompileService : public TActorBootstrapped<TKqpCompileService> {

bool enableKqpScanQuerySourceRead = TableServiceConfig.GetEnableKqpScanQuerySourceRead();

bool predicateExtract20 = TableServiceConfig.GetPredicateExtract20();

bool defaultSyntaxVersion = TableServiceConfig.GetSqlVersion();

auto indexAutoChooser = TableServiceConfig.GetIndexAutoChooseMode();

ui64 rangesLimit = TableServiceConfig.GetExtractPredicateRangesLimit();
ui64 idxLookupPointsLimit = TableServiceConfig.GetIdxLookupJoinPointsLimit();
bool oldLookupJoinBehaviour = TableServiceConfig.GetOldLookupJoinBehaviour();

bool enableSequences = TableServiceConfig.GetEnableSequences();
bool enableColumnsWithDefault = TableServiceConfig.GetEnableColumnsWithDefault();
Expand All @@ -543,15 +540,13 @@ class TKqpCompileService : public TActorBootstrapped<TKqpCompileService> {
TableServiceConfig.GetEnableKqpScanQueryStreamIdxLookupJoin() != enableKqpScanQueryStreamIdxLookupJoin ||
TableServiceConfig.GetEnableKqpDataQueryStreamIdxLookupJoin() != enableKqpDataQueryStreamIdxLookupJoin ||
TableServiceConfig.GetEnableKqpScanQuerySourceRead() != enableKqpScanQuerySourceRead ||
TableServiceConfig.GetPredicateExtract20() != predicateExtract20 ||
TableServiceConfig.GetIndexAutoChooseMode() != indexAutoChooser ||
TableServiceConfig.GetEnableSequences() != enableSequences ||
TableServiceConfig.GetEnableColumnsWithDefault() != enableColumnsWithDefault ||
TableServiceConfig.GetEnableOlapSink() != enableOlapSink ||
TableServiceConfig.GetEnableOltpSink() != enableOltpSink ||
TableServiceConfig.GetEnableCreateTableAs() != enableCreateTableAs ||
TableServiceConfig.GetBlockChannelsMode() != blockChannelsMode ||
TableServiceConfig.GetOldLookupJoinBehaviour() != oldLookupJoinBehaviour ||
TableServiceConfig.GetExtractPredicateRangesLimit() != rangesLimit ||
TableServiceConfig.GetResourceManager().GetMkqlHeavyProgramMemoryLimit() != mkqlHeavyLimit ||
TableServiceConfig.GetIdxLookupJoinPointsLimit() != idxLookupPointsLimit ||
Expand Down
7 changes: 0 additions & 7 deletions ydb/core/kqp/opt/kqp_opt_impl.h
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@

#include <ydb/library/yql/core/yql_expr_optimize.h>
#include <ydb/library/yql/dq/opt/dq_opt.h>
#include <ydb/library/yql/providers/common/provider/yql_table_lookup.h>

namespace NKikimr::NKqp::NOpt {

Expand Down Expand Up @@ -48,12 +47,6 @@ NYql::NNodes::TKqpTable BuildTableMeta(const NYql::TKikimrTableMetadata& tableMe
TIntrusivePtr<NYql::TKikimrTableMetadata> GetIndexMetadata(const NYql::NNodes::TKqlReadTableIndex& index,
const NYql::TKikimrTablesData& tables, TStringBuf cluster);

bool KqpTableLookupCanCompare(NYql::NNodes::TExprBase node);
NYql::NNodes::TMaybeNode<NYql::NNodes::TExprBase> KqpTableLookupGetValue(NYql::NNodes::TExprBase node,
const NYql::TTypeAnnotationNode* type, NYql::TExprContext& ctx);
NYql::NCommon::TTableLookup::TCompareResult KqpTableLookupCompare(NYql::NNodes::TExprBase left,
NYql::NNodes::TExprBase right);

TVector<std::pair<NYql::TExprNode::TPtr, const NYql::TIndexDescription*>> BuildSecondaryIndexVector(
const NYql::TKikimrTableDescription& table, NYql::TPositionHandle pos, NYql::TExprContext& ctx,
const THashSet<TStringBuf>* filter,
Expand Down
256 changes: 0 additions & 256 deletions ydb/core/kqp/opt/kqp_opt_range_legacy.cpp

This file was deleted.

23 changes: 0 additions & 23 deletions ydb/core/kqp/opt/logical/kqp_opt_log.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,6 @@ class TKqpLogicalOptTransformer : public TOptimizeTransformerBase {
, Config(config)
{
#define HNDL(name) "KqpLogical-"#name, Hndl(&TKqpLogicalOptTransformer::name)
AddHandler(0, &TCoFlatMapBase::Match, HNDL(PushPredicateToReadTable));
AddHandler(0, &TCoFlatMapBase::Match, HNDL(PushExtractedPredicateToReadTable));
AddHandler(0, &TCoAggregate::Match, HNDL(RewriteAggregate));
AddHandler(0, &TCoAggregateCombine::Match, HNDL(PushdownOlapGroupByKeys));
Expand Down Expand Up @@ -62,7 +61,6 @@ class TKqpLogicalOptTransformer : public TOptimizeTransformerBase {
AddHandler(0, &TCoNarrowMultiMap::Match, HNDL(DqReadWideWrapFieldSubset));
AddHandler(0, &TCoWideMap::Match, HNDL(DqReadWideWrapFieldSubset));

AddHandler(1, &TCoFlatMap::Match, HNDL(LatePushExtractedPredicateToReadTable));
AddHandler(1, &TCoTop::Match, HNDL(RewriteTopSortOverIndexRead));
AddHandler(1, &TCoTopSort::Match, HNDL(RewriteTopSortOverIndexRead));
AddHandler(1, &TCoTake::Match, HNDL(RewriteTakeOverIndexRead));
Expand All @@ -88,28 +86,7 @@ class TKqpLogicalOptTransformer : public TOptimizeTransformerBase {
}

protected:
TMaybeNode<TExprBase> PushPredicateToReadTable(TExprBase node, TExprContext& ctx) {
if (KqpCtx.Config->PredicateExtract20) {
return node;
}
TExprBase output = KqpPushPredicateToReadTable(node, ctx, KqpCtx);
DumpAppliedRule("PushPredicateToReadTable", node.Ptr(), output.Ptr(), ctx);
return output;
}

TMaybeNode<TExprBase> PushExtractedPredicateToReadTable(TExprBase node, TExprContext& ctx, const TGetParents& getParents) {
if (!KqpCtx.Config->PredicateExtract20) {
return node;
}
TExprBase output = KqpPushExtractedPredicateToReadTable(node, ctx, KqpCtx, TypesCtx, *getParents());
DumpAppliedRule("PushExtractedPredicateToReadTable", node.Ptr(), output.Ptr(), ctx);
return output;
}

TMaybeNode<TExprBase> LatePushExtractedPredicateToReadTable(TExprBase node, TExprContext& ctx, const TGetParents& getParents) {
if (KqpCtx.Config->PredicateExtract20) {
return node;
}
TExprBase output = KqpPushExtractedPredicateToReadTable(node, ctx, KqpCtx, TypesCtx, *getParents());
DumpAppliedRule("PushExtractedPredicateToReadTable", node.Ptr(), output.Ptr(), ctx);
return output;
Expand Down
1 change: 0 additions & 1 deletion ydb/core/kqp/opt/logical/kqp_opt_log_extract.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@

#include <ydb/library/yql/core/yql_opt_utils.h>
#include <ydb/library/yql/dq/opt/dq_opt_log.h>
#include <ydb/library/yql/providers/common/provider/yql_table_lookup.h>

namespace NKikimr::NKqp::NOpt {

Expand Down
7 changes: 0 additions & 7 deletions ydb/core/kqp/opt/logical/kqp_opt_log_join.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -569,10 +569,6 @@ TMaybeNode<TExprBase> KqpJoinToIndexLookupImpl(const TDqJoin& join, TExprContext
return {};
}

if ((!kqpCtx.Config->PredicateExtract20 || kqpCtx.Config->OldLookupJoinBehaviour) && prefixLookup->Filter.IsValid()) {
return {};
}

TMap<std::string_view, TString> rightJoinKeyToLeft;
TVector<TCoAtom> rightKeyColumns;
rightKeyColumns.reserve(join.JoinKeys().Size());
Expand Down Expand Up @@ -632,9 +628,6 @@ TMaybeNode<TExprBase> KqpJoinToIndexLookupImpl(const TDqJoin& join, TExprContext
.Build()
.Done());
deduplicateLeftColumns.insert(*leftColumn);
if ((!kqpCtx.Config->PredicateExtract20 || kqpCtx.Config->OldLookupJoinBehaviour)) {
return {};
}
}

member = Build<TCoNth>(ctx, prefixRowArg.Pos())
Expand Down
Loading

0 comments on commit 87e2787

Please sign in to comment.