visitExchange(ExchangeNode, HashGenerationOptimizer.HashComputationSet) |  | 0% |  | 0% | 7 | 7 | 56 | 56 | 1 | 1 |
visitJoin(JoinNode, HashGenerationOptimizer.HashComputationSet) |  | 0% |  | 0% | 14 | 14 | 24 | 24 | 1 | 1 |
visitProject(ProjectNode, HashGenerationOptimizer.HashComputationSet) |  | 0% |  | 0% | 5 | 5 | 25 | 25 | 1 | 1 |
visitUnion(UnionNode, HashGenerationOptimizer.HashComputationSet) |  | 0% |  | 0% | 5 | 5 | 28 | 28 | 1 | 1 |
enforce(HashGenerationOptimizer.PlanWithProperties, HashGenerationOptimizer.HashComputationSet) |  | 0% |  | 0% | 7 | 7 | 19 | 19 | 1 | 1 |
visitIndexJoin(IndexJoinNode, HashGenerationOptimizer.HashComputationSet) |  | 0% |  | 0% | 2 | 2 | 23 | 23 | 1 | 1 |
visitSemiJoin(SemiJoinNode, HashGenerationOptimizer.HashComputationSet) |  | 0% | | n/a | 1 | 1 | 21 | 21 | 1 | 1 |
visitAggregation(AggregationNode, HashGenerationOptimizer.HashComputationSet) |  | 0% |  | 0% | 5 | 5 | 18 | 18 | 1 | 1 |
visitDistinctLimit(DistinctLimitNode, HashGenerationOptimizer.HashComputationSet) |  | 0% |  | 0% | 2 | 2 | 10 | 10 | 1 | 1 |
visitWindow(WindowNode, HashGenerationOptimizer.HashComputationSet) |  | 0% |  | 0% | 2 | 2 | 17 | 17 | 1 | 1 |
visitRowNumber(RowNumberNode, HashGenerationOptimizer.HashComputationSet) |  | 0% |  | 0% | 2 | 2 | 17 | 17 | 1 | 1 |
visitTopNRowNumber(TopNRowNumberNode, HashGenerationOptimizer.HashComputationSet) |  | 0% |  | 0% | 2 | 2 | 17 | 17 | 1 | 1 |
buildJoinNodeWithPreferredHashes(JoinNode, HashGenerationOptimizer.PlanWithProperties, HashGenerationOptimizer.PlanWithProperties, Map, HashGenerationOptimizer.HashComputationSet, Optional, Optional) |  | 0% | | n/a | 1 | 1 | 18 | 18 | 1 | 1 |
visitMarkDistinct(MarkDistinctNode, HashGenerationOptimizer.HashComputationSet) |  | 0% |  | 0% | 2 | 2 | 10 | 10 | 1 | 1 |
visitSpatialJoin(SpatialJoinNode, HashGenerationOptimizer.HashComputationSet) |  | 0% | | n/a | 1 | 1 | 7 | 7 | 1 | 1 |
visitMergeJoin(MergeJoinNode, HashGenerationOptimizer.HashComputationSet) |  | 0% | | n/a | 1 | 1 | 7 | 7 | 1 | 1 |
planAndEnforce(PlanNode, HashGenerationOptimizer.HashComputationSet, boolean, HashGenerationOptimizer.HashComputationSet) |  | 0% |  | 0% | 5 | 5 | 14 | 14 | 1 | 1 |
visitUnnest(UnnestNode, HashGenerationOptimizer.HashComputationSet) |  | 0% | | n/a | 1 | 1 | 13 | 13 | 1 | 1 |
planSimpleNodeWithProperties(PlanNode, HashGenerationOptimizer.HashComputationSet, boolean) |  | 0% |  | 0% | 2 | 2 | 7 | 7 | 1 | 1 |
visitSequence(SequenceNode, HashGenerationOptimizer.HashComputationSet) |  | 0% | | n/a | 1 | 1 | 10 | 10 | 1 | 1 |
plan(PlanNode, HashGenerationOptimizer.HashComputationSet) |  | 0% | | n/a | 1 | 1 | 5 | 5 | 1 | 1 |
HashGenerationOptimizer.Rewriter(PlanNodeIdAllocator, VariableAllocator, FunctionAndTypeManager, Session) |  | 0% | | n/a | 1 | 1 | 6 | 6 | 1 | 1 |
skipHashComputeForJoinInput(PlanNode, Optional, HashGenerationOptimizer.HashComputationSet) |  | 0% |  | 0% | 5 | 5 | 1 | 1 | 1 | 1 |
canSkipHashGeneration(List) |  | 0% |  | 0% | 4 | 4 | 1 | 1 | 1 | 1 |
accept(PlanNode, HashGenerationOptimizer.HashComputationSet) |  | 0% | | n/a | 1 | 1 | 4 | 4 | 1 | 1 |
lambda$buildJoinNodeWithPreferredHashes$2(JoinNode, Map, VariableReferenceExpression) |  | 0% |  | 0% | 3 | 3 | 2 | 2 | 1 | 1 |
lambda$visitSequence$0(PlanNode) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
visitGroupId(GroupIdNode, HashGenerationOptimizer.HashComputationSet) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
visitEnforceSingleRow(EnforceSingleRowNode, HashGenerationOptimizer.HashComputationSet) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
visitApply(ApplyNode, HashGenerationOptimizer.HashComputationSet) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
visitLateralJoin(LateralJoinNode, HashGenerationOptimizer.HashComputationSet) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
planSimpleNodeWithProperties(PlanNode, HashGenerationOptimizer.HashComputationSet) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
lambda$visitProject$7(Assignments.Builder, VariableReferenceExpression) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
lambda$visitProject$6(Assignments.Builder, VariableReferenceExpression) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
lambda$buildJoinNodeWithPreferredHashes$1(HashGenerationOptimizer.HashComputationSet, Map.Entry) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
visitPlan(PlanNode, HashGenerationOptimizer.HashComputationSet) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
lambda$visitProject$5(Map, VariableReferenceExpression) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
lambda$visitUnion$4(Map, VariableReferenceExpression) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
lambda$visitExchange$3(Map, VariableReferenceExpression) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |