| buildInsertPartitionFields(List, IcebergExternalTable, Map) |  | 0% |  | 0% | 11 | 11 | 32 | 32 | 1 | 1 |
| equals(Object) |  | 0% |  | 0% | 5 | 5 | 8 | 8 | 1 | 1 |
| parseTransformParam(String) |  | 0% |  | 0% | 3 | 3 | 7 | 7 | 1 | 1 |
| withChildren(List) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| withPhysicalPropertiesAndStats(PhysicalProperties, Statistics) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| withGroupExprLogicalPropChildren(Optional, Optional, List) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| withGroupExpression(Optional) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| PhysicalIcebergMergeSink(ExternalDatabase, ExternalTable, List, List, DeleteCommandContext, Optional, LogicalProperties, PhysicalProperties, Statistics, Plan) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| hashCode() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| PhysicalIcebergMergeSink(ExternalDatabase, ExternalTable, List, List, DeleteCommandContext, Optional, LogicalProperties, Plan) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| reconstructPartitionFields(List, ConnectorWritePartitionSpec, Map) |   | 92% |   | 92% | 1 | 8 | 1 | 25 | 0 | 1 |
| getRequirePhysicalProperties() |   | 95% |   | 79% | 7 | 18 | 4 | 41 | 0 | 1 |
| buildInsertPartitionFieldsFromConnector(List, PluginDrivenExternalTable, Map) |   | 87% |   | 75% | 1 | 3 | 1 | 13 | 0 | 1 |
| getIcebergPartitioning(List, ExternalTable, Map) |   | 58% |   | 50% | 1 | 2 | 1 | 3 | 0 | 1 |
| buildInsertPartitionExprIds(List, List, Map) |   | 86% |   | 66% | 2 | 4 | 2 | 8 | 0 | 1 |
| accept(PlanVisitor, Object) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getDeleteContext() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| buildColumnExprIdMap(List, Map) |   | 96% |   | 75% | 2 | 5 | 1 | 12 | 0 | 1 |
| getDataSlots(List) |  | 100% |  | 100% | 0 | 4 | 0 | 10 | 0 | 1 |