Rule.Result |
AddIntermediateAggregations.apply(AggregationNode aggregation,
Captures captures,
Rule.Context context) |
|
Rule.Result |
ApplyTableScanRedirection.apply(TableScanNode scanNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
CreatePartialTopN.apply(TopNNode single,
Captures captures,
Rule.Context context) |
|
Rule.Result |
DecorrelateInnerUnnestWithGlobalAggregation.apply(CorrelatedJoinNode correlatedJoinNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
DecorrelateLeftUnnestWithGlobalAggregation.apply(CorrelatedJoinNode correlatedJoinNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
DecorrelateUnnest.apply(CorrelatedJoinNode correlatedJoinNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
DetermineJoinDistributionType.apply(JoinNode joinNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
DeterminePreferredWritePartitioning.apply(TableWriterNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
DetermineSemiJoinDistributionType.apply(SemiJoinNode semiJoinNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
DetermineTableScanNodePartitioning.apply(TableScanNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
EliminateCrossJoins.apply(JoinNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
EvaluateEmptyIntersect.apply(IntersectNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
EvaluateZeroSample.apply(SampleNode sample,
Captures captures,
Rule.Context context) |
|
Rule.Result |
ExtractDereferencesFromFilterAboveScan.apply(FilterNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
ExtractSpatialJoins.ExtractSpatialInnerJoin.apply(FilterNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
ExtractSpatialJoins.ExtractSpatialLeftJoin.apply(JoinNode joinNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
ImplementBernoulliSampleAsFilter.apply(SampleNode sample,
Captures captures,
Rule.Context context) |
|
Rule.Result |
ImplementExceptAll.apply(ExceptNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
ImplementExceptDistinctAsUnion.apply(ExceptNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
ImplementFilteredAggregations.apply(AggregationNode aggregationNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
ImplementIntersectAll.apply(IntersectNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
ImplementIntersectDistinctAsUnion.apply(IntersectNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
ImplementLimitWithTies.apply(LimitNode parent,
Captures captures,
Rule.Context context) |
|
Rule.Result |
ImplementOffset.apply(OffsetNode parent,
Captures captures,
Rule.Context context) |
|
Rule.Result |
InlineProjectIntoFilter.apply(FilterNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
InlineProjections.apply(ProjectNode parent,
Captures captures,
Rule.Context context) |
|
Rule.Result |
MergeExcept.apply(ExceptNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
MergeFilters.apply(FilterNode parent,
Captures captures,
Rule.Context context) |
|
Rule.Result |
MergeIntersect.apply(IntersectNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
MergeLimitOverProjectWithSort.apply(LimitNode parent,
Captures captures,
Rule.Context context) |
|
Rule.Result |
MergeLimits.apply(LimitNode parent,
Captures captures,
Rule.Context context) |
|
Rule.Result |
MergeLimitWithDistinct.apply(LimitNode parent,
Captures captures,
Rule.Context context) |
|
Rule.Result |
MergeLimitWithSort.apply(LimitNode parent,
Captures captures,
Rule.Context context) |
|
Rule.Result |
MergeLimitWithTopN.apply(LimitNode parent,
Captures captures,
Rule.Context context) |
|
Rule.Result |
MergeProjectWithValues.apply(ProjectNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
MergeUnion.apply(UnionNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
MultipleDistinctAggregationToMarkDistinct.apply(AggregationNode parent,
Captures captures,
Rule.Context context) |
|
Rule.Result |
OptimizeDuplicateInsensitiveJoins.apply(AggregationNode aggregation,
Captures captures,
Rule.Context context) |
|
Rule.Result |
OptimizeRowPattern.apply(PatternRecognitionNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
ProjectOffPushDownRule.apply(ProjectNode parent,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PruneAggregationSourceColumns.apply(AggregationNode aggregationNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PruneApplyCorrelation.apply(ApplyNode applyNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PruneApplySourceColumns.apply(ApplyNode applyNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PruneCorrelatedJoinCorrelation.apply(CorrelatedJoinNode correlatedJoinNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PruneCountAggregationOverScalar.apply(AggregationNode parent,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PruneDeleteSourceColumns.apply(DeleteNode deleteNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PruneDistinctAggregation.apply(AggregationNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PruneDistinctLimitSourceColumns.apply(DistinctLimitNode distinctLimit,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PruneExceptSourceColumns.apply(ExceptNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PruneExchangeSourceColumns.apply(ExchangeNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PruneExplainAnalyzeSourceColumns.apply(ExplainAnalyzeNode explainAnalyzeNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PruneGroupIdSourceColumns.apply(GroupIdNode groupId,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PruneIntersectSourceColumns.apply(IntersectNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PruneJoinChildrenColumns.apply(JoinNode joinNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PruneOrderByInAggregation.apply(AggregationNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PruneOutputSourceColumns.apply(OutputNode outputNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PruneSemiJoinFilteringSourceColumns.apply(SemiJoinNode semiJoinNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PruneSpatialJoinChildrenColumns.apply(SpatialJoinNode spatialJoinNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PruneTableWriterSourceColumns.apply(TableWriterNode tableWriterNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PruneUnionSourceColumns.apply(UnionNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PruneUnnestSourceColumns.apply(UnnestNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PruneUpdateSourceColumns.apply(UpdateNode updateNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushAggregationIntoTableScan.apply(AggregationNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushAggregationThroughOuterJoin.apply(AggregationNode aggregation,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushDeleteIntoConnector.apply(TableFinishNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushDistinctLimitIntoTableScan.apply(DistinctLimitNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushDownDereferencesThroughAssignUniqueId.apply(ProjectNode projectNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushDownDereferencesThroughLimit.apply(ProjectNode projectNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushDownDereferencesThroughMarkDistinct.apply(ProjectNode projectNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushDownDereferencesThroughRowNumber.apply(ProjectNode projectNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushDownDereferencesThroughSort.apply(ProjectNode projectNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushDownDereferencesThroughTopN.apply(ProjectNode projectNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushDownDereferencesThroughTopNRanking.apply(ProjectNode projectNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushDownDereferencesThroughWindow.apply(ProjectNode projectNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushDownDereferenceThroughFilter.apply(ProjectNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushDownDereferenceThroughJoin.apply(ProjectNode projectNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushDownDereferenceThroughProject.apply(ProjectNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushDownDereferenceThroughSemiJoin.apply(ProjectNode projectNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushDownDereferenceThroughUnnest.apply(ProjectNode projectNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushdownFilterIntoRowNumber.apply(FilterNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushdownFilterIntoWindow.apply(FilterNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushdownLimitIntoRowNumber.apply(LimitNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushdownLimitIntoWindow.apply(LimitNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushJoinIntoTableScan.apply(JoinNode joinNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushLimitIntoTableScan.apply(LimitNode limit,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushLimitThroughMarkDistinct.apply(LimitNode parent,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushLimitThroughOffset.apply(LimitNode parent,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushLimitThroughOuterJoin.apply(LimitNode parent,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushLimitThroughProject.apply(LimitNode parent,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushLimitThroughSemiJoin.apply(LimitNode parent,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushLimitThroughUnion.apply(LimitNode parent,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushOffsetThroughProject.apply(OffsetNode parent,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushPartialAggregationThroughExchange.apply(AggregationNode aggregationNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushPartialAggregationThroughJoin.apply(AggregationNode aggregationNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushPredicateIntoTableScan.apply(FilterNode filterNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushPredicateThroughProjectIntoRowNumber.apply(FilterNode filter,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushPredicateThroughProjectIntoWindow.apply(FilterNode filter,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushProjectionIntoTableScan.apply(ProjectNode project,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushProjectionThroughExchange.apply(ProjectNode project,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushProjectionThroughUnion.apply(ProjectNode parent,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushRemoteExchangeThroughAssignUniqueId.apply(ExchangeNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushSampleIntoTableScan.apply(SampleNode sample,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushTableWriteThroughUnion.apply(TableWriterNode writerNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushTopNIntoTableScan.apply(TopNNode topNNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushTopNThroughOuterJoin.apply(TopNNode parent,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushTopNThroughProject.apply(TopNNode parent,
Captures captures,
Rule.Context context) |
|
Rule.Result |
PushTopNThroughUnion.apply(TopNNode topNNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
RemoveAggregationInSemiJoin.apply(SemiJoinNode semiJoinNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
RemoveEmptyDelete.apply(TableFinishNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
RemoveEmptyExceptBranches.apply(ExceptNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
RemoveEmptyUnionBranches.apply(UnionNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
RemoveFullSample.apply(SampleNode sample,
Captures captures,
Rule.Context context) |
|
Rule.Result |
RemoveRedundantDistinctLimit.apply(DistinctLimitNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
RemoveRedundantEnforceSingleRowNode.apply(EnforceSingleRowNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
RemoveRedundantExists.apply(ApplyNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
RemoveRedundantIdentityProjections.apply(ProjectNode project,
Captures captures,
Rule.Context context) |
|
Rule.Result |
RemoveRedundantJoin.apply(JoinNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
RemoveRedundantLimit.apply(LimitNode limit,
Captures captures,
Rule.Context context) |
|
Rule.Result |
RemoveRedundantOffset.apply(OffsetNode offset,
Captures captures,
Rule.Context context) |
|
Rule.Result |
RemoveRedundantSort.apply(SortNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
RemoveRedundantSortBelowLimitWithTies.apply(LimitNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
RemoveRedundantTableScanPredicate.apply(FilterNode filterNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
RemoveRedundantTopN.apply(TopNNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
RemoveTrivialFilters.apply(FilterNode filterNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
RemoveUnreferencedScalarApplyNodes.apply(ApplyNode applyNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
RemoveUnreferencedScalarSubqueries.apply(CorrelatedJoinNode correlatedJoinNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
ReorderJoins.apply(JoinNode joinNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
ReplaceJoinOverConstantWithProject.apply(JoinNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
ReplaceRedundantJoinWithProject.apply(JoinNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
ReplaceRedundantJoinWithSource.apply(JoinNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
ReplaceWindowWithRowNumber.apply(WindowNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
RewriteSpatialPartitioningAggregation.apply(AggregationNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
SimplifyCountOverConstant.apply(AggregationNode parent,
Captures captures,
Rule.Context context) |
|
Rule.Result |
SimplifyFilterPredicate.apply(FilterNode node,
Captures captures,
Rule.Context context) |
|
Rule.Result |
SingleDistinctAggregationToGroupBy.apply(AggregationNode aggregation,
Captures captures,
Rule.Context context) |
|
Rule.Result |
TransformCorrelatedDistinctAggregationWithoutProjection.apply(CorrelatedJoinNode correlatedJoinNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
TransformCorrelatedDistinctAggregationWithProjection.apply(CorrelatedJoinNode correlatedJoinNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
TransformCorrelatedGlobalAggregationWithoutProjection.apply(CorrelatedJoinNode correlatedJoinNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
TransformCorrelatedGlobalAggregationWithProjection.apply(CorrelatedJoinNode correlatedJoinNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
TransformCorrelatedGroupedAggregationWithoutProjection.apply(CorrelatedJoinNode correlatedJoinNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
TransformCorrelatedGroupedAggregationWithProjection.apply(CorrelatedJoinNode correlatedJoinNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
TransformCorrelatedInPredicateToJoin.apply(ApplyNode apply,
Captures captures,
Rule.Context context) |
|
Rule.Result |
TransformCorrelatedJoinToJoin.apply(CorrelatedJoinNode correlatedJoinNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
TransformCorrelatedScalarSubquery.apply(CorrelatedJoinNode correlatedJoinNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
TransformCorrelatedSingleRowSubqueryToProject.apply(CorrelatedJoinNode parent,
Captures captures,
Rule.Context context) |
|
Rule.Result |
TransformExistsApplyToCorrelatedJoin.apply(ApplyNode parent,
Captures captures,
Rule.Context context) |
|
Rule.Result |
TransformFilteringSemiJoinToInnerJoin.apply(FilterNode filterNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
TransformUncorrelatedInPredicateSubqueryToSemiJoin.apply(ApplyNode applyNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
TransformUncorrelatedSubqueryToJoin.apply(CorrelatedJoinNode correlatedJoinNode,
Captures captures,
Rule.Context context) |
|
Rule.Result |
UnwrapSingleColumnRowInApply.apply(ApplyNode node,
Captures captures,
Rule.Context context) |
|
static boolean |
DetermineJoinDistributionType.canReplicate(JoinNode joinNode,
Rule.Context context) |
|
static double |
DetermineJoinDistributionType.getSourceTablesSizeInBytes(PlanNode node,
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) |
|
static Optional<PlanNode> |
PushAggregationIntoTableScan.pushAggregationIntoTableScan(Metadata metadata,
Rule.Context context,
PlanNode aggregationNode,
TableScanNode tableScan,
Map<Symbol,AggregationNode.Aggregation> aggregations,
List<Symbol> groupingKeys) |
|
protected abstract Optional<PlanNode> |
ProjectOffPushDownRule.pushDownProjectOff(Rule.Context context,
N targetNode,
Set<Symbol> referencedOutputs) |
|
protected Optional<PlanNode> |
PruneAggregationColumns.pushDownProjectOff(Rule.Context context,
AggregationNode aggregationNode,
Set<Symbol> referencedOutputs) |
|
protected Optional<PlanNode> |
PruneApplyColumns.pushDownProjectOff(Rule.Context context,
ApplyNode applyNode,
Set<Symbol> referencedOutputs) |
|
protected Optional<PlanNode> |
PruneAssignUniqueIdColumns.pushDownProjectOff(Rule.Context context,
AssignUniqueId assignUniqueId,
Set<Symbol> referencedOutputs) |
|
protected Optional<PlanNode> |
PruneCorrelatedJoinColumns.pushDownProjectOff(Rule.Context context,
CorrelatedJoinNode correlatedJoinNode,
Set<Symbol> referencedOutputs) |
|
protected Optional<PlanNode> |
PruneEnforceSingleRowColumns.pushDownProjectOff(Rule.Context context,
EnforceSingleRowNode enforceSingleRowNode,
Set<Symbol> referencedOutputs) |
|
protected Optional<PlanNode> |
PruneExchangeColumns.pushDownProjectOff(Rule.Context context,
ExchangeNode exchangeNode,
Set<Symbol> referencedOutputs) |
|
protected Optional<PlanNode> |
PruneFilterColumns.pushDownProjectOff(Rule.Context context,
FilterNode filterNode,
Set<Symbol> referencedOutputs) |
|
protected Optional<PlanNode> |
PruneGroupIdColumns.pushDownProjectOff(Rule.Context context,
GroupIdNode groupIdNode,
Set<Symbol> referencedOutputs) |
|
protected Optional<PlanNode> |
PruneIndexJoinColumns.pushDownProjectOff(Rule.Context context,
IndexJoinNode indexJoinNode,
Set<Symbol> referencedOutputs) |
|
protected Optional<PlanNode> |
PruneIndexSourceColumns.pushDownProjectOff(Rule.Context context,
IndexSourceNode indexSourceNode,
Set<Symbol> referencedOutputs) |
|
protected Optional<PlanNode> |
PruneJoinColumns.pushDownProjectOff(Rule.Context context,
JoinNode joinNode,
Set<Symbol> referencedOutputs) |
|
protected Optional<PlanNode> |
PruneLimitColumns.pushDownProjectOff(Rule.Context context,
LimitNode limitNode,
Set<Symbol> referencedOutputs) |
|
protected Optional<PlanNode> |
PruneMarkDistinctColumns.pushDownProjectOff(Rule.Context context,
MarkDistinctNode markDistinctNode,
Set<Symbol> referencedOutputs) |
|
protected Optional<PlanNode> |
PruneOffsetColumns.pushDownProjectOff(Rule.Context context,
OffsetNode offsetNode,
Set<Symbol> referencedOutputs) |
|
protected Optional<PlanNode> |
PruneProjectColumns.pushDownProjectOff(Rule.Context context,
ProjectNode childProjectNode,
Set<Symbol> referencedOutputs) |
|
protected Optional<PlanNode> |
PruneRowNumberColumns.pushDownProjectOff(Rule.Context context,
RowNumberNode rowNumberNode,
Set<Symbol> referencedOutputs) |
|
protected Optional<PlanNode> |
PruneSampleColumns.pushDownProjectOff(Rule.Context context,
SampleNode sampleNode,
Set<Symbol> referencedOutputs) |
|
protected Optional<PlanNode> |
PruneSemiJoinColumns.pushDownProjectOff(Rule.Context context,
SemiJoinNode semiJoinNode,
Set<Symbol> referencedOutputs) |
|
protected Optional<PlanNode> |
PruneSortColumns.pushDownProjectOff(Rule.Context context,
SortNode sortNode,
Set<Symbol> referencedOutputs) |
|
protected Optional<PlanNode> |
PruneSpatialJoinColumns.pushDownProjectOff(Rule.Context context,
SpatialJoinNode spatialJoinNode,
Set<Symbol> referencedOutputs) |
|
protected Optional<PlanNode> |
PruneTableScanColumns.pushDownProjectOff(Rule.Context context,
TableScanNode node,
Set<Symbol> referencedOutputs) |
|
protected Optional<PlanNode> |
PruneTopNColumns.pushDownProjectOff(Rule.Context context,
TopNNode topNNode,
Set<Symbol> referencedOutputs) |
|
protected Optional<PlanNode> |
PruneTopNRankingColumns.pushDownProjectOff(Rule.Context context,
TopNRankingNode topNRankingNode,
Set<Symbol> referencedOutputs) |
|
protected Optional<PlanNode> |
PruneUnionColumns.pushDownProjectOff(Rule.Context context,
UnionNode unionNode,
Set<Symbol> referencedOutputs) |
|
protected Optional<PlanNode> |
PruneUnnestColumns.pushDownProjectOff(Rule.Context context,
UnnestNode unnestNode,
Set<Symbol> referencedOutputs) |
|
protected Optional<PlanNode> |
PruneValuesColumns.pushDownProjectOff(Rule.Context context,
ValuesNode valuesNode,
Set<Symbol> referencedOutputs) |
|
protected Optional<PlanNode> |
PruneWindowColumns.pushDownProjectOff(Rule.Context context,
WindowNode windowNode,
Set<Symbol> referencedOutputs) |
|
Expression |
ExpressionRewriteRuleSet.ExpressionRewriter.rewrite(Expression expression,
Rule.Context context) |
|