Rule.Result |
PushPartialAggregationThroughJoin.apply(AggregationNode aggregationNode,
Captures captures,
Rule.Context context) |
Rule.Result |
RewriteSpatialPartitioningAggregation.apply(AggregationNode node,
Captures captures,
Rule.Context context) |
Rule.Result |
PruneAggregationSourceColumns.apply(AggregationNode aggregationNode,
Captures captures,
Rule.Context context) |
Rule.Result |
ImplementFilteredAggregations.apply(AggregationNode aggregation,
Captures captures,
Rule.Context context) |
Rule.Result |
AddIntermediateAggregations.apply(AggregationNode aggregation,
Captures captures,
Rule.Context context) |
Rule.Result |
PushPartialAggregationThroughExchange.apply(AggregationNode aggregationNode,
Captures captures,
Rule.Context context) |
Rule.Result |
MultipleDistinctAggregationToMarkDistinct.apply(AggregationNode parent,
Captures captures,
Rule.Context context) |
Rule.Result |
PruneOrderByInAggregation.apply(AggregationNode node,
Captures captures,
Rule.Context context) |
Rule.Result |
PruneCountAggregationOverScalar.apply(AggregationNode parent,
Captures captures,
Rule.Context context) |
Rule.Result |
PushAggregationThroughOuterJoin.apply(AggregationNode aggregation,
Captures captures,
Rule.Context context) |
Rule.Result |
SingleDistinctAggregationToGroupBy.apply(AggregationNode aggregation,
Captures captures,
Rule.Context context) |
Rule.Result |
SimplifyCountOverConstant.apply(AggregationNode parent,
Captures captures,
Rule.Context context) |
Rule.Result |
RemoveUnreferencedScalarApplyNodes.apply(ApplyNode applyNode,
Captures captures,
Rule.Context context) |
Rule.Result |
TransformCorrelatedInPredicateToJoin.apply(ApplyNode apply,
Captures captures,
Rule.Context context) |
Rule.Result |
TransformUncorrelatedInPredicateSubqueryToSemiJoin.apply(ApplyNode applyNode,
Captures captures,
Rule.Context context) |
Rule.Result |
TransformExistsApplyToLateralNode.apply(ApplyNode parent,
Captures captures,
Rule.Context context) |
Rule.Result |
RemoveRedundantDistinctLimit.apply(DistinctLimitNode node,
Captures captures,
Rule.Context context) |
Rule.Result |
PushRemoteExchangeThroughAssignUniqueId.apply(ExchangeNode node,
Captures captures,
Rule.Context context) |
Rule.Result |
RemoveTrivialFilters.apply(FilterNode filterNode,
Captures captures,
Rule.Context context) |
Rule.Result |
MergeFilters.apply(FilterNode parent,
Captures captures,
Rule.Context context) |
Rule.Result |
PushPredicateIntoTableScan.apply(FilterNode filterNode,
Captures captures,
Rule.Context context) |
Rule.Result |
ExtractSpatialJoins.ExtractSpatialInnerJoin.apply(FilterNode node,
Captures captures,
Rule.Context context) |
Rule.Result |
PruneJoinChildrenColumns.apply(JoinNode joinNode,
Captures captures,
Rule.Context context) |
Rule.Result |
ReorderJoins.apply(JoinNode joinNode,
Captures captures,
Rule.Context context) |
Rule.Result |
DetermineJoinDistributionType.apply(JoinNode joinNode,
Captures captures,
Rule.Context context) |
Rule.Result |
EliminateCrossJoins.apply(JoinNode node,
Captures captures,
Rule.Context context) |
Rule.Result |
ExtractSpatialJoins.ExtractSpatialLeftJoin.apply(JoinNode joinNode,
Captures captures,
Rule.Context context) |
Rule.Result |
TransformCorrelatedScalarAggregationToJoin.apply(LateralJoinNode lateralJoinNode,
Captures captures,
Rule.Context context) |
Rule.Result |
TransformCorrelatedLateralJoinToJoin.apply(LateralJoinNode lateralJoinNode,
Captures captures,
Rule.Context context) |
Rule.Result |
TransformCorrelatedScalarSubquery.apply(LateralJoinNode lateralJoinNode,
Captures captures,
Rule.Context context) |
Rule.Result |
TransformCorrelatedSingleRowSubqueryToProject.apply(LateralJoinNode parent,
Captures captures,
Rule.Context context) |
Rule.Result |
TransformUncorrelatedLateralToJoin.apply(LateralJoinNode lateralJoinNode,
Captures captures,
Rule.Context context) |
Rule.Result |
RemoveUnreferencedScalarLateralNodes.apply(LateralJoinNode lateralJoinNode,
Captures captures,
Rule.Context context) |
Rule.Result |
PushLimitThroughUnion.apply(LimitNode parent,
Captures captures,
Rule.Context context) |
Rule.Result |
MergeLimitWithDistinct.apply(LimitNode parent,
Captures captures,
Rule.Context context) |
Rule.Result |
MergeLimits.apply(LimitNode parent,
Captures captures,
Rule.Context context) |
Rule.Result |
PushLimitThroughMarkDistinct.apply(LimitNode parent,
Captures captures,
Rule.Context context) |
Rule.Result |
PushLimitThroughSemiJoin.apply(LimitNode parent,
Captures captures,
Rule.Context context) |
Rule.Result |
PushLimitThroughProject.apply(LimitNode parent,
Captures captures,
Rule.Context context) |
Rule.Result |
PushLimitThroughOuterJoin.apply(LimitNode parent,
Captures captures,
Rule.Context context) |
Rule.Result |
PushLimitIntoTableScan.apply(LimitNode limit,
Captures captures,
Rule.Context context) |
Rule.Result |
PushLimitThroughOffset.apply(LimitNode parent,
Captures captures,
Rule.Context context) |
Rule.Result |
MergeLimitWithSort.apply(LimitNode parent,
Captures captures,
Rule.Context context) |
Rule.Result |
MergeLimitOverProjectWithSort.apply(LimitNode parent,
Captures captures,
Rule.Context context) |
Rule.Result |
RemoveRedundantLimit.apply(LimitNode limit,
Captures captures,
Rule.Context context) |
Rule.Result |
MergeLimitWithTopN.apply(LimitNode parent,
Captures captures,
Rule.Context context) |
Rule.Result |
PushOffsetThroughProject.apply(OffsetNode parent,
Captures captures,
Rule.Context context) |
Rule.Result |
ImplementOffset.apply(OffsetNode parent,
Captures captures,
Rule.Context context) |
Rule.Result |
PruneOutputColumns.apply(OutputNode outputNode,
Captures captures,
Rule.Context context) |
Rule.Result |
RemoveRedundantIdentityProjections.apply(ProjectNode project,
Captures captures,
Rule.Context context) |
Rule.Result |
PushProjectionThroughUnion.apply(ProjectNode parent,
Captures captures,
Rule.Context context) |
Rule.Result |
InlineProjections.apply(ProjectNode parent,
Captures captures,
Rule.Context context) |
Rule.Result |
PushProjectionThroughExchange.apply(ProjectNode project,
Captures captures,
Rule.Context context) |
Rule.Result |
ProjectOffPushDownRule.apply(ProjectNode parent,
Captures captures,
Rule.Context context) |
Rule.Result |
ImplementBernoulliSampleAsFilter.apply(SampleNode sample,
Captures captures,
Rule.Context context) |
Rule.Result |
EvaluateZeroSample.apply(SampleNode sample,
Captures captures,
Rule.Context context) |
Rule.Result |
PushSampleIntoTableScan.apply(SampleNode sample,
Captures captures,
Rule.Context context) |
Rule.Result |
RemoveFullSample.apply(SampleNode sample,
Captures captures,
Rule.Context context) |
Rule.Result |
RemoveAggregationInSemiJoin.apply(SemiJoinNode semiJoinNode,
Captures captures,
Rule.Context context) |
Rule.Result |
PruneSemiJoinFilteringSourceColumns.apply(SemiJoinNode semiJoinNode,
Captures captures,
Rule.Context context) |
Rule.Result |
DetermineSemiJoinDistributionType.apply(SemiJoinNode semiJoinNode,
Captures captures,
Rule.Context context) |
Rule.Result |
RemoveRedundantSort.apply(SortNode node,
Captures captures,
Rule.Context context) |
Rule.Result |
RemoveEmptyDelete.apply(TableFinishNode node,
Captures captures,
Rule.Context context) |
Rule.Result |
PushTableWriteThroughUnion.apply(TableWriterNode writerNode,
Captures captures,
Rule.Context context) |
Rule.Result |
RemoveRedundantTopN.apply(TopNNode node,
Captures captures,
Rule.Context context) |
Rule.Result |
PushTopNThroughOuterJoin.apply(TopNNode parent,
Captures captures,
Rule.Context context) |
Rule.Result |
PushTopNThroughUnion.apply(TopNNode topNNode,
Captures captures,
Rule.Context context) |
Rule.Result |
PushTopNThroughProject.apply(TopNNode parent,
Captures captures,
Rule.Context context) |
Rule.Result |
CreatePartialTopN.apply(TopNNode single,
Captures captures,
Rule.Context context) |
static boolean |
DetermineJoinDistributionType.canReplicate(JoinNode joinNode,
Rule.Context context) |
protected Optional<PlanNode> |
GatherAndMergeWindows.MergeAdjacentWindowsOverProjects.manipulateAdjacentWindowNodes(WindowNode parent,
WindowNode child,
Rule.Context context) |
protected Optional<PlanNode> |
GatherAndMergeWindows.SwapAdjacentWindowsBySpecifications.manipulateAdjacentWindowNodes(WindowNode parent,
WindowNode child,
Rule.Context context) |
Expression |
ExpressionRewriteRuleSet.ExpressionRewriter.rewrite(Expression expression,
Rule.Context context) |