| PlanTranslatorContext(CascadesContext, DescriptorTable) |  | 0% | | n/a | 1 | 1 | 26 | 26 | 1 | 1 |
| addUnknownStatsColumn(ScanNode, SlotId) |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| createSlotDesc(TupleDescriptor, SlotReference, TableIf) |   | 76% |   | 62% | 2 | 5 | 3 | 24 | 0 | 1 |
| isColumnStatsUnknown(ScanNode, SlotId) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| addExprIdColumnRefPair(ExprId, ColumnRefExpr) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| removeScanFromStatsUnknownColumnsMap(ScanNode) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| findColumnRef(ExprId) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getScanNodeWithUnknownColumnStats() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getVirtualColumnIds() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| PlanTranslatorContext(CascadesContext) |  | 100% | | n/a | 0 | 1 | 0 | 26 | 0 | 1 |
| PlanTranslatorContext() |  | 100% | | n/a | 0 | 1 | 0 | 27 | 0 | 1 |
| mergePlanFragment(PlanFragment, PlanFragment) |  | 100% |   | 75% | 1 | 3 | 0 | 6 | 0 | 1 |
| getTupleDesc(PlanNode) |  | 100% |  | 100% | 0 | 2 | 0 | 3 | 0 | 1 |
| addExprIdSlotRefPair(ExprId, SlotRef) |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| addScanNode(ScanNode, PhysicalRelation) |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| getSessionVariable() |  | 100% |  | 100% | 0 | 2 | 0 | 1 | 0 | 1 |
| setRelationPushAggOp(RelationId, TPushAggOp) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| getRelationPushAggOp(RelationId) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| addPlanFragment(PlanFragment) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| findSlotRef(ExprId) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| findExprId(SlotId) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| createSlotDesc(TupleDescriptor, SlotReference) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| nextFragmentId() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| nextPlanNodeId() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| addSlotDesc(TupleDescriptor) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getTupleDesc(TupleId) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| generateTupleDesc() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getRuntimeTranslator() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| setTopMaterializeNode(boolean) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| getConnectContext() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getPlanFragments() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getCteProduceFragments() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getCteProduceMap() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getCteConsumerMap() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getCteScanNodeMap() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getTopnFilterContext() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getNereidsIdToPlanNodeIdMap() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getPhysicalRelations() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getScanNodes() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getBufferedSlotRefForWindow() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getBufferedTupleForWindow() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getDescTable() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| isTopMaterializeNode() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getRuntimeFilterV2Context() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |