| inferNewPredicateRemoveUselessIsNull(Plan, Set, LogicalJoin, CascadesContext) |   | 90% |   | 79% | 4 | 13 | 2 | 29 | 0 | 1 |
| withInferredIfSupported(Expression, Expression) |   | 57% | | n/a | 0 | 1 | 2 | 3 | 0 | 1 |
| rewriteRoot(Plan, JobContext) |   | 94% |   | 50% | 2 | 3 | 1 | 6 | 0 | 1 |
| visitLogicalJoin(LogicalJoin, JobContext) |  | 100% |  | 100% | 0 | 8 | 0 | 20 | 0 | 1 |
| visitLogicalExcept(LogicalExcept, JobContext) |  | 100% |  | 100% | 0 | 7 | 0 | 16 | 0 | 1 |
| visitLogicalIntersect(LogicalIntersect, JobContext) |  | 100% |  | 100% | 0 | 7 | 0 | 15 | 0 | 1 |
| visitLogicalFilter(LogicalFilter, JobContext) |  | 100% |  | 100% | 0 | 4 | 0 | 10 | 0 | 1 |
| inferNewPredicate(Plan, Set) |  | 100% |   | 83% | 1 | 4 | 0 | 9 | 0 | 1 |
| lambda$inferNewPredicateRemoveUselessIsNull$1(LogicalJoin, CascadesContext) |  | 100% | | n/a | 0 | 1 | 0 | 4 | 0 | 1 |
| getAllExpressions(Plan, Plan, Optional) |  | 100% | | n/a | 0 | 1 | 0 | 4 | 0 | 1 |
| pullUpPredicates(Plan) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| pullUpAllPredicates(Plan) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| lambda$getAllExpressions$0(Set, Expression) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| InferPredicates() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |