| registerImpl(RelNode, RelSet) |  | 0% |  | 0% | 26 | 26 | 75 | 75 | 1 | 1 |
| isValid(Litmus) |  | 0% |  | 0% | 12 | 12 | 28 | 28 | 1 | 1 |
| rename(RelNode) |  | 0% |  | 0% | 14 | 14 | 33 | 33 | 1 | 1 |
| propagateCostImprovements(RelNode) |  | 0% |  | 0% | 12 | 12 | 32 | 32 | 1 | 1 |
| registerMaterializations() |  | 0% |  | 0% | 7 | 7 | 34 | 34 | 1 | 1 |
| merge(RelSet, RelSet) |  | 0% |  | 0% | 12 | 12 | 31 | 31 | 1 | 1 |
| changeTraitsUsingConverters(RelNode, RelTraitSet) |  | 0% |  | 0% | 15 | 15 | 23 | 23 | 1 | 1 |
| fixUpInputs(RelNode) |  | 0% |  | 0% | 10 | 10 | 23 | 23 | 1 | 1 |
| VolcanoPlanner(RelOptCostFactory, Context) |  | 0% |  | 0% | 3 | 3 | 23 | 23 | 1 | 1 |
| ensureRootConverters() |  | 0% |  | 0% | 7 | 7 | 14 | 14 | 1 | 1 |
| addRule(RelOptRule) |  | 0% |  | 0% | 9 | 9 | 19 | 19 | 1 | 1 |
| getCost(RelNode, RelMetadataQuery) |  | 0% |  | 0% | 8 | 8 | 18 | 18 | 1 | 1 |
| dump(PrintWriter) |  | 0% |  | 0% | 4 | 4 | 16 | 16 | 1 | 1 |
| findBestExp() |  | 0% |  | 0% | 4 | 4 | 18 | 18 | 1 | 1 |
| onNewClass(RelNode) |  | 0% |  | 0% | 6 | 6 | 12 | 12 | 1 | 1 |
| reregister(RelSet, RelNode) |  | 0% |  | 0% | 8 | 8 | 9 | 9 | 1 | 1 |
| register(RelNode, RelNode) |  | 0% |  | 0% | 5 | 5 | 11 | 11 | 1 | 1 |
| ensureRegistered(RelNode, RelNode) |  | 0% |  | 0% | 7 | 7 | 11 | 11 | 1 | 1 |
| clear() |  | 0% |  | 0% | 2 | 2 | 14 | 14 | 1 | 1 |
| isSmaller(RelSet, RelSet) |  | 0% |  | 0% | 6 | 6 | 5 | 5 | 1 | 1 |
| changeTraits(RelNode, RelTraitSet) |  | 0% |  | 0% | 6 | 6 | 7 | 7 | 1 | 1 |
| normalizePlan(String) |  | 0% |  | 0% | 3 | 3 | 10 | 10 | 1 | 1 |
| removeRule(RelOptRule) |  | 0% |  | 0% | 4 | 4 | 10 | 10 | 1 | 1 |
| lambda$propagateCostImprovements$2(Map, RelNode, RelNode) |  | 0% |  | 0% | 6 | 6 | 11 | 11 | 1 | 1 |
| fireRules(RelNode) |  | 0% |  | 0% | 3 | 3 | 6 | 6 | 1 | 1 |
| emptyTraitSet() |  | 0% |  | 0% | 3 | 3 | 6 | 6 | 1 | 1 |
| addRelToSet(RelNode, RelSet) |  | 0% |  | 0% | 2 | 2 | 8 | 8 | 1 | 1 |
| registerSubset(RelSet, RelSubset) |  | 0% |  | 0% | 4 | 4 | 4 | 4 | 1 | 1 |
| registerSchema(RelOptSchema) |  | 0% |  | 0% | 2 | 2 | 6 | 6 | 1 | 1 |
| getSubset(RelNode, RelTraitSet) |  | 0% |  | 0% | 4 | 4 | 6 | 6 | 1 | 1 |
| canonize(RelSubset) |  | 0% |  | 0% | 3 | 3 | 7 | 7 | 1 | 1 |
| setRoot(RelNode) |  | 0% |  | 0% | 2 | 2 | 6 | 6 | 1 | 1 |
| upperBoundForInputs(RelNode, RelOptCost) |  | 0% |  | 0% | 4 | 4 | 6 | 6 | 1 | 1 |
| getSet(RelNode) |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| initRuleQueue() |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| toDot() |  | 0% | | n/a | 1 | 1 | 5 | 5 | 1 | 1 |
| getSubset(RelNode) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| getLowerBound(RelNode) |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| equivRoot(RelSet) |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| forward1(RelSet, RelSet) |  | 0% |  | 0% | 3 | 3 | 5 | 5 | 1 | 1 |
| addRelTraitDef(RelTraitDef) |  | 0% |  | 0% | 3 | 3 | 1 | 1 | 1 | 1 |
| getCostOrInfinite(RelNode, RelMetadataQuery) |  | 0% |  | 0% | 2 | 2 | 2 | 2 | 1 | 1 |
| isLogical(RelNode) |  | 0% |  | 0% | 3 | 3 | 2 | 2 | 1 | 1 |
| setTopDownOpt(boolean) |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| checkPruned(RelNode, RelNode) |  | 0% |  | 0% | 2 | 2 | 3 | 3 | 1 | 1 |
| getRelMetadataTimestamp(RelNode) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| forward2(RelSet, RelSet) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| isRegistered(RelNode) |  | 0% |  | 0% | 2 | 2 | 1 | 1 | 1 | 1 |
| addLattice(RelOptLattice) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| checkCancel() |  | 0% |  | 0% | 2 | 2 | 3 | 3 | 1 | 1 |
| lambda$getSubsetNonNull$1(RelNode) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getSubsetNonNull(RelNode) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| static {...} |  | 0% |  | 0% | 2 | 2 | 1 | 1 | 1 | 1 |
| getLattice(RelOptTable) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| registerMetadataProviders(List) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| addMaterialization(RelOptMaterialization) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| prune(RelNode) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| canonize() |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| VolcanoPlanner() |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| VolcanoPlanner(Context) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| lambda$removeRule$0(RelOptRule, RelOptRuleOperand) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getMaterializations() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| clearRelTraitDefs() |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| setNoneConventionHasInfiniteCost(boolean) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| setLocked(boolean) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| isSubstituteRule(VolcanoRuleCall) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| isTransformationRule(VolcanoRuleCall) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getRoot() | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getRelTraitDefs() | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| registerAbstractRelationalRules() | | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| chooseDelegate() | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |