Skip to content

Commit df3f77e

Browse files
authored
Pushdown non-separable filters over Aggregate (#8468)
1 parent 154697e commit df3f77e

File tree

10 files changed

+424
-10
lines changed

10 files changed

+424
-10
lines changed

ydb/library/yql/core/common_opt/yql_co_finalizers.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,8 @@ IGraphTransformer::TStatus MultiUsageFlatMapOverJoin(const TExprNode::TPtr& node
5050
bool IsFilterMultiusageEnabled(const TOptimizeContext& optCtx) {
5151
YQL_ENSURE(optCtx.Types);
5252
static const TString multiUsageFlags = to_lower(TString("FilterPushdownEnableMultiusage"));
53-
return optCtx.Types->OptimizerFlags.contains(multiUsageFlags);
53+
static const TString noMultiUsageFlags = to_lower(TString("FilterPushdownDisableMultiusage"));
54+
return optCtx.Types->OptimizerFlags.contains(multiUsageFlags) && !optCtx.Types->OptimizerFlags.contains(noMultiUsageFlags);
5455
}
5556

5657
void FilterPushdownWithMultiusage(const TExprNode::TPtr& node, TNodeOnNodeOwnedMap& toOptimize, TExprContext& ctx, TOptimizeContext& optCtx) {

0 commit comments

Comments
 (0)