| extractEquiJoinKeys(LogicalJoin) |   | 82% |   | 59% | 7 | 12 | 5 | 31 | 0 | 1 |
| rewriteJoin(LogicalJoin, IvmDeltaRewriteVisitor, IvmRefreshContext) |   | 84% |   | 86% | 3 | 12 | 2 | 15 | 0 | 1 |
| resolveRetainedOutput(Slot, Map, Map) |   | 39% |   | 50% | 2 | 3 | 2 | 6 | 0 | 1 |
| copyDeltaScanAsSnapshot(Plan, boolean, IvmRefreshContext) |   | 74% |   | 75% | 1 | 3 | 1 | 8 | 0 | 1 |
| projectNullSideRepairOutputs(IvmOuterJoinDeltaHandler.NullSideDeltaContext, Plan, Expression, Map) |   | 92% |   | 93% | 1 | 9 | 1 | 22 | 0 | 1 |
| projectEventJoinOutputs(List, Plan, Map, Map, Slot) |   | 82% |   | 87% | 1 | 5 | 1 | 13 | 0 | 1 |
| resolveOutputSlot(Plan, Slot) |   | 60% |   | 75% | 1 | 3 | 1 | 5 | 0 | 1 |
| isBoundBy(Expression, Set) |   | 85% |   | 66% | 2 | 4 | 2 | 8 | 0 | 1 |
| buildNullSideRepairEvent(IvmOuterJoinDeltaHandler.NullSideDeltaContext, IvmOuterJoinDeltaHandler.EquiJoinKeys, boolean, Expression, IvmRefreshContext) |  | 100% |  | 100% | 0 | 6 | 0 | 24 | 0 | 1 |
| buildNullSideDeltaKeyPlan(IvmOuterJoinDeltaHandler.NullSideDeltaContext, IvmOuterJoinDeltaHandler.EquiJoinKeys) |  | 100% |  | 100% | 0 | 2 | 0 | 18 | 0 | 1 |
| buildNullSideRepairProjects(IvmOuterJoinDeltaHandler.NullSideDeltaContext, IvmRefreshContext) |  | 100% | | n/a | 0 | 1 | 0 | 17 | 0 | 1 |
| rewriteNullSideDeltaWithNullSideEvents(IvmOuterJoinDeltaHandler.NullSideDeltaContext, IvmOuterJoinDeltaHandler.EquiJoinKeys, IvmRefreshContext) |  | 100% |  | 100% | 0 | 2 | 0 | 19 | 0 | 1 |
| buildNullSideEventPlan(IvmOuterJoinDeltaHandler.NullSideDeltaContext, IvmOuterJoinDeltaHandler.EquiJoinKeys, IvmRefreshContext) |  | 100% |  | 100% | 0 | 2 | 0 | 15 | 0 | 1 |
| buildNullSideDetailEvent(IvmOuterJoinDeltaHandler.NullSideDeltaContext, IvmOuterJoinDeltaHandler.EquiJoinKeys) |  | 100% |  | 100% | 0 | 3 | 0 | 12 | 0 | 1 |
| buildNullSideRepairProject(IvmOuterJoinDeltaHandler.NullSideDeltaContext, Pair, Map, Plan, Pair, Expression) |  | 100% | | n/a | 0 | 1 | 0 | 16 | 0 | 1 |
| projectJoinDeltaOutputs(LogicalJoin, IvmDeltaRewriteResult) |  | 100% |  | 100% | 0 | 2 | 0 | 7 | 0 | 1 |
| lambda$copyDeltaScanAsSnapshot$0(int[], IvmRefreshContext, List, boolean, Plan) |  | 100% |  | 100% | 0 | 5 | 0 | 12 | 0 | 1 |
| rewriteNullSideDeltaWithRepairBranches(IvmOuterJoinDeltaHandler.NullSideDeltaContext, IvmRefreshContext) |  | 100% | | n/a | 0 | 1 | 0 | 7 | 0 | 1 |
| rewriteNullSideJoinedRowsDelta(IvmOuterJoinDeltaHandler.NullSideDeltaContext) |  | 100% |  | 100% | 0 | 3 | 0 | 8 | 0 | 1 |
| rewriteNullSideDelta(IvmOuterJoinDeltaHandler.NullSideDeltaContext, IvmRefreshContext) |  | 100% |  | 100% | 0 | 3 | 0 | 6 | 0 | 1 |
| nullSideValueSlots(IvmOuterJoinDeltaHandler.NullSideDeltaContext) |  | 100% |  | 100% | 0 | 3 | 0 | 6 | 0 | 1 |
| outputExprIds(Plan) |  | 100% |  | 100% | 0 | 2 | 0 | 5 | 0 | 1 |
| rewriteNullSideBareJoinDelta(IvmOuterJoinDeltaHandler.NullSideDeltaContext) |  | 100% | | n/a | 0 | 1 | 0 | 4 | 0 | 1 |
| rewritePreservedSideDelta(LogicalJoin, IvmDeltaRewriteResult, IvmDeltaRewriteResult, IvmRefreshContext) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| eventKeyName(int) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| IvmOuterJoinDeltaHandler() |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| findSlotByName(List, String) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |