| onProduce(RelNode, RelSubset) |  | 0% |  | 0% | 22 | 22 | 42 | 42 | 1 | 1 |
| getOptimizeInputTask(RelNode, RelSubset) |  | 0% |  | 0% | 7 | 7 | 20 | 20 | 1 | 1 |
| clearProcessed(RelSet) |  | 0% |  | 0% | 7 | 7 | 14 | 14 | 1 | 1 |
| convert(RelNode, RelSubset) |  | 0% |  | 0% | 7 | 7 | 15 | 15 | 1 | 1 |
| exploreMaterializationRoots() |  | 0% |  | 0% | 5 | 5 | 11 | 11 | 1 | 1 |
| drive() |  | 0% |  | 0% | 2 | 2 | 13 | 13 | 1 | 1 |
| TopDownRuleDriver(VolcanoPlanner) |  | 0% | | n/a | 1 | 1 | 7 | 7 | 1 | 1 |
| checkLowerBound(RelNode, RelSubset) |  | 0% |  | 0% | 3 | 3 | 5 | 5 | 1 | 1 |
| lambda$convert$5(RelSubset, VolcanoRuleMatch) |  | 0% |  | 0% | 3 | 3 | 3 | 3 | 1 | 1 |
| clear() |  | 0% | | n/a | 1 | 1 | 5 | 5 | 1 | 1 |
| applyGenerator(TopDownRuleDriver.GeneratorTask, TopDownRuleDriver.Procedure) |  | 0% | | n/a | 1 | 1 | 5 | 5 | 1 | 1 |
| static {...} |  | 0% |  | 0% | 2 | 2 | 2 | 2 | 1 | 1 |
| lambda$convert$4(RelSubset) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| lambda$clearProcessed$1(RelNode) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| lambda$onProduce$2(RelSubset) |  | 0% |  | 0% | 2 | 2 | 1 | 1 | 1 | 1 |
| onSetMerged(RelSet) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| lambda$getOptimizeInputTask$3(RelNode, RelSubset) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| lambda$onSetMerged$0(RelSet) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getRuleQueue() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |