digraph G {
subgraph cluster0 {
isCluster="true";
id="cluster0";
label="WholeStageCodegen (16)\n \nduration: 8 ms";
tooltip="WholeStageCodegen (16)";
1 [id="node1" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 4 ms<br>peak memory: 256.0 KiB<br>number of output rows: 1<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[shardId#589610], functions=[])"];
2 [id="node2" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 1 ms<br>peak memory: 256.0 KiB<br>number of output rows: 1<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[shardId#589610], functions=[])"];
3 [id="node3" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#589610]"];
}
4 [id="node4" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 1<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 1<br>local bytes read: 100.0 B<br>merged fetch fallback count: 0<br>local blocks read: 1<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 40.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 1<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 100.0 B" tooltip="Exchange SinglePartition, REPARTITION_BY_NUM, [plan_id=256283]"];
subgraph cluster5 {
isCluster="true";
id="cluster5";
label="WholeStageCodegen (15)\n \nduration: total (min, med, max (stageId: taskId))\n71 ms (0 ms, 7 ms, 8 ms (stage 45994.0: task 128787))";
tooltip="WholeStageCodegen (15)";
6 [id="node6" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build total (min, med, max (stageId: taskId))<br>6 ms (0 ms, 0 ms, 3 ms (stage 45994.0: task 128787))<br>peak memory total (min, med, max (stageId: taskId))<br>5.0 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 45994.0: task 128788))<br>number of output rows: 1<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[shardId#589610, resultSeparationId#597718L], functions=[])"];
}
7 [id="node7" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 11<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 11<br>local bytes read: 600.0 B<br>merged fetch fallback count: 0<br>local blocks read: 6<br>remote merged chunks fetched: 0<br>remote blocks read: 5<br>data size total (min, med, max (stageId: taskId))<br>440.0 B (40.0 B, 40.0 B, 40.0 B (stage 45993.0: task 128768))<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time total (min, med, max (stageId: taskId))<br>5 ms (0 ms, 0 ms, 0 ms (stage 45993.0: task 128767))<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 500.0 B<br>number of partitions: 20<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>1100.0 B (100.0 B, 100.0 B, 100.0 B (stage 45993.0: task 128768))" tooltip="Exchange hashpartitioning(shardId#589610, resultSeparationId#597718L, 20), ENSURE_REQUIREMENTS, [plan_id=256279]"];
subgraph cluster8 {
isCluster="true";
id="cluster8";
label="WholeStageCodegen (14)\n \nduration: total (min, med, max (stageId: taskId))\n401 ms (0 ms, 39 ms, 41 ms (stage 45993.0: task 128768))";
tooltip="WholeStageCodegen (14)";
9 [id="node9" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build total (min, med, max (stageId: taskId))<br>16 ms (0 ms, 1 ms, 3 ms (stage 45993.0: task 128769))<br>peak memory total (min, med, max (stageId: taskId))<br>5.0 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 45993.0: task 128768))<br>number of output rows: 11<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[shardId#589610, resultSeparationId#597718L], functions=[])"];
}
10 [id="node10" labelType="html" label="<b>ObjectHashAggregate</b><br><br>number of output rows: 14<br>time in aggregation build total (min, med, max (stageId: taskId))<br>344 ms (0 ms, 32 ms, 37 ms (stage 45993.0: task 128773))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 45993.0: task 128768))<br>number of sort fallback tasks: 0" tooltip="ObjectHashAggregate(keys=[shardId#589610, orderProposalId#590323L], functions=[collect_list(parentItems#594443, 0, 0)])"];
11 [id="node11" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 21<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 21<br>local bytes read total (min, med, max (stageId: taskId))<br>30.8 KiB (1568.0 B, 2012.0 B, 8.2 KiB (stage 45993.0: task 128776))<br>merged fetch fallback count: 0<br>local blocks read: 14<br>remote merged chunks fetched: 0<br>remote blocks read: 6<br>data size total (min, med, max (stageId: taskId))<br>335.4 KiB (8.4 KiB, 30.7 KiB, 48.5 KiB (stage 45992.0: task 128758))<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time total (min, med, max (stageId: taskId))<br>5 ms (0 ms, 0 ms, 0 ms (stage 45992.0: task 128752))<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time total (min, med, max (stageId: taskId))<br>0 ms (0 ms, 0 ms, 0 ms (stage 45993.0: task 128768))<br>remote bytes read total (min, med, max (stageId: taskId))<br>12.9 KiB (2.5 KiB, 3.6 KiB, 4.2 KiB (stage 45993.0: task 128769))<br>number of partitions: 20<br>remote reqs duration total (min, med, max (stageId: taskId))<br>0 ms (0 ms, 0 ms, 0 ms (stage 45993.0: task 128774))<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>43.6 KiB (1568.0 B, 3.7 KiB, 6.3 KiB (stage 45992.0: task 128758))" tooltip="Exchange hashpartitioning(shardId#589610, orderProposalId#590323L, 20), ENSURE_REQUIREMENTS, [plan_id=256274]"];
12 [id="node12" labelType="html" label="<b>ObjectHashAggregate</b><br><br>number of output rows: 21<br>time in aggregation build total (min, med, max (stageId: taskId))<br>10 ms (0 ms, 0 ms, 2 ms (stage 45992.0: task 128747))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 45992.0: task 128749))<br>number of sort fallback tasks: 0" tooltip="ObjectHashAggregate(keys=[shardId#589610, orderProposalId#590323L], functions=[partial_collect_list(parentItems#594443, 0, 0)])"];
13 [id="node13" labelType="html" label="<b>ObjectHashAggregate</b><br><br>number of output rows: 23<br>time in aggregation build total (min, med, max (stageId: taskId))<br>349 ms (0 ms, 32 ms, 36 ms (stage 45992.0: task 128750))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 45992.0: task 128749))<br>number of sort fallback tasks: 0" tooltip="ObjectHashAggregate(keys=[shardId#589610, orderProposalId#590323L, splitIndicator#590342L, orderProposalItemGroupId#590347], functions=[collect_list(parentItem#594390, 0, 0)])"];
14 [id="node14" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 171<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 171<br>local bytes read total (min, med, max (stageId: taskId))<br>75.2 KiB (2.0 KiB, 7.3 KiB, 9.2 KiB (stage 45992.0: task 128751))<br>merged fetch fallback count: 0<br>local blocks read: 63<br>remote merged chunks fetched: 0<br>remote blocks read: 67<br>data size total (min, med, max (stageId: taskId))<br>349.3 KiB (5.1 KiB, 17.0 KiB, 27.2 KiB (stage 45991.0: task 128745))<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time total (min, med, max (stageId: taskId))<br>12 ms (0 ms, 0 ms, 0 ms (stage 45991.0: task 128727))<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time total (min, med, max (stageId: taskId))<br>0 ms (0 ms, 0 ms, 0 ms (stage 45992.0: task 128749))<br>remote bytes read total (min, med, max (stageId: taskId))<br>76.2 KiB (1038.0 B, 7.2 KiB, 10.8 KiB (stage 45992.0: task 128758))<br>number of partitions: 20<br>remote reqs duration total (min, med, max (stageId: taskId))<br>7 ms (0 ms, 1 ms, 1 ms (stage 45992.0: task 128749))<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>151.4 KiB (3.0 KiB, 8.0 KiB, 12.0 KiB (stage 45991.0: task 128745))" tooltip="Exchange hashpartitioning(shardId#589610, orderProposalId#590323L, splitIndicator#590342L, orderProposalItemGroupId#590347, 20), ENSURE_REQUIREMENTS, [plan_id=256271]"];
15 [id="node15" labelType="html" label="<b>ObjectHashAggregate</b><br><br>number of output rows: 171<br>time in aggregation build total (min, med, max (stageId: taskId))<br>1.1 s (2 ms, 107 ms, 108 ms (stage 45991.0: task 128735))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 45991.0: task 128733))<br>number of sort fallback tasks: 0" tooltip="ObjectHashAggregate(keys=[shardId#589610, orderProposalId#590323L, splitIndicator#590342L, orderProposalItemGroupId#590347], functions=[partial_collect_list(parentItem#594390, 0, 0)])"];
16 [id="node16" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#589610, orderProposalId#590323L, splitIndicator#590342L, orderProposalItemGroupId#590347, struct(itemId, 123456, itemGroupId, 123456, supplier, supplier#590326, supplyingPlant, supplyingPlant#590330, productGroup, productGroup#590331, product, product#590332, plant, plant#590327, supplierSubRange, subrange#590329, sourceOfSupplyUuid, sourceOfSupplyUuid#590337, deliveryDateTime, deliveryDateTime#590328, unitPrice, netPriceAmount#590359, unitPriceCurrency, netPriceCurrencyCode#590360, unitPriceQuantity, ... 37 more fields) AS parentItem#594390]"];
17 [id="node17" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#589610, qty#590124, orderProposalId#590323L, supplier#590326, supplyingPlant#590330, productGroup#590331, product#590332, plant#590327, subrange#590329, deliveryDateTime#590328, availabilityDateTime#590334, nextAvailabilityDateTime#590335, logisticUnits#590350, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid#590352, splitIndicator#590342L, netPriceAmount#590359, netPriceCurrencyCode#590360, netPriceQuantity#590361, netPriceQuantityUom#590362, netPriceQuantityUomUuid#590363, sourceOfSupplyUuid#590337, orderProposalItemGroupId#590347, optimizationGroups#590366, measurements#590364, ... 7 more fields]"];
subgraph cluster18 {
isCluster="true";
id="cluster18";
label="WholeStageCodegen (13)\n \nduration: total (min, med, max (stageId: taskId))\n2.5 s (22 ms, 223 ms, 227 ms (stage 45991.0: task 128735))";
tooltip="WholeStageCodegen (13)";
19 [id="node19" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#589610, quantityAfterProdPlantOptimization#590123, qty#590124, orderProposalId#590323L, supplier#590326, supplyingPlant#590330, productGroup#590331, product#590332, plant#590327, subrange#590329, deliveryDateTime#590328, availabilityDateTime#590334, nextAvailabilityDateTime#590335, logisticUnits#590350, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid#590352, splitIndicator#590342L, netPriceAmount#590359, netPriceCurrencyCode#590360, netPriceQuantity#590361, netPriceQuantityUom#590362, netPriceQuantityUomUuid#590363, sourceOfSupplyUuid#590337, minimumOrderQuantity#590353, orderProposalItemGroupId#590347, ... 6 more fields]"];
20 [id="node20" labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 205<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 45991.0: task 128733))" tooltip="SortMergeJoin [shardId#589610, worklistShardItemId#590122L], [shardId#593759, worklistShardItemId#593760L], LeftOuter"];
}
subgraph cluster21 {
isCluster="true";
id="cluster21";
label="WholeStageCodegen (10)\n \nduration: total (min, med, max (stageId: taskId))\n3.6 s (24 ms, 319 ms, 347 ms (stage 45991.0: task 128736))";
tooltip="WholeStageCodegen (10)";
22 [id="node22" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#589610, worklistShardItemId#590122L, quantityAfterProdPlantOptimization#590123, qty#590124, orderProposalId#590323L, supplier#590326, supplyingPlant#590330, productGroup#590331, product#590332, plant#590327, subrange#590329, deliveryDateTime#590328, availabilityDateTime#590334, nextAvailabilityDateTime#590335, constraintValues#590356, constraintOperators#590355, constraintLabels#590354, logisticUnits#590350, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid#590352, splitIndicator#590342L, netPriceAmount#590359, netPriceCurrencyCode#590360, netPriceQuantity#590361, netPriceQuantityUom#590362, ... 8 more fields]"];
23 [id="node23" labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 205<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 45991.0: task 128733))" tooltip="SortMergeJoin [shardId#589610, worklistShardItemId#590122L], [shardId#593746, worklistShardItemId#593747L], LeftOuter"];
}
subgraph cluster24 {
isCluster="true";
id="cluster24";
label="WholeStageCodegen (7)\n \nduration: total (min, med, max (stageId: taskId))\n4.6 s (26 ms, 407 ms, 437 ms (stage 45991.0: task 128736))";
tooltip="WholeStageCodegen (7)";
25 [id="node25" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#589610, worklistShardItemId#590122L, quantityAfterProdPlantOptimization#590123, qty#590124, orderProposalId#590323L, supplier#590326, supplyingPlant#590330, productGroup#590331, product#590332, plant#590327, subrange#590329, deliveryDateTime#590328, availabilityDateTime#590334, nextAvailabilityDateTime#590335, constraintValues#590356, constraintOperators#590355, constraintLabels#590354, logisticUnits#590350, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid#590352, splitIndicator#590342L, netPriceAmount#590359, netPriceCurrencyCode#590360, netPriceQuantity#590361, netPriceQuantityUom#590362, ... 7 more fields]"];
26 [id="node26" labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 205<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 45991.0: task 128733))" tooltip="SortMergeJoin [shardId#589610, worklistShardItemId#590122L], [shardId#593730, worklistShardItemId#593731L], LeftOuter"];
}
subgraph cluster27 {
isCluster="true";
id="cluster27";
label="WholeStageCodegen (4)\n \nduration: total (min, med, max (stageId: taskId))\n5.7 s (27 ms, 517 ms, 549 ms (stage 45991.0: task 128736))";
tooltip="WholeStageCodegen (4)";
28 [id="node28" labelType="html" label="<b>Sort</b><br><br>sort time total (min, med, max (stageId: taskId))<br>0 ms (0 ms, 0 ms, 0 ms (stage 45991.0: task 128733))<br>peak memory total (min, med, max (stageId: taskId))<br>41.3 MiB (2.1 MiB, 2.1 MiB, 2.1 MiB (stage 45991.0: task 128733))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 45991.0: task 128733))" tooltip="Sort [shardId#589610 ASC NULLS FIRST, worklistShardItemId#590122L ASC NULLS FIRST], false, 0"];
}
29 [id="node29" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 205<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 205<br>local bytes read total (min, med, max (stageId: taskId))<br>59.7 KiB (768.0 B, 3.0 KiB, 5.7 KiB (stage 45991.0: task 128745))<br>merged fetch fallback count: 0<br>local blocks read: 56<br>remote merged chunks fetched: 0<br>remote blocks read: 48<br>data size total (min, med, max (stageId: taskId))<br>235.8 KiB (7.5 KiB, 23.0 KiB, 69.4 KiB (stage 45988.0: task 128703))<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time total (min, med, max (stageId: taskId))<br>8 ms (0 ms, 0 ms, 1 ms (stage 45988.0: task 128681))<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time total (min, med, max (stageId: taskId))<br>0 ms (0 ms, 0 ms, 0 ms (stage 45991.0: task 128733))<br>remote bytes read total (min, med, max (stageId: taskId))<br>51.3 KiB (910.0 B, 2.7 KiB, 4.5 KiB (stage 45991.0: task 128735))<br>number of partitions: 20<br>remote reqs duration total (min, med, max (stageId: taskId))<br>4 ms (0 ms, 0 ms, 1 ms (stage 45991.0: task 128733))<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>111.0 KiB (5.5 KiB, 10.8 KiB, 25.5 KiB (stage 45988.0: task 128703))" tooltip="Exchange hashpartitioning(shardId#589610, worklistShardItemId#590122L, 20), ENSURE_REQUIREMENTS, [plan_id=256230]"];
subgraph cluster30 {
isCluster="true";
id="cluster30";
label="WholeStageCodegen (3)\n \nduration: total (min, med, max (stageId: taskId))\n516 ms (0 ms, 6 ms, 102 ms (stage 45988.0: task 128676))";
tooltip="WholeStageCodegen (3)";
31 [id="node31" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#589610, worklistShardItemId#590122L, quantityAfterProdPlantOptimization#590123, qty#590124, orderProposalId#590323L, supplier#590326, supplyingPlant#590330, productGroup#590331, product#590332, plant#590327, subrange#590329, deliveryDateTime#590328, availabilityDateTime#590334, nextAvailabilityDateTime#590335, constraintValues#590356, constraintOperators#590355, constraintLabels#590354, logisticUnits#590350, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid#590352, splitIndicator#590342L, netPriceAmount#590359, netPriceCurrencyCode#590360, netPriceQuantity#590361, netPriceQuantityUom#590362, ... 6 more fields]"];
32 [id="node32" labelType="html" label="<b>Filter</b><br><br>number of output rows: 205" tooltip="Filter NOT (isFallbackOrderOnly#590340 <=> true)"];
33 [id="node33" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 205" tooltip="BroadcastHashJoin [worklistShardItemId#590122L], [worklistShardItemId#590346L], LeftOuter, BuildRight, (shardId#589610 = 0_1_10000002107), false"];
34 [id="node34" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#589610, item#590121.worklistShardItemId AS worklistShardItemId#590122L, item#590121.quantityAfterProdPlantOptimization AS quantityAfterProdPlantOptimization#590123, item#590121.qty AS qty#590124]"];
35 [id="node35" labelType="html" label="<b>Generate</b><br><br>number of output rows: 205" tooltip="Generate explode(items#589612), [shardId#589610], false, [item#590121]"];
36 [id="node36" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#589610, items#589612]"];
37 [id="node37" labelType="html" label="<b>Filter</b><br><br>number of output rows: 14" tooltip="Filter ((isnotnull(shardId#589610) AND (shardId#589610 = 0_1_10000002107)) AND ((size(items#589612, true) > 0) AND isnotnull(items#589612)))"];
38 [id="node38" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 14" tooltip="Scan ExistingRDD[shardId#589610,orderProposalId#589611L,items#589612,optimizationGroups#589613,isOptimal#589614,lastModified#589615,optimizationInsights#589616]"];
}
39 [id="node39" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 0 ms<br>time to build: 1 ms<br>time to collect: 436 ms<br>number of output rows: 205<br>data size: 1032.0 KiB" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(input[0, bigint, true]),false), [plan_id=256224]"];
subgraph cluster40 {
isCluster="true";
id="cluster40";
label="WholeStageCodegen (2)\n \nduration: total (min, med, max (stageId: taskId))\n28 ms (0 ms, 1 ms, 3 ms (stage 45934.0: task 128628))";
tooltip="WholeStageCodegen (2)";
41 [id="node41" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [worklistShardItemId#590346L, orderProposalId#590323L, orderProposalItemGroupId#590347, splitIndicator#590342L, sourceOfSupplyUuid#590337, supplier#590326, subrange#590329, product#590332, plant#590327, deliveryDateTime#590328, availabilityDateTime#590334, nextAvailabilityDateTime#590335, isFallbackOrderOnly#590340, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid#590352, netPriceQuantity#590361, netPriceQuantityUom#590362, netPriceQuantityUomUuid#590363, netPriceAmount#590359, netPriceCurrencyCode#590360, measurements#590364, minimumOrderQuantity#590353, constraintLabels#590354, constraintOperators#590355, constraintValues#590356, ... 4 more fields]"];
}
42 [id="node42" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 205<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 205<br>local bytes read total (min, med, max (stageId: taskId))<br>88.6 KiB (1296.0 B, 4.6 KiB, 8.3 KiB (stage 45934.0: task 128638))<br>merged fetch fallback count: 0<br>local blocks read: 102<br>remote merged chunks fetched: 0<br>remote blocks read: 72<br>data size total (min, med, max (stageId: taskId))<br>229.4 KiB (4.4 KiB, 9.6 KiB, 12.4 KiB (stage 45933.0: task 128603))<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time total (min, med, max (stageId: taskId))<br>14 ms (0 ms, 0 ms, 0 ms (stage 45933.0: task 128619))<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time total (min, med, max (stageId: taskId))<br>0 ms (0 ms, 0 ms, 0 ms (stage 45934.0: task 128627))<br>remote bytes read total (min, med, max (stageId: taskId))<br>60.5 KiB (821.0 B, 2.7 KiB, 6.7 KiB (stage 45934.0: task 128636))<br>number of partitions: 20<br>remote reqs duration total (min, med, max (stageId: taskId))<br>9 ms (0 ms, 0 ms, 1 ms (stage 45934.0: task 128635))<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>149.2 KiB (3.2 KiB, 6.2 KiB, 8.4 KiB (stage 45933.0: task 128603))" tooltip="Exchange hashpartitioning(worklistShardItemId#590346L, 20), REPARTITION_BY_NUM, [plan_id=256220]"];
subgraph cluster43 {
isCluster="true";
id="cluster43";
label="WholeStageCodegen (1)\n \nduration: total (min, med, max (stageId: taskId))\n2.7 s (72 ms, 100 ms, 208 ms (stage 45933.0: task 128603))";
tooltip="WholeStageCodegen (1)";
44 [id="node44" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [orderProposalId#590323L, supplier#590326, plant#590327, deliveryDateTime#590328, subrange#590329, supplyingPlant#590330, productGroup#590331, product#590332, availabilityDateTime#590334, nextAvailabilityDateTime#590335, sourceOfSupplyUuid#590337, isFallbackOrderOnly#590340, splitIndicator#590342L, worklistShardItemId#590346L, orderProposalItemGroupId#590347, logisticUnits#590350, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid#590352, minimumOrderQuantity#590353, constraintLabels#590354, constraintOperators#590355, constraintValues#590356, netPriceAmount#590359, netPriceCurrencyCode#590360, netPriceQuantity#590361, ... 4 more fields]"];
45 [id="node45" labelType="html" label="<b>Filter</b><br><br>number of output rows: 205" tooltip="Filter isnotnull(worklistShardItemId#590346L)"];
46 [id="node46" labelType="html" label="<b>ColumnarToRow</b><br><br>number of output rows: 205<br>number of input batches: 25" tooltip="ColumnarToRow"];
}
47 [id="node47" labelType="html" label="<b>Scan parquet </b><br><br>number of files read: 25<br>scan time total (min, med, max (stageId: taskId))<br>2.4 s (70 ms, 95 ms, 177 ms (stage 45933.0: task 128603))<br>dynamic partition pruning time: 0 ms<br>metadata time: 0 ms<br>size of files read: 520.6 KiB<br>number of output rows: 205<br>number of partitions read: 1" tooltip="FileScan parquet [orderProposalId#590323L,supplier#590326,plant#590327,deliveryDateTime#590328,subrange#590329,supplyingPlant#590330,productGroup#590331,product#590332,availabilityDateTime#590334,nextAvailabilityDateTime#590335,sourceOfSupplyUuid#590337,isFallbackOrderOnly#590340,splitIndicator#590342L,worklistShardItemId#590346L,orderProposalItemGroupId#590347,logisticUnits#590350,orderQuantityBaseUom#590351,orderQuantityBaseUomUuid#590352,minimumOrderQuantity#590353,constraintLabels#590354,constraintOperators#590355,constraintValues#590356,netPriceAmount#590359,netPriceCurrencyCode#590360,netPriceQuantity#590361,... 6 more fields] Batched: true, DataFilters: [isnotnull(worklistShardItemId#590346L)], Format: Parquet, Location: PreparedDeltaFileIndex(1 paths)[hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20...., PartitionFilters: [isnotnull(shardId#590367), isnotnull(sequenceId#590345), (shardId#590367 = 0_1_10000002107), (se..., PushedFilters: [IsNotNull(worklistShardItemId)], ReadSchema: struct<orderProposalId:bigint,supplier:string,plant:string,deliveryDateTime:timestamp,subrange:st..."];
subgraph cluster48 {
isCluster="true";
id="cluster48";
label="WholeStageCodegen (6)\n \nduration: total (min, med, max (stageId: taskId))\n4.9 s (26 ms, 442 ms, 474 ms (stage 45991.0: task 128736))";
tooltip="WholeStageCodegen (6)";
49 [id="node49" labelType="html" label="<b>Sort</b><br><br>sort time total (min, med, max (stageId: taskId))<br>0 ms (0 ms, 0 ms, 0 ms (stage 45991.0: task 128733))<br>peak memory total (min, med, max (stageId: taskId))<br>41.3 MiB (2.1 MiB, 2.1 MiB, 2.1 MiB (stage 45991.0: task 128733))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 45991.0: task 128733))" tooltip="Sort [shardId#593730 ASC NULLS FIRST, worklistShardItemId#593731L ASC NULLS FIRST], false, 0"];
}
50 [id="node50" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 205<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 205<br>local bytes read total (min, med, max (stageId: taskId))<br>47.5 KiB (576.0 B, 2.2 KiB, 5.2 KiB (stage 45991.0: task 128736))<br>merged fetch fallback count: 0<br>local blocks read: 83<br>remote merged chunks fetched: 0<br>remote blocks read: 81<br>data size total (min, med, max (stageId: taskId))<br>214.6 KiB (6.3 KiB, 10.5 KiB, 16.8 KiB (stage 45990.0: task 128700))<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time total (min, med, max (stageId: taskId))<br>12 ms (0 ms, 0 ms, 0 ms (stage 45990.0: task 128689))<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time total (min, med, max (stageId: taskId))<br>0 ms (0 ms, 0 ms, 0 ms (stage 45991.0: task 128733))<br>remote bytes read total (min, med, max (stageId: taskId))<br>46.5 KiB (1129.0 B, 2.8 KiB, 4.1 KiB (stage 45991.0: task 128735))<br>number of partitions: 20<br>remote reqs duration total (min, med, max (stageId: taskId))<br>9 ms (0 ms, 0 ms, 1 ms (stage 45991.0: task 128729))<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>94.1 KiB (3.3 KiB, 4.7 KiB, 7.2 KiB (stage 45990.0: task 128700))" tooltip="Exchange hashpartitioning(shardId#593730, worklistShardItemId#593731L, 20), ENSURE_REQUIREMENTS, [plan_id=256236]"];
subgraph cluster51 {
isCluster="true";
id="cluster51";
label="WholeStageCodegen (5)\n \nduration: total (min, med, max (stageId: taskId))\n99 ms (3 ms, 4 ms, 11 ms (stage 45990.0: task 128662))";
tooltip="WholeStageCodegen (5)";
52 [id="node52" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#593730, worklistShardItemId#593731L, coalesce(kpis#593735, []) AS prodLocSpecificKpis#593736]"];
53 [id="node53" labelType="html" label="<b>Filter</b><br><br>number of output rows: 205" tooltip="Filter (((isnull(qty#593732) AND isnull(demandChannel#593733)) AND isnull(demandStream#593734)) AND (((shardId#593730 = 0_1_10000002107) AND isnotnull(shardId#593730)) AND isnotnull(worklistShardItemId#593731L)))"];
54 [id="node54" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 817" tooltip="Scan ExistingRDD[shardId#593730,worklistShardItemId#593731L,qty#593732,demandChannel#593733,demandStream#593734,kpis#593735]"];
}
subgraph cluster55 {
isCluster="true";
id="cluster55";
label="WholeStageCodegen (9)\n \nduration: total (min, med, max (stageId: taskId))\n4.1 s (24 ms, 358 ms, 387 ms (stage 45991.0: task 128736))";
tooltip="WholeStageCodegen (9)";
56 [id="node56" labelType="html" label="<b>Sort</b><br><br>sort time total (min, med, max (stageId: taskId))<br>0 ms (0 ms, 0 ms, 0 ms (stage 45991.0: task 128733))<br>peak memory total (min, med, max (stageId: taskId))<br>41.3 MiB (2.1 MiB, 2.1 MiB, 2.1 MiB (stage 45991.0: task 128733))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 45991.0: task 128733))" tooltip="Sort [shardId#593746 ASC NULLS FIRST, worklistShardItemId#593747L ASC NULLS FIRST], false, 0"];
}
57 [id="node57" labelType="html" label="<b>ObjectHashAggregate</b><br><br>number of output rows: 202<br>time in aggregation build total (min, med, max (stageId: taskId))<br>253 ms (1 ms, 22 ms, 25 ms (stage 45991.0: task 128736))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 45991.0: task 128733))<br>number of sort fallback tasks: 0" tooltip="ObjectHashAggregate(keys=[shardId#593746, worklistShardItemId#593747L], functions=[collect_list(struct(demandChannel, demandChannel#593749, demandStream, demandStream#593750, kpis, kpis#593751), 0, 0)])"];
58 [id="node58" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 202<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 202<br>local bytes read total (min, med, max (stageId: taskId))<br>26.0 KiB (315.0 B, 1274.0 B, 3.1 KiB (stage 45991.0: task 128730))<br>merged fetch fallback count: 0<br>local blocks read: 83<br>remote merged chunks fetched: 0<br>remote blocks read: 71<br>data size total (min, med, max (stageId: taskId))<br>82.1 KiB (2.0 KiB, 4.5 KiB, 6.1 KiB (stage 45987.0: task 128666))<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time total (min, med, max (stageId: taskId))<br>15 ms (0 ms, 0 ms, 1 ms (stage 45987.0: task 128647))<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time total (min, med, max (stageId: taskId))<br>0 ms (0 ms, 0 ms, 0 ms (stage 45991.0: task 128733))<br>remote bytes read total (min, med, max (stageId: taskId))<br>22.6 KiB (313.0 B, 1282.0 B, 2.8 KiB (stage 45991.0: task 128727))<br>number of partitions: 20<br>remote reqs duration total (min, med, max (stageId: taskId))<br>11 ms (0 ms, 1 ms, 1 ms (stage 45991.0: task 128733))<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>48.6 KiB (1306.0 B, 2.5 KiB, 3.8 KiB (stage 45987.0: task 128672))" tooltip="Exchange hashpartitioning(shardId#593746, worklistShardItemId#593747L, 20), ENSURE_REQUIREMENTS, [plan_id=256247]"];
59 [id="node59" labelType="html" label="<b>ObjectHashAggregate</b><br><br>number of output rows: 202<br>time in aggregation build total (min, med, max (stageId: taskId))<br>730 ms (3 ms, 68 ms, 71 ms (stage 45987.0: task 128650))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 45987.0: task 128653))<br>number of sort fallback tasks: 0" tooltip="ObjectHashAggregate(keys=[shardId#593746, worklistShardItemId#593747L], functions=[partial_collect_list(struct(demandChannel, demandChannel#593749, demandStream, demandStream#593750, kpis, kpis#593751), 0, 0)])"];
subgraph cluster60 {
isCluster="true";
id="cluster60";
label="WholeStageCodegen (8)\n \nduration: total (min, med, max (stageId: taskId))\n730 ms (3 ms, 68 ms, 71 ms (stage 45987.0: task 128650))";
tooltip="WholeStageCodegen (8)";
61 [id="node61" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#593746, worklistShardItemId#593747L, demandChannel#593749, demandStream#593750, kpis#593751]"];
62 [id="node62" labelType="html" label="<b>Filter</b><br><br>number of output rows: 202" tooltip="Filter ((((isnull(qty#593748) AND isnotnull(demandChannel#593749)) AND isnotnull(demandStream#593750)) AND (size(kpis#593751, true) > 0)) AND (((shardId#593746 = 0_1_10000002107) AND isnotnull(shardId#593746)) AND isnotnull(worklistShardItemId#593747L)))"];
63 [id="node63" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 817" tooltip="Scan ExistingRDD[shardId#593746,worklistShardItemId#593747L,qty#593748,demandChannel#593749,demandStream#593750,kpis#593751]"];
}
subgraph cluster64 {
isCluster="true";
id="cluster64";
label="WholeStageCodegen (12)\n \nduration: total (min, med, max (stageId: taskId))\n3.0 s (22 ms, 267 ms, 269 ms (stage 45991.0: task 128735))";
tooltip="WholeStageCodegen (12)";
65 [id="node65" labelType="html" label="<b>Sort</b><br><br>sort time total (min, med, max (stageId: taskId))<br>0 ms (0 ms, 0 ms, 0 ms (stage 45991.0: task 128733))<br>peak memory total (min, med, max (stageId: taskId))<br>41.3 MiB (2.1 MiB, 2.1 MiB, 2.1 MiB (stage 45991.0: task 128733))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 45991.0: task 128733))" tooltip="Sort [shardId#593759 ASC NULLS FIRST, worklistShardItemId#593760L ASC NULLS FIRST], false, 0"];
}
66 [id="node66" labelType="html" label="<b>ObjectHashAggregate</b><br><br>number of output rows: 205<br>time in aggregation build total (min, med, max (stageId: taskId))<br>417 ms (1 ms, 26 ms, 53 ms (stage 45991.0: task 128736))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 45991.0: task 128733))<br>number of sort fallback tasks: 0" tooltip="ObjectHashAggregate(keys=[shardId#593759, worklistShardItemId#593760L], functions=[collect_list(struct(qty, qty#593761, kpis, kpis#593764), 0, 0)])"];
67 [id="node67" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 401<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 401<br>local bytes read total (min, med, max (stageId: taskId))<br>61.6 KiB (915.0 B, 2.8 KiB, 6.4 KiB (stage 45991.0: task 128727))<br>merged fetch fallback count: 0<br>local blocks read: 130<br>remote merged chunks fetched: 0<br>remote blocks read: 127<br>data size total (min, med, max (stageId: taskId))<br>255.5 KiB (8.8 KiB, 13.0 KiB, 16.8 KiB (stage 45989.0: task 128712))<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time total (min, med, max (stageId: taskId))<br>15 ms (0 ms, 0 ms, 1 ms (stage 45989.0: task 128661))<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time total (min, med, max (stageId: taskId))<br>0 ms (0 ms, 0 ms, 0 ms (stage 45991.0: task 128733))<br>remote bytes read total (min, med, max (stageId: taskId))<br>61.0 KiB (923.0 B, 2.8 KiB, 6.0 KiB (stage 45991.0: task 128745))<br>number of partitions: 20<br>remote reqs duration total (min, med, max (stageId: taskId))<br>134 ms (0 ms, 0 ms, 26 ms (stage 45991.0: task 128736))<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>122.6 KiB (4.7 KiB, 6.2 KiB, 8.2 KiB (stage 45989.0: task 128712))" tooltip="Exchange hashpartitioning(shardId#593759, worklistShardItemId#593760L, 20), ENSURE_REQUIREMENTS, [plan_id=256259]"];
68 [id="node68" labelType="html" label="<b>ObjectHashAggregate</b><br><br>number of output rows: 401<br>time in aggregation build total (min, med, max (stageId: taskId))<br>75 ms (2 ms, 4 ms, 8 ms (stage 45989.0: task 128661))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 45989.0: task 128658))<br>number of sort fallback tasks: 0" tooltip="ObjectHashAggregate(keys=[shardId#593759, worklistShardItemId#593760L], functions=[partial_collect_list(struct(qty, qty#593761, kpis, kpis#593764), 0, 0)])"];
subgraph cluster69 {
isCluster="true";
id="cluster69";
label="WholeStageCodegen (11)\n \nduration: total (min, med, max (stageId: taskId))\n75 ms (2 ms, 4 ms, 8 ms (stage 45989.0: task 128661))";
tooltip="WholeStageCodegen (11)";
70 [id="node70" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#593759, worklistShardItemId#593760L, qty#593761, kpis#593764]"];
71 [id="node71" labelType="html" label="<b>Filter</b><br><br>number of output rows: 410" tooltip="Filter ((isnotnull(qty#593761) AND isnotnull(kpis#593764)) AND (((shardId#593759 = 0_1_10000002107) AND isnotnull(shardId#593759)) AND isnotnull(worklistShardItemId#593760L)))"];
72 [id="node72" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 817" tooltip="Scan ExistingRDD[shardId#593759,worklistShardItemId#593760L,qty#593761,demandChannel#593762,demandStream#593763,kpis#593764]"];
}
2->1;
3->2;
4->3;
6->4;
7->6;
9->7;
10->9;
11->10;
12->11;
13->12;
14->13;
15->14;
16->15;
17->16;
19->17;
20->19;
22->20;
23->22;
25->23;
26->25;
28->26;
29->28;
31->29;
32->31;
33->32;
34->33;
35->34;
36->35;
37->36;
38->37;
39->33;
41->39;
42->41;
44->42;
45->44;
46->45;
47->46;
49->26;
50->49;
52->50;
53->52;
54->53;
56->23;
57->56;
58->57;
59->58;
61->59;
62->61;
63->62;
65->20;
66->65;
67->66;
68->67;
70->68;
71->70;
72->71;
}
== Physical Plan ==
* HashAggregate (57)
+- * HashAggregate (56)
+- * Project (55)
+- Exchange (54)
+- * HashAggregate (53)
+- Exchange (52)
+- * HashAggregate (51)
+- ObjectHashAggregate (50)
+- Exchange (49)
+- ObjectHashAggregate (48)
+- ObjectHashAggregate (47)
+- Exchange (46)
+- ObjectHashAggregate (45)
+- Project (44)
+- Project (43)
+- * Project (42)
+- * SortMergeJoin LeftOuter (41)
:- * Project (33)
: +- * SortMergeJoin LeftOuter (32)
: :- * Project (24)
: : +- * SortMergeJoin LeftOuter (23)
: : :- * Sort (17)
: : : +- Exchange (16)
: : : +- * Project (15)
: : : +- * Filter (14)
: : : +- * BroadcastHashJoin LeftOuter BuildRight (13)
: : : :- * Project (5)
: : : : +- * Generate (4)
: : : : +- * Project (3)
: : : : +- * Filter (2)
: : : : +- * Scan ExistingRDD (1)
: : : +- BroadcastExchange (12)
: : : +- * Project (11)
: : : +- Exchange (10)
: : : +- * Project (9)
: : : +- * Filter (8)
: : : +- * ColumnarToRow (7)
: : : +- Scan parquet (6)
: : +- * Sort (22)
: : +- Exchange (21)
: : +- * Project (20)
: : +- * Filter (19)
: : +- * Scan ExistingRDD (18)
: +- * Sort (31)
: +- ObjectHashAggregate (30)
: +- Exchange (29)
: +- ObjectHashAggregate (28)
: +- * Project (27)
: +- * Filter (26)
: +- * Scan ExistingRDD (25)
+- * Sort (40)
+- ObjectHashAggregate (39)
+- Exchange (38)
+- ObjectHashAggregate (37)
+- * Project (36)
+- * Filter (35)
+- * Scan ExistingRDD (34)
(1) Scan ExistingRDD [codegen id : 3]
Output [7]: [shardId#589610, orderProposalId#589611L, items#589612, optimizationGroups#589613, isOptimal#589614, lastModified#589615, optimizationInsights#589616]
Arguments: [shardId#589610, orderProposalId#589611L, items#589612, optimizationGroups#589613, isOptimal#589614, lastModified#589615, optimizationInsights#589616], MapPartitionsRDD[28419] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(2) Filter [codegen id : 3]
Input [7]: [shardId#589610, orderProposalId#589611L, items#589612, optimizationGroups#589613, isOptimal#589614, lastModified#589615, optimizationInsights#589616]
Condition : ((isnotnull(shardId#589610) AND (shardId#589610 = 0_1_10000002107)) AND ((size(items#589612, true) > 0) AND isnotnull(items#589612)))
(3) Project [codegen id : 3]
Output [2]: [shardId#589610, items#589612]
Input [7]: [shardId#589610, orderProposalId#589611L, items#589612, optimizationGroups#589613, isOptimal#589614, lastModified#589615, optimizationInsights#589616]
(4) Generate [codegen id : 3]
Input [2]: [shardId#589610, items#589612]
Arguments: explode(items#589612), [shardId#589610], false, [item#590121]
(5) Project [codegen id : 3]
Output [4]: [shardId#589610, item#590121.worklistShardItemId AS worklistShardItemId#590122L, item#590121.quantityAfterProdPlantOptimization AS quantityAfterProdPlantOptimization#590123, item#590121.qty AS qty#590124]
Input [2]: [shardId#589610, item#590121]
(6) Scan parquet
Output [31]: [orderProposalId#590323L, supplier#590326, plant#590327, deliveryDateTime#590328, subrange#590329, supplyingPlant#590330, productGroup#590331, product#590332, availabilityDateTime#590334, nextAvailabilityDateTime#590335, sourceOfSupplyUuid#590337, isFallbackOrderOnly#590340, splitIndicator#590342L, worklistShardItemId#590346L, orderProposalItemGroupId#590347, logisticUnits#590350, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid#590352, minimumOrderQuantity#590353, constraintLabels#590354, constraintOperators#590355, constraintValues#590356, netPriceAmount#590359, netPriceCurrencyCode#590360, netPriceQuantity#590361, netPriceQuantityUom#590362, netPriceQuantityUomUuid#590363, measurements#590364, optimizationGroups#590366, shardId#590367, sequenceId#590345]
Batched: true
Location: PreparedDeltaFileIndex [hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-qty-opt-service/internal/prod-plant-snapshot/10000002107]
PartitionFilters: [isnotnull(shardId#590367), isnotnull(sequenceId#590345), (shardId#590367 = 0_1_10000002107), (sequenceId#590345 = 2)]
PushedFilters: [IsNotNull(worklistShardItemId)]
ReadSchema: struct<orderProposalId:bigint,supplier:string,plant:string,deliveryDateTime:timestamp,subrange:string,supplyingPlant:string,productGroup:string,product:string,availabilityDateTime:timestamp,nextAvailabilityDateTime:timestamp,sourceOfSupplyUuid:string,isFallbackOrderOnly:boolean,splitIndicator:bigint,worklistShardItemId:bigint,orderProposalItemGroupId:string,logisticUnits:array<struct<uom:string,uomUuid:string,numerator:int,denominator:int,isOrderUnit:boolean,isPreferred:boolean>>,orderQuantityBaseUom:string,orderQuantityBaseUomUuid:string,minimumOrderQuantity:double,constraintLabels:array<string>,constraintOperators:array<string>,constraintValues:array<double>,netPriceAmount:double,netPriceCurrencyCode:string,netPriceQuantity:double,netPriceQuantityUom:string,netPriceQuantityUomUuid:string,measurements:array<struct<value:double,dimensionType:int,dimensionCode:string,dimensionCodeUuid:string,isoCode:string>>,optimizationGroups:array<string>>
(7) ColumnarToRow [codegen id : 1]
Input [31]: [orderProposalId#590323L, supplier#590326, plant#590327, deliveryDateTime#590328, subrange#590329, supplyingPlant#590330, productGroup#590331, product#590332, availabilityDateTime#590334, nextAvailabilityDateTime#590335, sourceOfSupplyUuid#590337, isFallbackOrderOnly#590340, splitIndicator#590342L, worklistShardItemId#590346L, orderProposalItemGroupId#590347, logisticUnits#590350, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid#590352, minimumOrderQuantity#590353, constraintLabels#590354, constraintOperators#590355, constraintValues#590356, netPriceAmount#590359, netPriceCurrencyCode#590360, netPriceQuantity#590361, netPriceQuantityUom#590362, netPriceQuantityUomUuid#590363, measurements#590364, optimizationGroups#590366, shardId#590367, sequenceId#590345]
(8) Filter [codegen id : 1]
Input [31]: [orderProposalId#590323L, supplier#590326, plant#590327, deliveryDateTime#590328, subrange#590329, supplyingPlant#590330, productGroup#590331, product#590332, availabilityDateTime#590334, nextAvailabilityDateTime#590335, sourceOfSupplyUuid#590337, isFallbackOrderOnly#590340, splitIndicator#590342L, worklistShardItemId#590346L, orderProposalItemGroupId#590347, logisticUnits#590350, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid#590352, minimumOrderQuantity#590353, constraintLabels#590354, constraintOperators#590355, constraintValues#590356, netPriceAmount#590359, netPriceCurrencyCode#590360, netPriceQuantity#590361, netPriceQuantityUom#590362, netPriceQuantityUomUuid#590363, measurements#590364, optimizationGroups#590366, shardId#590367, sequenceId#590345]
Condition : isnotnull(worklistShardItemId#590346L)
(9) Project [codegen id : 1]
Output [29]: [orderProposalId#590323L, supplier#590326, plant#590327, deliveryDateTime#590328, subrange#590329, supplyingPlant#590330, productGroup#590331, product#590332, availabilityDateTime#590334, nextAvailabilityDateTime#590335, sourceOfSupplyUuid#590337, isFallbackOrderOnly#590340, splitIndicator#590342L, worklistShardItemId#590346L, orderProposalItemGroupId#590347, logisticUnits#590350, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid#590352, minimumOrderQuantity#590353, constraintLabels#590354, constraintOperators#590355, constraintValues#590356, netPriceAmount#590359, netPriceCurrencyCode#590360, netPriceQuantity#590361, netPriceQuantityUom#590362, netPriceQuantityUomUuid#590363, measurements#590364, optimizationGroups#590366]
Input [31]: [orderProposalId#590323L, supplier#590326, plant#590327, deliveryDateTime#590328, subrange#590329, supplyingPlant#590330, productGroup#590331, product#590332, availabilityDateTime#590334, nextAvailabilityDateTime#590335, sourceOfSupplyUuid#590337, isFallbackOrderOnly#590340, splitIndicator#590342L, worklistShardItemId#590346L, orderProposalItemGroupId#590347, logisticUnits#590350, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid#590352, minimumOrderQuantity#590353, constraintLabels#590354, constraintOperators#590355, constraintValues#590356, netPriceAmount#590359, netPriceCurrencyCode#590360, netPriceQuantity#590361, netPriceQuantityUom#590362, netPriceQuantityUomUuid#590363, measurements#590364, optimizationGroups#590366, shardId#590367, sequenceId#590345]
(10) Exchange
Input [29]: [orderProposalId#590323L, supplier#590326, plant#590327, deliveryDateTime#590328, subrange#590329, supplyingPlant#590330, productGroup#590331, product#590332, availabilityDateTime#590334, nextAvailabilityDateTime#590335, sourceOfSupplyUuid#590337, isFallbackOrderOnly#590340, splitIndicator#590342L, worklistShardItemId#590346L, orderProposalItemGroupId#590347, logisticUnits#590350, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid#590352, minimumOrderQuantity#590353, constraintLabels#590354, constraintOperators#590355, constraintValues#590356, netPriceAmount#590359, netPriceCurrencyCode#590360, netPriceQuantity#590361, netPriceQuantityUom#590362, netPriceQuantityUomUuid#590363, measurements#590364, optimizationGroups#590366]
Arguments: hashpartitioning(worklistShardItemId#590346L, 20), REPARTITION_BY_NUM, [plan_id=256220]
(11) Project [codegen id : 2]
Output [29]: [worklistShardItemId#590346L, orderProposalId#590323L, orderProposalItemGroupId#590347, splitIndicator#590342L, sourceOfSupplyUuid#590337, supplier#590326, subrange#590329, product#590332, plant#590327, deliveryDateTime#590328, availabilityDateTime#590334, nextAvailabilityDateTime#590335, isFallbackOrderOnly#590340, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid#590352, netPriceQuantity#590361, netPriceQuantityUom#590362, netPriceQuantityUomUuid#590363, netPriceAmount#590359, netPriceCurrencyCode#590360, measurements#590364, minimumOrderQuantity#590353, constraintLabels#590354, constraintOperators#590355, constraintValues#590356, logisticUnits#590350, optimizationGroups#590366, supplyingPlant#590330, productGroup#590331]
Input [29]: [orderProposalId#590323L, supplier#590326, plant#590327, deliveryDateTime#590328, subrange#590329, supplyingPlant#590330, productGroup#590331, product#590332, availabilityDateTime#590334, nextAvailabilityDateTime#590335, sourceOfSupplyUuid#590337, isFallbackOrderOnly#590340, splitIndicator#590342L, worklistShardItemId#590346L, orderProposalItemGroupId#590347, logisticUnits#590350, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid#590352, minimumOrderQuantity#590353, constraintLabels#590354, constraintOperators#590355, constraintValues#590356, netPriceAmount#590359, netPriceCurrencyCode#590360, netPriceQuantity#590361, netPriceQuantityUom#590362, netPriceQuantityUomUuid#590363, measurements#590364, optimizationGroups#590366]
(12) BroadcastExchange
Input [29]: [worklistShardItemId#590346L, orderProposalId#590323L, orderProposalItemGroupId#590347, splitIndicator#590342L, sourceOfSupplyUuid#590337, supplier#590326, subrange#590329, product#590332, plant#590327, deliveryDateTime#590328, availabilityDateTime#590334, nextAvailabilityDateTime#590335, isFallbackOrderOnly#590340, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid#590352, netPriceQuantity#590361, netPriceQuantityUom#590362, netPriceQuantityUomUuid#590363, netPriceAmount#590359, netPriceCurrencyCode#590360, measurements#590364, minimumOrderQuantity#590353, constraintLabels#590354, constraintOperators#590355, constraintValues#590356, logisticUnits#590350, optimizationGroups#590366, supplyingPlant#590330, productGroup#590331]
Arguments: HashedRelationBroadcastMode(List(input[0, bigint, true]),false), [plan_id=256224]
(13) BroadcastHashJoin [codegen id : 3]
Left keys [1]: [worklistShardItemId#590122L]
Right keys [1]: [worklistShardItemId#590346L]
Join type: LeftOuter
Join condition: (shardId#589610 = 0_1_10000002107)
(14) Filter [codegen id : 3]
Input [33]: [shardId#589610, worklistShardItemId#590122L, quantityAfterProdPlantOptimization#590123, qty#590124, worklistShardItemId#590346L, orderProposalId#590323L, orderProposalItemGroupId#590347, splitIndicator#590342L, sourceOfSupplyUuid#590337, supplier#590326, subrange#590329, product#590332, plant#590327, deliveryDateTime#590328, availabilityDateTime#590334, nextAvailabilityDateTime#590335, isFallbackOrderOnly#590340, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid#590352, netPriceQuantity#590361, netPriceQuantityUom#590362, netPriceQuantityUomUuid#590363, netPriceAmount#590359, netPriceCurrencyCode#590360, measurements#590364, minimumOrderQuantity#590353, constraintLabels#590354, constraintOperators#590355, constraintValues#590356, logisticUnits#590350, optimizationGroups#590366, supplyingPlant#590330, productGroup#590331]
Condition : NOT (isFallbackOrderOnly#590340 <=> true)
(15) Project [codegen id : 3]
Output [31]: [shardId#589610, worklistShardItemId#590122L, quantityAfterProdPlantOptimization#590123, qty#590124, orderProposalId#590323L, supplier#590326, supplyingPlant#590330, productGroup#590331, product#590332, plant#590327, subrange#590329, deliveryDateTime#590328, availabilityDateTime#590334, nextAvailabilityDateTime#590335, constraintValues#590356, constraintOperators#590355, constraintLabels#590354, logisticUnits#590350, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid#590352, splitIndicator#590342L, netPriceAmount#590359, netPriceCurrencyCode#590360, netPriceQuantity#590361, netPriceQuantityUom#590362, netPriceQuantityUomUuid#590363, sourceOfSupplyUuid#590337, minimumOrderQuantity#590353, orderProposalItemGroupId#590347, optimizationGroups#590366, measurements#590364]
Input [33]: [shardId#589610, worklistShardItemId#590122L, quantityAfterProdPlantOptimization#590123, qty#590124, worklistShardItemId#590346L, orderProposalId#590323L, orderProposalItemGroupId#590347, splitIndicator#590342L, sourceOfSupplyUuid#590337, supplier#590326, subrange#590329, product#590332, plant#590327, deliveryDateTime#590328, availabilityDateTime#590334, nextAvailabilityDateTime#590335, isFallbackOrderOnly#590340, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid#590352, netPriceQuantity#590361, netPriceQuantityUom#590362, netPriceQuantityUomUuid#590363, netPriceAmount#590359, netPriceCurrencyCode#590360, measurements#590364, minimumOrderQuantity#590353, constraintLabels#590354, constraintOperators#590355, constraintValues#590356, logisticUnits#590350, optimizationGroups#590366, supplyingPlant#590330, productGroup#590331]
(16) Exchange
Input [31]: [shardId#589610, worklistShardItemId#590122L, quantityAfterProdPlantOptimization#590123, qty#590124, orderProposalId#590323L, supplier#590326, supplyingPlant#590330, productGroup#590331, product#590332, plant#590327, subrange#590329, deliveryDateTime#590328, availabilityDateTime#590334, nextAvailabilityDateTime#590335, constraintValues#590356, constraintOperators#590355, constraintLabels#590354, logisticUnits#590350, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid#590352, splitIndicator#590342L, netPriceAmount#590359, netPriceCurrencyCode#590360, netPriceQuantity#590361, netPriceQuantityUom#590362, netPriceQuantityUomUuid#590363, sourceOfSupplyUuid#590337, minimumOrderQuantity#590353, orderProposalItemGroupId#590347, optimizationGroups#590366, measurements#590364]
Arguments: hashpartitioning(shardId#589610, worklistShardItemId#590122L, 20), ENSURE_REQUIREMENTS, [plan_id=256230]
(17) Sort [codegen id : 4]
Input [31]: [shardId#589610, worklistShardItemId#590122L, quantityAfterProdPlantOptimization#590123, qty#590124, orderProposalId#590323L, supplier#590326, supplyingPlant#590330, productGroup#590331, product#590332, plant#590327, subrange#590329, deliveryDateTime#590328, availabilityDateTime#590334, nextAvailabilityDateTime#590335, constraintValues#590356, constraintOperators#590355, constraintLabels#590354, logisticUnits#590350, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid#590352, splitIndicator#590342L, netPriceAmount#590359, netPriceCurrencyCode#590360, netPriceQuantity#590361, netPriceQuantityUom#590362, netPriceQuantityUomUuid#590363, sourceOfSupplyUuid#590337, minimumOrderQuantity#590353, orderProposalItemGroupId#590347, optimizationGroups#590366, measurements#590364]
Arguments: [shardId#589610 ASC NULLS FIRST, worklistShardItemId#590122L ASC NULLS FIRST], false, 0
(18) Scan ExistingRDD [codegen id : 5]
Output [6]: [shardId#593730, worklistShardItemId#593731L, qty#593732, demandChannel#593733, demandStream#593734, kpis#593735]
Arguments: [shardId#593730, worklistShardItemId#593731L, qty#593732, demandChannel#593733, demandStream#593734, kpis#593735], MapPartitionsRDD[28553] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(19) Filter [codegen id : 5]
Input [6]: [shardId#593730, worklistShardItemId#593731L, qty#593732, demandChannel#593733, demandStream#593734, kpis#593735]
Condition : (((isnull(qty#593732) AND isnull(demandChannel#593733)) AND isnull(demandStream#593734)) AND (((shardId#593730 = 0_1_10000002107) AND isnotnull(shardId#593730)) AND isnotnull(worklistShardItemId#593731L)))
(20) Project [codegen id : 5]
Output [3]: [shardId#593730, worklistShardItemId#593731L, coalesce(kpis#593735, []) AS prodLocSpecificKpis#593736]
Input [6]: [shardId#593730, worklistShardItemId#593731L, qty#593732, demandChannel#593733, demandStream#593734, kpis#593735]
(21) Exchange
Input [3]: [shardId#593730, worklistShardItemId#593731L, prodLocSpecificKpis#593736]
Arguments: hashpartitioning(shardId#593730, worklistShardItemId#593731L, 20), ENSURE_REQUIREMENTS, [plan_id=256236]
(22) Sort [codegen id : 6]
Input [3]: [shardId#593730, worklistShardItemId#593731L, prodLocSpecificKpis#593736]
Arguments: [shardId#593730 ASC NULLS FIRST, worklistShardItemId#593731L ASC NULLS FIRST], false, 0
(23) SortMergeJoin [codegen id : 7]
Left keys [2]: [shardId#589610, worklistShardItemId#590122L]
Right keys [2]: [shardId#593730, worklistShardItemId#593731L]
Join type: LeftOuter
Join condition: None
(24) Project [codegen id : 7]
Output [32]: [shardId#589610, worklistShardItemId#590122L, quantityAfterProdPlantOptimization#590123, qty#590124, orderProposalId#590323L, supplier#590326, supplyingPlant#590330, productGroup#590331, product#590332, plant#590327, subrange#590329, deliveryDateTime#590328, availabilityDateTime#590334, nextAvailabilityDateTime#590335, constraintValues#590356, constraintOperators#590355, constraintLabels#590354, logisticUnits#590350, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid#590352, splitIndicator#590342L, netPriceAmount#590359, netPriceCurrencyCode#590360, netPriceQuantity#590361, netPriceQuantityUom#590362, netPriceQuantityUomUuid#590363, sourceOfSupplyUuid#590337, minimumOrderQuantity#590353, orderProposalItemGroupId#590347, optimizationGroups#590366, measurements#590364, coalesce(prodLocSpecificKpis#593736, []) AS prodLocSpecificKpis#593737]
Input [34]: [shardId#589610, worklistShardItemId#590122L, quantityAfterProdPlantOptimization#590123, qty#590124, orderProposalId#590323L, supplier#590326, supplyingPlant#590330, productGroup#590331, product#590332, plant#590327, subrange#590329, deliveryDateTime#590328, availabilityDateTime#590334, nextAvailabilityDateTime#590335, constraintValues#590356, constraintOperators#590355, constraintLabels#590354, logisticUnits#590350, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid#590352, splitIndicator#590342L, netPriceAmount#590359, netPriceCurrencyCode#590360, netPriceQuantity#590361, netPriceQuantityUom#590362, netPriceQuantityUomUuid#590363, sourceOfSupplyUuid#590337, minimumOrderQuantity#590353, orderProposalItemGroupId#590347, optimizationGroups#590366, measurements#590364, shardId#593730, worklistShardItemId#593731L, prodLocSpecificKpis#593736]
(25) Scan ExistingRDD [codegen id : 8]
Output [6]: [shardId#593746, worklistShardItemId#593747L, qty#593748, demandChannel#593749, demandStream#593750, kpis#593751]
Arguments: [shardId#593746, worklistShardItemId#593747L, qty#593748, demandChannel#593749, demandStream#593750, kpis#593751], MapPartitionsRDD[28553] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(26) Filter [codegen id : 8]
Input [6]: [shardId#593746, worklistShardItemId#593747L, qty#593748, demandChannel#593749, demandStream#593750, kpis#593751]
Condition : ((((isnull(qty#593748) AND isnotnull(demandChannel#593749)) AND isnotnull(demandStream#593750)) AND (size(kpis#593751, true) > 0)) AND (((shardId#593746 = 0_1_10000002107) AND isnotnull(shardId#593746)) AND isnotnull(worklistShardItemId#593747L)))
(27) Project [codegen id : 8]
Output [5]: [shardId#593746, worklistShardItemId#593747L, demandChannel#593749, demandStream#593750, kpis#593751]
Input [6]: [shardId#593746, worklistShardItemId#593747L, qty#593748, demandChannel#593749, demandStream#593750, kpis#593751]
(28) ObjectHashAggregate
Input [5]: [shardId#593746, worklistShardItemId#593747L, demandChannel#593749, demandStream#593750, kpis#593751]
Keys [2]: [shardId#593746, worklistShardItemId#593747L]
Functions [1]: [partial_collect_list(struct(demandChannel, demandChannel#593749, demandStream, demandStream#593750, kpis, kpis#593751), 0, 0)]
Aggregate Attributes [1]: [buf#593926]
Results [3]: [shardId#593746, worklistShardItemId#593747L, buf#593927]
(29) Exchange
Input [3]: [shardId#593746, worklistShardItemId#593747L, buf#593927]
Arguments: hashpartitioning(shardId#593746, worklistShardItemId#593747L, 20), ENSURE_REQUIREMENTS, [plan_id=256247]
(30) ObjectHashAggregate
Input [3]: [shardId#593746, worklistShardItemId#593747L, buf#593927]
Keys [2]: [shardId#593746, worklistShardItemId#593747L]
Functions [1]: [collect_list(struct(demandChannel, demandChannel#593749, demandStream, demandStream#593750, kpis, kpis#593751), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(demandChannel, demandChannel#593749, demandStream, demandStream#593750, kpis, kpis#593751), 0, 0)#593745]
Results [3]: [shardId#593746, worklistShardItemId#593747L, collect_list(struct(demandChannel, demandChannel#593749, demandStream, demandStream#593750, kpis, kpis#593751), 0, 0)#593745 AS channelStreamSpecificKpis#593738]
(31) Sort [codegen id : 9]
Input [3]: [shardId#593746, worklistShardItemId#593747L, channelStreamSpecificKpis#593738]
Arguments: [shardId#593746 ASC NULLS FIRST, worklistShardItemId#593747L ASC NULLS FIRST], false, 0
(32) SortMergeJoin [codegen id : 10]
Left keys [2]: [shardId#589610, worklistShardItemId#590122L]
Right keys [2]: [shardId#593746, worklistShardItemId#593747L]
Join type: LeftOuter
Join condition: None
(33) Project [codegen id : 10]
Output [33]: [shardId#589610, worklistShardItemId#590122L, quantityAfterProdPlantOptimization#590123, qty#590124, orderProposalId#590323L, supplier#590326, supplyingPlant#590330, productGroup#590331, product#590332, plant#590327, subrange#590329, deliveryDateTime#590328, availabilityDateTime#590334, nextAvailabilityDateTime#590335, constraintValues#590356, constraintOperators#590355, constraintLabels#590354, logisticUnits#590350, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid#590352, splitIndicator#590342L, netPriceAmount#590359, netPriceCurrencyCode#590360, netPriceQuantity#590361, netPriceQuantityUom#590362, netPriceQuantityUomUuid#590363, sourceOfSupplyUuid#590337, minimumOrderQuantity#590353, orderProposalItemGroupId#590347, optimizationGroups#590366, measurements#590364, prodLocSpecificKpis#593737, coalesce(channelStreamSpecificKpis#593738, []) AS channelStreamSpecificKpis#593752]
Input [35]: [shardId#589610, worklistShardItemId#590122L, quantityAfterProdPlantOptimization#590123, qty#590124, orderProposalId#590323L, supplier#590326, supplyingPlant#590330, productGroup#590331, product#590332, plant#590327, subrange#590329, deliveryDateTime#590328, availabilityDateTime#590334, nextAvailabilityDateTime#590335, constraintValues#590356, constraintOperators#590355, constraintLabels#590354, logisticUnits#590350, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid#590352, splitIndicator#590342L, netPriceAmount#590359, netPriceCurrencyCode#590360, netPriceQuantity#590361, netPriceQuantityUom#590362, netPriceQuantityUomUuid#590363, sourceOfSupplyUuid#590337, minimumOrderQuantity#590353, orderProposalItemGroupId#590347, optimizationGroups#590366, measurements#590364, prodLocSpecificKpis#593737, shardId#593746, worklistShardItemId#593747L, channelStreamSpecificKpis#593738]
(34) Scan ExistingRDD [codegen id : 11]
Output [6]: [shardId#593759, worklistShardItemId#593760L, qty#593761, demandChannel#593762, demandStream#593763, kpis#593764]
Arguments: [shardId#593759, worklistShardItemId#593760L, qty#593761, demandChannel#593762, demandStream#593763, kpis#593764], MapPartitionsRDD[28553] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(35) Filter [codegen id : 11]
Input [6]: [shardId#593759, worklistShardItemId#593760L, qty#593761, demandChannel#593762, demandStream#593763, kpis#593764]
Condition : ((isnotnull(qty#593761) AND isnotnull(kpis#593764)) AND (((shardId#593759 = 0_1_10000002107) AND isnotnull(shardId#593759)) AND isnotnull(worklistShardItemId#593760L)))
(36) Project [codegen id : 11]
Output [4]: [shardId#593759, worklistShardItemId#593760L, qty#593761, kpis#593764]
Input [6]: [shardId#593759, worklistShardItemId#593760L, qty#593761, demandChannel#593762, demandStream#593763, kpis#593764]
(37) ObjectHashAggregate
Input [4]: [shardId#593759, worklistShardItemId#593760L, qty#593761, kpis#593764]
Keys [2]: [shardId#593759, worklistShardItemId#593760L]
Functions [1]: [partial_collect_list(struct(qty, qty#593761, kpis, kpis#593764), 0, 0)]
Aggregate Attributes [1]: [buf#593928]
Results [3]: [shardId#593759, worklistShardItemId#593760L, buf#593929]
(38) Exchange
Input [3]: [shardId#593759, worklistShardItemId#593760L, buf#593929]
Arguments: hashpartitioning(shardId#593759, worklistShardItemId#593760L, 20), ENSURE_REQUIREMENTS, [plan_id=256259]
(39) ObjectHashAggregate
Input [3]: [shardId#593759, worklistShardItemId#593760L, buf#593929]
Keys [2]: [shardId#593759, worklistShardItemId#593760L]
Functions [1]: [collect_list(struct(qty, qty#593761, kpis, kpis#593764), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(qty, qty#593761, kpis, kpis#593764), 0, 0)#593758]
Results [3]: [shardId#593759, worklistShardItemId#593760L, map_from_entries(collect_list(struct(qty, qty#593761, kpis, kpis#593764), 0, 0)#593758) AS quantityKpis#593753]
(40) Sort [codegen id : 12]
Input [3]: [shardId#593759, worklistShardItemId#593760L, quantityKpis#593753]
Arguments: [shardId#593759 ASC NULLS FIRST, worklistShardItemId#593760L ASC NULLS FIRST], false, 0
(41) SortMergeJoin [codegen id : 13]
Left keys [2]: [shardId#589610, worklistShardItemId#590122L]
Right keys [2]: [shardId#593759, worklistShardItemId#593760L]
Join type: LeftOuter
Join condition: None
(42) Project [codegen id : 13]
Output [31]: [shardId#589610, quantityAfterProdPlantOptimization#590123, qty#590124, orderProposalId#590323L, supplier#590326, supplyingPlant#590330, productGroup#590331, product#590332, plant#590327, subrange#590329, deliveryDateTime#590328, availabilityDateTime#590334, nextAvailabilityDateTime#590335, logisticUnits#590350, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid#590352, splitIndicator#590342L, netPriceAmount#590359, netPriceCurrencyCode#590360, netPriceQuantity#590361, netPriceQuantityUom#590362, netPriceQuantityUomUuid#590363, sourceOfSupplyUuid#590337, minimumOrderQuantity#590353, orderProposalItemGroupId#590347, optimizationGroups#590366, measurements#590364, prodLocSpecificKpis#593737, channelStreamSpecificKpis#593752, coalesce(quantityKpis#593753, map(keys: [], values: [])) AS quantityKpis#593765, arrays_zip(constraintLabels#590354, constraintOperators#590355, constraintValues#590356, constraintLabels, constraintOperators, constraintValues) AS constraintStructArray#594179]
Input [36]: [shardId#589610, worklistShardItemId#590122L, quantityAfterProdPlantOptimization#590123, qty#590124, orderProposalId#590323L, supplier#590326, supplyingPlant#590330, productGroup#590331, product#590332, plant#590327, subrange#590329, deliveryDateTime#590328, availabilityDateTime#590334, nextAvailabilityDateTime#590335, constraintValues#590356, constraintOperators#590355, constraintLabels#590354, logisticUnits#590350, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid#590352, splitIndicator#590342L, netPriceAmount#590359, netPriceCurrencyCode#590360, netPriceQuantity#590361, netPriceQuantityUom#590362, netPriceQuantityUomUuid#590363, sourceOfSupplyUuid#590337, minimumOrderQuantity#590353, orderProposalItemGroupId#590347, optimizationGroups#590366, measurements#590364, prodLocSpecificKpis#593737, channelStreamSpecificKpis#593752, shardId#593759, worklistShardItemId#593760L, quantityKpis#593753]
(43) Project
Output [32]: [shardId#589610, qty#590124, orderProposalId#590323L, supplier#590326, supplyingPlant#590330, productGroup#590331, product#590332, plant#590327, subrange#590329, deliveryDateTime#590328, availabilityDateTime#590334, nextAvailabilityDateTime#590335, logisticUnits#590350, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid#590352, splitIndicator#590342L, netPriceAmount#590359, netPriceCurrencyCode#590360, netPriceQuantity#590361, netPriceQuantityUom#590362, netPriceQuantityUomUuid#590363, sourceOfSupplyUuid#590337, orderProposalItemGroupId#590347, optimizationGroups#590366, measurements#590364, prodLocSpecificKpis#593737, channelStreamSpecificKpis#593752, quantityKpis#593765, struct(minServiceLevel, array_min(filter(constraintStructArray#594179, lambdafunction((lambda x_1523#594186.constraintLabels = ServiceLevel), lambda x_1523#594186, false)).constraintValues), minServiceLevelMinStock, null, maxServiceLevelEndOfListing, array_min(filter(constraintStructArray#594179, lambdafunction((lambda x_1524#594187.constraintLabels = ServiceLevelAtStartOfDelisting), lambda x_1524#594187, false)).constraintValues), maxRoc, array_min(filter(constraintStructArray#594179, lambdafunction((lambda x_1525#594188.constraintLabels = RangeOfCoverage), lambda x_1525#594188, false)).constraintValues), minimumOrderQuantity, minimumOrderQuantity#590353, endOfListingDateTime, coalesce(filter(prodLocSpecificKpis#593737, lambdafunction((lambda x_1526#594189.label = NonListingStartTimestamp), lambda x_1526#594189, false))[0].dateTime, 1970-01-01 00:00:00)) AS constraintBenchmark#594185, CASE WHEN (qty#590124 <=> quantityAfterProdPlantOptimization#590123) THEN array(struct(isProposedCandidate, true, isProdlocOptimalCandidate, true, candidateOrderQuantity, coalesce((qty#590124 * (cast(element_at(filter(logisticUnits#590350, lambdafunction(lambda x_1527#594257.isOrderUnit, lambda x_1527#594257, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#590350, lambdafunction(lambda x_1527#594258.isOrderUnit, lambda x_1527#594258, false)), 1, None, false).numerator as double))), qty#590124), orderQuantityUom, coalesce(element_at(filter(logisticUnits#590350, lambdafunction(lambda x_1527#594259.isOrderUnit, lambda x_1527#594259, false)), 1, None, false).uom, orderQuantityBaseUom#590351), orderQuantityUomUuid, coalesce(element_at(filter(logisticUnits#590350, lambdafunction(lambda x_1527#594260.isOrderUnit, lambda x_1527#594260, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#590352), candidateOrderQuantityInBaseUnit, qty#590124, orderQuantityBaseUom, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid, orderQuantityBaseUomUuid#590352, candidateOrderQuantityInPreferredUnit, coalesce(array_min(transform(filter(logisticUnits#590350, lambdafunction((lambda x_1529#594261.isPreferred AND (((qty#590124 * cast(lambda x_1529#594261.denominator as double)) % cast(lambda x_1529#594261.numerator as double)) = 0.0)), lambda x_1529#594261, false)), lambdafunction(struct(inPreferredQuantity, ((qty#590124 * cast(lambda x_1530#594299.denominator as double)) / cast(lambda x_1530#594299.numerator as double)), uom, lambda x_1530#594299.uom, uomUuid, lambda x_1530#594299.uomUuid), lambda x_1530#594299, false))).inPreferredQuantity, coalesce((qty#590124 * (cast(element_at(filter(logisticUnits#590350, lambdafunction(lambda x_1528#594262.isOrderUnit, lambda x_1528#594262, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#590350, lambdafunction(lambda x_1528#594263.isOrderUnit, lambda x_1528#594263, false)), 1, None, false).numerator as double))), qty#590124)), orderQuantityPreferredUom, coalesce(array_min(transform(filter(logisticUnits#590350, lambdafunction((lambda x_1529#594264.isPreferred AND (((qty#590124 * cast(lambda x_1529#594264.denominator as double)) % cast(lambda x_1529#594264.numerator as double)) = 0.0)), lambda x_1529#594264, false)), lambdafunction(struct(inPreferredQuantity, ((qty#590124 * cast(lambda x_1530#594300.denominator as double)) / cast(lambda x_1530#594300.numerator as double)), uom, lambda x_1530#594300.uom, uomUuid, lambda x_1530#594300.uomUuid), lambda x_1530#594300, false))).uom, coalesce(element_at(filter(logisticUnits#590350, lambdafunction(lambda x_1528#594265.isOrderUnit, lambda x_1528#594265, false)), 1, None, false).uom, orderQuantityBaseUom#590351)), orderQuantityPreferredUomUuid, coalesce(array_min(transform(filter(logisticUnits#590350, lambdafunction((lambda x_1529#594266.isPreferred AND (((qty#590124 * cast(lambda x_1529#594266.denominator as double)) % cast(lambda x_1529#594266.numerator as double)) = 0.0)), lambda x_1529#594266, false)), lambdafunction(struct(inPreferredQuantity, ((qty#590124 * cast(lambda x_1530#594301.denominator as double)) / cast(lambda x_1530#594301.numerator as double)), uom, lambda x_1530#594301.uom, uomUuid, lambda x_1530#594301.uomUuid), lambda x_1530#594301, false))).uomUuid, coalesce(element_at(filter(logisticUnits#590350, lambdafunction(lambda x_1528#594267.isOrderUnit, lambda x_1528#594267, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#590352)), serviceLevel, coalesce(filter(element_at(quantityKpis#593765, qty#590124, None, false), lambdafunction((lambda x_1535#594268.label = ServiceLevel), lambda x_1535#594268, false))[0].value, 0.0), serviceLevelMinStock, ... 5 more fields)) ELSE array(struct(isProposedCandidate, true, isProdlocOptimalCandidate, false, candidateOrderQuantity, coalesce((qty#590124 * (cast(element_at(filter(logisticUnits#590350, lambdafunction(lambda x_1527#594271.isOrderUnit, lambda x_1527#594271, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#590350, lambdafunction(lambda x_1527#594272.isOrderUnit, lambda x_1527#594272, false)), 1, None, false).numerator as double))), qty#590124), orderQuantityUom, coalesce(element_at(filter(logisticUnits#590350, lambdafunction(lambda x_1527#594273.isOrderUnit, lambda x_1527#594273, false)), 1, None, false).uom, orderQuantityBaseUom#590351), orderQuantityUomUuid, coalesce(element_at(filter(logisticUnits#590350, lambdafunction(lambda x_1527#594274.isOrderUnit, lambda x_1527#594274, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#590352), candidateOrderQuantityInBaseUnit, qty#590124, orderQuantityBaseUom, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid, orderQuantityBaseUomUuid#590352, candidateOrderQuantityInPreferredUnit, coalesce(array_min(transform(filter(logisticUnits#590350, lambdafunction((lambda x_1529#594275.isPreferred AND (((qty#590124 * cast(lambda x_1529#594275.denominator as double)) % cast(lambda x_1529#594275.numerator as double)) = 0.0)), lambda x_1529#594275, false)), lambdafunction(struct(inPreferredQuantity, ((qty#590124 * cast(lambda x_1530#594302.denominator as double)) / cast(lambda x_1530#594302.numerator as double)), uom, lambda x_1530#594302.uom, uomUuid, lambda x_1530#594302.uomUuid), lambda x_1530#594302, false))).inPreferredQuantity, coalesce((qty#590124 * (cast(element_at(filter(logisticUnits#590350, lambdafunction(lambda x_1528#594276.isOrderUnit, lambda x_1528#594276, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#590350, lambdafunction(lambda x_1528#594277.isOrderUnit, lambda x_1528#594277, false)), 1, None, false).numerator as double))), qty#590124)), orderQuantityPreferredUom, coalesce(array_min(transform(filter(logisticUnits#590350, lambdafunction((lambda x_1529#594278.isPreferred AND (((qty#590124 * cast(lambda x_1529#594278.denominator as double)) % cast(lambda x_1529#594278.numerator as double)) = 0.0)), lambda x_1529#594278, false)), lambdafunction(struct(inPreferredQuantity, ((qty#590124 * cast(lambda x_1530#594303.denominator as double)) / cast(lambda x_1530#594303.numerator as double)), uom, lambda x_1530#594303.uom, uomUuid, lambda x_1530#594303.uomUuid), lambda x_1530#594303, false))).uom, coalesce(element_at(filter(logisticUnits#590350, lambdafunction(lambda x_1528#594279.isOrderUnit, lambda x_1528#594279, false)), 1, None, false).uom, orderQuantityBaseUom#590351)), orderQuantityPreferredUomUuid, coalesce(array_min(transform(filter(logisticUnits#590350, lambdafunction((lambda x_1529#594280.isPreferred AND (((qty#590124 * cast(lambda x_1529#594280.denominator as double)) % cast(lambda x_1529#594280.numerator as double)) = 0.0)), lambda x_1529#594280, false)), lambdafunction(struct(inPreferredQuantity, ((qty#590124 * cast(lambda x_1530#594304.denominator as double)) / cast(lambda x_1530#594304.numerator as double)), uom, lambda x_1530#594304.uom, uomUuid, lambda x_1530#594304.uomUuid), lambda x_1530#594304, false))).uomUuid, coalesce(element_at(filter(logisticUnits#590350, lambdafunction(lambda x_1528#594281.isOrderUnit, lambda x_1528#594281, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#590352)), serviceLevel, coalesce(filter(element_at(quantityKpis#593765, qty#590124, None, false), lambdafunction((lambda x_1538#594282.label = ServiceLevel), lambda x_1538#594282, false))[0].value, 0.0), serviceLevelMinStock, ... 5 more fields), struct(isProposedCandidate, false, isProdlocOptimalCandidate, true, candidateOrderQuantity, coalesce((quantityAfterProdPlantOptimization#590123 * (cast(element_at(filter(logisticUnits#590350, lambdafunction(lambda x_1531#594285.isOrderUnit, lambda x_1531#594285, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#590350, lambdafunction(lambda x_1531#594286.isOrderUnit, lambda x_1531#594286, false)), 1, None, false).numerator as double))), quantityAfterProdPlantOptimization#590123), orderQuantityUom, coalesce(element_at(filter(logisticUnits#590350, lambdafunction(lambda x_1531#594287.isOrderUnit, lambda x_1531#594287, false)), 1, None, false).uom, orderQuantityBaseUom#590351), orderQuantityUomUuid, coalesce(element_at(filter(logisticUnits#590350, lambdafunction(lambda x_1531#594288.isOrderUnit, lambda x_1531#594288, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#590352), candidateOrderQuantityInBaseUnit, quantityAfterProdPlantOptimization#590123, orderQuantityBaseUom, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid, orderQuantityBaseUomUuid#590352, candidateOrderQuantityInPreferredUnit, coalesce(array_min(transform(filter(logisticUnits#590350, lambdafunction((lambda x_1533#594289.isPreferred AND (((quantityAfterProdPlantOptimization#590123 * cast(lambda x_1533#594289.denominator as double)) % cast(lambda x_1533#594289.numerator as double)) = 0.0)), lambda x_1533#594289, false)), lambdafunction(struct(inPreferredQuantity, ((quantityAfterProdPlantOptimization#590123 * cast(lambda x_1534#594305.denominator as double)) / cast(lambda x_1534#594305.numerator as double)), uom, lambda x_1534#594305.uom, uomUuid, lambda x_1534#594305.uomUuid), lambda x_1534#594305, false))).inPreferredQuantity, coalesce((quantityAfterProdPlantOptimization#590123 * (cast(element_at(filter(logisticUnits#590350, lambdafunction(lambda x_1532#594290.isOrderUnit, lambda x_1532#594290, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#590350, lambdafunction(lambda x_1532#594291.isOrderUnit, lambda x_1532#594291, false)), 1, None, false).numerator as double))), quantityAfterProdPlantOptimization#590123)), orderQuantityPreferredUom, coalesce(array_min(transform(filter(logisticUnits#590350, lambdafunction((lambda x_1533#594292.isPreferred AND (((quantityAfterProdPlantOptimization#590123 * cast(lambda x_1533#594292.denominator as double)) % cast(lambda x_1533#594292.numerator as double)) = 0.0)), lambda x_1533#594292, false)), lambdafunction(struct(inPreferredQuantity, ((quantityAfterProdPlantOptimization#590123 * cast(lambda x_1534#594306.denominator as double)) / cast(lambda x_1534#594306.numerator as double)), uom, lambda x_1534#594306.uom, uomUuid, lambda x_1534#594306.uomUuid), lambda x_1534#594306, false))).uom, coalesce(element_at(filter(logisticUnits#590350, lambdafunction(lambda x_1532#594293.isOrderUnit, lambda x_1532#594293, false)), 1, None, false).uom, orderQuantityBaseUom#590351)), orderQuantityPreferredUomUuid, coalesce(array_min(transform(filter(logisticUnits#590350, lambdafunction((lambda x_1533#594294.isPreferred AND (((quantityAfterProdPlantOptimization#590123 * cast(lambda x_1533#594294.denominator as double)) % cast(lambda x_1533#594294.numerator as double)) = 0.0)), lambda x_1533#594294, false)), lambdafunction(struct(inPreferredQuantity, ((quantityAfterProdPlantOptimization#590123 * cast(lambda x_1534#594307.denominator as double)) / cast(lambda x_1534#594307.numerator as double)), uom, lambda x_1534#594307.uom, uomUuid, lambda x_1534#594307.uomUuid), lambda x_1534#594307, false))).uomUuid, coalesce(element_at(filter(logisticUnits#590350, lambdafunction(lambda x_1532#594295.isOrderUnit, lambda x_1532#594295, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#590352)), serviceLevel, coalesce(filter(element_at(quantityKpis#593765, quantityAfterProdPlantOptimization#590123, None, false), lambdafunction((lambda x_1541#594296.label = ServiceLevel), lambda x_1541#594296, false))[0].value, 0.0), serviceLevelMinStock, ... 5 more fields)) END AS calculationAnalysis#594256, coalesce(filter(prodLocSpecificKpis#593737, lambdafunction((lambda x_1544#594309.label = InitialStockQty), lambda x_1544#594309, false))[0].dateTime, 1970-01-01 00:00:00) AS inventoryDateTime#594308, coalesce(filter(prodLocSpecificKpis#593737, lambdafunction((lambda x_1545#594311.label = DemandPeriodEndTimestamp), lambda x_1545#594311, false))[0].dateTime, 1970-01-01 00:00:00) AS demandPeriodEndDateTime#594310]
Input [31]: [shardId#589610, quantityAfterProdPlantOptimization#590123, qty#590124, orderProposalId#590323L, supplier#590326, supplyingPlant#590330, productGroup#590331, product#590332, plant#590327, subrange#590329, deliveryDateTime#590328, availabilityDateTime#590334, nextAvailabilityDateTime#590335, logisticUnits#590350, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid#590352, splitIndicator#590342L, netPriceAmount#590359, netPriceCurrencyCode#590360, netPriceQuantity#590361, netPriceQuantityUom#590362, netPriceQuantityUomUuid#590363, sourceOfSupplyUuid#590337, minimumOrderQuantity#590353, orderProposalItemGroupId#590347, optimizationGroups#590366, measurements#590364, prodLocSpecificKpis#593737, channelStreamSpecificKpis#593752, quantityKpis#593765, constraintStructArray#594179]
(44) Project
Output [5]: [shardId#589610, orderProposalId#590323L, splitIndicator#590342L, orderProposalItemGroupId#590347, struct(itemId, 123456, itemGroupId, 123456, supplier, supplier#590326, supplyingPlant, supplyingPlant#590330, productGroup, productGroup#590331, product, product#590332, plant, plant#590327, supplierSubRange, subrange#590329, sourceOfSupplyUuid, sourceOfSupplyUuid#590337, deliveryDateTime, deliveryDateTime#590328, unitPrice, netPriceAmount#590359, unitPriceCurrency, netPriceCurrencyCode#590360, unitPriceQuantity, ... 37 more fields) AS parentItem#594390]
Input [32]: [shardId#589610, qty#590124, orderProposalId#590323L, supplier#590326, supplyingPlant#590330, productGroup#590331, product#590332, plant#590327, subrange#590329, deliveryDateTime#590328, availabilityDateTime#590334, nextAvailabilityDateTime#590335, logisticUnits#590350, orderQuantityBaseUom#590351, orderQuantityBaseUomUuid#590352, splitIndicator#590342L, netPriceAmount#590359, netPriceCurrencyCode#590360, netPriceQuantity#590361, netPriceQuantityUom#590362, netPriceQuantityUomUuid#590363, sourceOfSupplyUuid#590337, orderProposalItemGroupId#590347, optimizationGroups#590366, measurements#590364, prodLocSpecificKpis#593737, channelStreamSpecificKpis#593752, quantityKpis#593765, constraintBenchmark#594185, calculationAnalysis#594256, inventoryDateTime#594308, demandPeriodEndDateTime#594310]
(45) ObjectHashAggregate
Input [5]: [shardId#589610, orderProposalId#590323L, splitIndicator#590342L, orderProposalItemGroupId#590347, parentItem#594390]
Keys [4]: [shardId#589610, orderProposalId#590323L, splitIndicator#590342L, orderProposalItemGroupId#590347]
Functions [1]: [partial_collect_list(parentItem#594390, 0, 0)]
Aggregate Attributes [1]: [buf#595687]
Results [5]: [shardId#589610, orderProposalId#590323L, splitIndicator#590342L, orderProposalItemGroupId#590347, buf#595695]
(46) Exchange
Input [5]: [shardId#589610, orderProposalId#590323L, splitIndicator#590342L, orderProposalItemGroupId#590347, buf#595695]
Arguments: hashpartitioning(shardId#589610, orderProposalId#590323L, splitIndicator#590342L, orderProposalItemGroupId#590347, 20), ENSURE_REQUIREMENTS, [plan_id=256271]
(47) ObjectHashAggregate
Input [5]: [shardId#589610, orderProposalId#590323L, splitIndicator#590342L, orderProposalItemGroupId#590347, buf#595695]
Keys [4]: [shardId#589610, orderProposalId#590323L, splitIndicator#590342L, orderProposalItemGroupId#590347]
Functions [1]: [collect_list(parentItem#594390, 0, 0)]
Aggregate Attributes [1]: [collect_list(parentItem#594390, 0, 0)#594495]
Results [3]: [shardId#589610, orderProposalId#590323L, collect_list(parentItem#594390, 0, 0)#594495 AS parentItems#594443]
(48) ObjectHashAggregate
Input [3]: [shardId#589610, orderProposalId#590323L, parentItems#594443]
Keys [2]: [shardId#589610, orderProposalId#590323L]
Functions [1]: [partial_collect_list(parentItems#594443, 0, 0)]
Aggregate Attributes [1]: [buf#595672]
Results [3]: [shardId#589610, orderProposalId#590323L, buf#595680]
(49) Exchange
Input [3]: [shardId#589610, orderProposalId#590323L, buf#595680]
Arguments: hashpartitioning(shardId#589610, orderProposalId#590323L, 20), ENSURE_REQUIREMENTS, [plan_id=256274]
(50) ObjectHashAggregate
Input [3]: [shardId#589610, orderProposalId#590323L, buf#595680]
Keys [2]: [shardId#589610, orderProposalId#590323L]
Functions [1]: [collect_list(parentItems#594443, 0, 0)]
Aggregate Attributes [1]: [collect_list(parentItems#594443, 0, 0)#594527]
Results [2]: [shardId#589610, CASE WHEN (size(flatten(collect_list(parentItems#594443, 0, 0)#594527), true) > 2000) THEN xxhash64(orderProposalId#590323L, 42) ELSE xxhash64(pmod(cast(orderProposalId#590323L as decimal(20,0)), 1), 42) END AS resultSeparationId#597718L]
(51) HashAggregate [codegen id : 14]
Input [2]: [shardId#589610, resultSeparationId#597718L]
Keys [2]: [shardId#589610, resultSeparationId#597718L]
Functions: []
Aggregate Attributes: []
Results [2]: [shardId#589610, resultSeparationId#597718L]
(52) Exchange
Input [2]: [shardId#589610, resultSeparationId#597718L]
Arguments: hashpartitioning(shardId#589610, resultSeparationId#597718L, 20), ENSURE_REQUIREMENTS, [plan_id=256279]
(53) HashAggregate [codegen id : 15]
Input [2]: [shardId#589610, resultSeparationId#597718L]
Keys [2]: [shardId#589610, resultSeparationId#597718L]
Functions: []
Aggregate Attributes: []
Results [2]: [shardId#589610, resultSeparationId#597718L]
(54) Exchange
Input [2]: [shardId#589610, resultSeparationId#597718L]
Arguments: SinglePartition, REPARTITION_BY_NUM, [plan_id=256283]
(55) Project [codegen id : 16]
Output [1]: [shardId#589610]
Input [2]: [shardId#589610, resultSeparationId#597718L]
(56) HashAggregate [codegen id : 16]
Input [1]: [shardId#589610]
Keys [1]: [shardId#589610]
Functions: []
Aggregate Attributes: []
Results [1]: [shardId#589610]
(57) HashAggregate [codegen id : 16]
Input [1]: [shardId#589610]
Keys [1]: [shardId#589610]
Functions: []
Aggregate Attributes: []
Results [1]: [shardId#589610]