| OlapScanNode.java |  | 0% |  | 0% | 317 | 317 | 865 | 865 | 86 | 86 | 1 | 1 |
| OlapTableSink.java |  | 0% |  | 0% | 290 | 290 | 760 | 760 | 69 | 69 | 3 | 3 |
| PlanNode.java |  | 0% |  | 0% | 209 | 209 | 495 | 495 | 95 | 95 | 1 | 1 |
| ScanNode.java |  | 0% |  | 0% | 179 | 179 | 366 | 366 | 51 | 51 | 3 | 3 |
| HashJoinNode.java |  | 0% |  | 0% | 88 | 88 | 194 | 194 | 22 | 22 | 2 | 2 |
| RuntimeFilter.java |  | 0% |  | 0% | 90 | 90 | 200 | 200 | 44 | 44 | 2 | 2 |
| GroupCommitPlanner.java |  | 0% |  | 0% | 44 | 44 | 149 | 149 | 13 | 13 | 1 | 1 |
| PlanFragment.java |  | 0% |  | 0% | 96 | 96 | 189 | 189 | 55 | 55 | 1 | 1 |
| DataPartition.java |  | 0% |  | 0% | 59 | 59 | 140 | 140 | 16 | 16 | 3 | 3 |
| IcebergMergeSink.java |  | 0% |  | 0% | 38 | 38 | 146 | 146 | 22 | 22 | 2 | 2 |
| SortNode.java |  | 0% |  | 0% | 53 | 53 | 127 | 127 | 20 | 20 | 1 | 1 |
| HiveTableSink.java |  | 0% |  | 0% | 28 | 28 | 136 | 136 | 11 | 11 | 2 | 2 |
| AggregationNode.java |  | 0% |  | 0% | 37 | 37 | 131 | 131 | 20 | 20 | 1 | 1 |
| IcebergTableSink.java |  | 0% |  | 0% | 39 | 39 | 126 | 126 | 16 | 16 | 2 | 2 |
| ListPartitionPrunerV2.java |  | 0% |  | 0% | 46 | 46 | 116 | 116 | 26 | 26 | 2 | 2 |
| RangePartitionPrunerV2.java |  | 0% |  | 0% | 51 | 51 | 122 | 122 | 16 | 16 | 2 | 2 |
| DataStreamSink.java |  | 0% |  | 0% | 48 | 48 | 107 | 107 | 25 | 25 | 1 | 1 |
| AnalyticEvalNode.java |  | 0% |  | 0% | 23 | 23 | 93 | 93 | 6 | 6 | 1 | 1 |
| NestedLoopJoinNode.java |  | 0% |  | 0% | 41 | 41 | 75 | 75 | 10 | 10 | 1 | 1 |
| SetOperationNode.java |  | 0% |  | 0% | 29 | 29 | 86 | 86 | 11 | 11 | 1 | 1 |
| SchemaScanNode.java |  | 0% |  | 0% | 29 | 29 | 82 | 82 | 14 | 14 | 1 | 1 |
| PaimonTableSink.java |  | 0% |  | 0% | 30 | 30 | 86 | 86 | 11 | 11 | 2 | 2 |
| TVFTableSink.java |  | 0% |  | 0% | 26 | 26 | 81 | 81 | 9 | 9 | 1 | 1 |
| PartitionPrunerV2Base.java |  | 0% |  | 0% | 33 | 33 | 92 | 92 | 19 | 19 | 3 | 3 |
| PartitionSortNode.java |  | 0% |  | 0% | 20 | 20 | 73 | 73 | 3 | 3 | 1 | 1 |
| BackendPartitionedSchemaScanNode.java |  | 0% |  | 0% | 16 | 16 | 74 | 74 | 8 | 8 | 1 | 1 |
| MaterializationNode.java |  | 0% |  | 0% | 16 | 16 | 67 | 67 | 11 | 11 | 1 | 1 |
| JoinCostEvaluation.java |  | 0% |  | 0% | 16 | 16 | 44 | 44 | 7 | 7 | 1 | 1 |
| TableFunctionNode.java |  | 0% |  | 0% | 15 | 15 | 53 | 53 | 5 | 5 | 1 | 1 |
| ResultFileSink.java |  | 0% |  | 0% | 21 | 21 | 59 | 59 | 13 | 13 | 1 | 1 |
| PartitionColumnFilter.java |  | 0% |  | 0% | 23 | 23 | 54 | 54 | 8 | 8 | 1 | 1 |
| HashDistributionPruner.java |  | 0% |  | 0% | 20 | 20 | 53 | 53 | 4 | 4 | 1 | 1 |
| IcebergDeleteSink.java |  | 0% |  | 0% | 17 | 17 | 57 | 57 | 7 | 7 | 2 | 2 |
| ExchangeNode.java |  | 0% |  | 0% | 25 | 25 | 52 | 52 | 15 | 15 | 1 | 1 |
| DataGenScanNode.java |  | 0% |  | 0% | 15 | 15 | 44 | 44 | 9 | 9 | 1 | 1 |
| RepeatNode.java |  | 0% |  | 0% | 10 | 10 | 33 | 33 | 8 | 8 | 1 | 1 |
| ExportSink.java |  | 0% |  | 0% | 9 | 9 | 35 | 35 | 6 | 6 | 1 | 1 |
| DictionarySink.java |  | 0% |  | 0% | 12 | 12 | 43 | 43 | 9 | 9 | 1 | 1 |
| JoinNodeBase.java |  | 0% |  | 0% | 18 | 18 | 38 | 38 | 8 | 8 | 1 | 1 |
| FileLoadScanNode.java |  | 0% |  | 0% | 15 | 15 | 44 | 44 | 6 | 6 | 2 | 2 |
| Planner.java |  | 0% |  | 0% | 18 | 18 | 46 | 46 | 9 | 9 | 1 | 1 |
| MaxComputeTableSink.java |  | 0% |  | 0% | 14 | 14 | 37 | 37 | 6 | 6 | 1 | 1 |
| BaseExternalTableDataSink.java |  | 0% |  | 0% | 23 | 23 | 40 | 40 | 8 | 8 | 1 | 1 |
| TabletLoadIndexRecorderMgr.java |  | 0% |  | 0% | 12 | 12 | 30 | 30 | 9 | 9 | 2 | 2 |
| AssertNumRowsNode.java |  | 0% |  | 0% | 8 | 8 | 30 | 30 | 5 | 5 | 1 | 1 |
| GroupCommitBlockSink.java |  | 0% |  | 0% | 10 | 10 | 28 | 28 | 6 | 6 | 1 | 1 |
| PartitionPruneV2ForShortCircuitPlan.java |  | 0% |  | 0% | 11 | 11 | 26 | 26 | 8 | 8 | 1 | 1 |
| RecursiveCteNode.java |  | 0% | | 0% | 9 | 9 | 26 | 26 | 8 | 8 | 1 | 1 |
| ResultSink.java |  | 0% |  | 0% | 10 | 10 | 29 | 29 | 7 | 7 | 1 | 1 |
| RangeMap.java |  | 0% |  | 0% | 11 | 11 | 21 | 21 | 5 | 5 | 2 | 2 |
| ColumnRange.java |  | 0% |  | 0% | 17 | 17 | 24 | 24 | 10 | 10 | 1 | 1 |
| MultiCastDataSink.java |  | 0% | | 0% | 9 | 9 | 21 | 21 | 8 | 8 | 1 | 1 |
| MysqlTableSink.java |  | 0% | | n/a | 5 | 5 | 18 | 18 | 5 | 5 | 1 | 1 |
| DataSink.java |  | 0% |  | 0% | 11 | 11 | 19 | 19 | 6 | 6 | 1 | 1 |
| RecursiveCteScanNode.java |  | 0% | | 0% | 7 | 7 | 17 | 17 | 6 | 6 | 1 | 1 |
| ColumnBound.java |  | 0% |  | 0% | 10 | 10 | 16 | 16 | 7 | 7 | 1 | 1 |
| SelectNode.java |  | 0% |  | 0% | 7 | 7 | 14 | 14 | 5 | 5 | 1 | 1 |
| ScanContext.java |  | 0% |  | 0% | 10 | 10 | 13 | 13 | 7 | 7 | 2 | 2 |
| MultiCastPlanFragment.java |  | 0% | | n/a | 4 | 4 | 11 | 11 | 4 | 4 | 1 | 1 |
| RuntimeFilterGenerator.java |  | 0% | | n/a | 2 | 2 | 10 | 10 | 2 | 2 | 2 | 2 |
| RuntimeFilterId.java |  | 0% | | n/a | 6 | 6 | 6 | 6 | 6 | 6 | 2 | 2 |
| BlackholeSink.java |  | 0% | | n/a | 5 | 5 | 12 | 12 | 5 | 5 | 1 | 1 |
| GroupCommitScanNode.java |  | 0% | | n/a | 6 | 6 | 12 | 12 | 6 | 6 | 1 | 1 |
| PlanNodeId.java | | 0% | | n/a | 5 | 5 | 5 | 5 | 5 | 5 | 2 | 2 |
| PlanFragmentId.java | | 0% | | n/a | 5 | 5 | 5 | 5 | 5 | 5 | 2 | 2 |
| EmptySetNode.java | | 0% | | 0% | 4 | 4 | 7 | 7 | 3 | 3 | 1 | 1 |
| CTEScanNode.java | | 0% | | n/a | 6 | 6 | 8 | 8 | 6 | 6 | 1 | 1 |
| UnionNode.java | | 0% | | n/a | 3 | 3 | 5 | 5 | 3 | 3 | 1 | 1 |
| IntersectNode.java | | 0% | | n/a | 2 | 2 | 4 | 4 | 2 | 2 | 1 | 1 |
| ExceptNode.java | | 0% | | n/a | 2 | 2 | 4 | 4 | 2 | 2 | 1 | 1 |
| PlannerContext.java | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
| DistributedPlanColocateRule.java | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |