| tryFindOptimalShuffleKeyForBothAggChildren(PhysicalHashJoin, PlanContext) |   | 11% |   | 10% | 19 | 21 | 61 | 74 | 0 | 1 |
| selectOptimalShuffleKeyForAggWithParentHashRequest(PhysicalHashAggregate, Set, PlanContext) |   | 19% |   | 18% | 7 | 9 | 19 | 23 | 0 | 1 |
| computeShuffleKeyScore(ColumnStatistic, double, int, DataType) |  | 0% |  | 0% | 5 | 5 | 11 | 11 | 1 | 1 |
| chooseBestShuffleKeyFromPartitionExpressions(List, Statistics, double, int) |   | 44% |   | 37% | 6 | 9 | 11 | 25 | 0 | 1 |
| getGlobalAggInputStatsFromGroup(Group) |   | 58% |   | 50% | 2 | 4 | 2 | 7 | 0 | 1 |
| lambda$tryFindOptimalShuffleKeyForBothAggChildren$2(ExprId, Expression) |  | 0% |  | 0% | 3 | 3 | 1 | 1 | 1 | 1 |
| lambda$tryFindOptimalShuffleKeyForBothAggChildren$1(ExprId, Expression) |  | 0% |  | 0% | 3 | 3 | 1 | 1 | 1 | 1 |
| getGroupExpression(Group) |   | 64% |   | 50% | 1 | 2 | 1 | 4 | 0 | 1 |
| lambda$getGlobalAggInputStatsFromGroup$0(Plan, Statistics) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| ShuffleKeyPruneUtils() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getGlobalAggChildStats(PhysicalHashAggregate) |  | 95% |   | 66% | 2 | 4 | 1 | 11 | 0 | 1 |
| selectBestShuffleKeyForAgg(PhysicalHashAggregate, List, ConnectContext) |  | 93% |   | 75% | 1 | 3 | 1 | 9 | 0 | 1 |
| canAggShuffleKeyOpt(PhysicalHashAggregate, ConnectContext) |  | 100% |  | 100% | 0 | 3 | 0 | 5 | 0 | 1 |