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#643168], functions=[])"];
2 [id="node2" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 0 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#643168], functions=[])"];
3 [id="node3" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#643168]"];
}
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=271571]"];
subgraph cluster5 {
isCluster="true";
id="cluster5";
label="WholeStageCodegen (15)\n \nduration: total (min, med, max (stageId: taskId))\n2 ms (0 ms, 0 ms, 2 ms (stage 52934.0: task 140386))";
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>1 ms (0 ms, 0 ms, 1 ms (stage 52934.0: task 140386))<br>peak memory total (min, med, max (stageId: taskId))<br>5.0 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 52934.0: task 140389))<br>number of output rows: 1<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[shardId#643168, resultSeparationId#657383L], functions=[])"];
}
7 [id="node7" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 18<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 18<br>local bytes read: 1400.0 B<br>merged fetch fallback count: 0<br>local blocks read: 14<br>remote merged chunks fetched: 0<br>remote blocks read: 4<br>data size total (min, med, max (stageId: taskId))<br>720.0 B (40.0 B, 40.0 B, 40.0 B (stage 52933.0: task 140361))<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>6 ms (0 ms, 0 ms, 0 ms (stage 52933.0: task 140364))<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: 400.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>1800.0 B (100.0 B, 100.0 B, 100.0 B (stage 52933.0: task 140361))" tooltip="Exchange hashpartitioning(shardId#643168, resultSeparationId#657383L, 20), ENSURE_REQUIREMENTS, [plan_id=271567]"];
subgraph cluster8 {
isCluster="true";
id="cluster8";
label="WholeStageCodegen (14)\n \nduration: total (min, med, max (stageId: taskId))\n20 ms (0 ms, 1 ms, 2 ms (stage 52933.0: task 140363))";
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>1 ms (0 ms, 0 ms, 1 ms (stage 52933.0: task 140364))<br>peak memory total (min, med, max (stageId: taskId))<br>5.0 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 52933.0: task 140361))<br>number of output rows: 18<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[shardId#643168, resultSeparationId#657383L], functions=[])"];
}
10 [id="node10" labelType="html" label="<b>ObjectHashAggregate</b><br><br>number of output rows: 59<br>time in aggregation build total (min, med, max (stageId: taskId))<br>86 ms (0 ms, 1 ms, 35 ms (stage 52933.0: task 140363))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 52933.0: task 140361))<br>number of sort fallback tasks: 0" tooltip="ObjectHashAggregate(keys=[shardId#643168, orderProposalId#645037L], functions=[collect_list(parentItems#648807, 0, 0)])"];
11 [id="node11" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 78<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 78<br>local bytes read total (min, med, max (stageId: taskId))<br>153.4 KiB (959.0 B, 7.5 KiB, 17.2 KiB (stage 52933.0: task 140378))<br>merged fetch fallback count: 0<br>local blocks read: 48<br>remote merged chunks fetched: 0<br>remote blocks read: 22<br>data size total (min, med, max (stageId: taskId))<br>1578.0 KiB (1792.0 B, 71.6 KiB, 217.8 KiB (stage 52932.0: task 140338))<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>10 ms (0 ms, 0 ms, 0 ms (stage 52932.0: task 140337))<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 52933.0: task 140361))<br>remote bytes read total (min, med, max (stageId: taskId))<br>69.4 KiB (1027.0 B, 3.5 KiB, 19.2 KiB (stage 52933.0: task 140363))<br>number of partitions: 20<br>remote reqs duration total (min, med, max (stageId: taskId))<br>1 ms (0 ms, 0 ms, 1 ms (stage 52933.0: task 140363))<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>222.8 KiB (1053.0 B, 10.5 KiB, 28.1 KiB (stage 52932.0: task 140338))" tooltip="Exchange hashpartitioning(shardId#643168, orderProposalId#645037L, 20), ENSURE_REQUIREMENTS, [plan_id=271562]"];
12 [id="node12" labelType="html" label="<b>ObjectHashAggregate</b><br><br>number of output rows: 78<br>time in aggregation build total (min, med, max (stageId: taskId))<br>6 ms (0 ms, 0 ms, 2 ms (stage 52932.0: task 140318))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 52932.0: task 140339))<br>number of sort fallback tasks: 0" tooltip="ObjectHashAggregate(keys=[shardId#643168, orderProposalId#645037L], functions=[partial_collect_list(parentItems#648807, 0, 0)])"];
13 [id="node13" labelType="html" label="<b>ObjectHashAggregate</b><br><br>number of output rows: 78<br>time in aggregation build total (min, med, max (stageId: taskId))<br>300 ms (4 ms, 6 ms, 43 ms (stage 52932.0: task 140317))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 52932.0: task 140339))<br>number of sort fallback tasks: 0" tooltip="ObjectHashAggregate(keys=[shardId#643168, orderProposalId#645037L, splitIndicator#645056L, orderProposalItemGroupId#645061], functions=[collect_list(parentItem#648754, 0, 0)])"];
14 [id="node14" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 643<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 643<br>local bytes read total (min, med, max (stageId: taskId))<br>306.1 KiB (1067.0 B, 16.7 KiB, 35.8 KiB (stage 52932.0: task 140338))<br>merged fetch fallback count: 0<br>local blocks read: 196<br>remote merged chunks fetched: 0<br>remote blocks read: 122<br>data size total (min, med, max (stageId: taskId))<br>1630.3 KiB (69.5 KiB, 80.7 KiB, 98.4 KiB (stage 52931.0: task 140279))<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>19 ms (0 ms, 0 ms, 1 ms (stage 52931.0: task 140279))<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 52932.0: task 140339))<br>remote bytes read total (min, med, max (stageId: taskId))<br>194.3 KiB (1062.0 B, 7.3 KiB, 27.7 KiB (stage 52932.0: task 140317))<br>number of partitions: 20<br>remote reqs duration total (min, med, max (stageId: taskId))<br>7 ms (0 ms, 0 ms, 1 ms (stage 52932.0: task 140341))<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>500.3 KiB (21.1 KiB, 24.3 KiB, 29.3 KiB (stage 52931.0: task 140254))" tooltip="Exchange hashpartitioning(shardId#643168, orderProposalId#645037L, splitIndicator#645056L, orderProposalItemGroupId#645061, 20), ENSURE_REQUIREMENTS, [plan_id=271559]"];
15 [id="node15" labelType="html" label="<b>ObjectHashAggregate</b><br><br>number of output rows: 643<br>time in aggregation build total (min, med, max (stageId: taskId))<br>491 ms (5 ms, 8 ms, 76 ms (stage 52931.0: task 140283))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 52931.0: task 140229))<br>number of sort fallback tasks: 0" tooltip="ObjectHashAggregate(keys=[shardId#643168, orderProposalId#645037L, splitIndicator#645056L, orderProposalItemGroupId#645061], functions=[partial_collect_list(parentItem#648754, 0, 0)])"];
16 [id="node16" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#643168, orderProposalId#645037L, splitIndicator#645056L, orderProposalItemGroupId#645061, struct(itemId, 123456, itemGroupId, 123456, supplier, supplier#645040, supplyingPlant, supplyingPlant#645044, productGroup, productGroup#645045, product, product#645046, plant, plant#645041, supplierSubRange, subrange#645043, sourceOfSupplyUuid, sourceOfSupplyUuid#645051, deliveryDateTime, deliveryDateTime#645042, unitPrice, netPriceAmount#645073, unitPriceCurrency, netPriceCurrencyCode#645074, unitPriceQuantity, ... 37 more fields) AS parentItem#648754]"];
17 [id="node17" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#643168, qty#643818, orderProposalId#645037L, supplier#645040, supplyingPlant#645044, productGroup#645045, product#645046, plant#645041, subrange#645043, deliveryDateTime#645042, availabilityDateTime#645048, nextAvailabilityDateTime#645049, logisticUnits#645064, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid#645066, splitIndicator#645056L, netPriceAmount#645073, netPriceCurrencyCode#645074, netPriceQuantity#645075, netPriceQuantityUom#645076, netPriceQuantityUomUuid#645077, sourceOfSupplyUuid#645051, orderProposalItemGroupId#645061, optimizationGroups#645080, measurements#645078, ... 7 more fields]"];
subgraph cluster18 {
isCluster="true";
id="cluster18";
label="WholeStageCodegen (13)\n \nduration: total (min, med, max (stageId: taskId))\n1.6 s (29 ms, 47 ms, 196 ms (stage 52931.0: task 140283))";
tooltip="WholeStageCodegen (13)";
19 [id="node19" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#643168, quantityAfterProdPlantOptimization#643817, qty#643818, orderProposalId#645037L, supplier#645040, supplyingPlant#645044, productGroup#645045, product#645046, plant#645041, subrange#645043, deliveryDateTime#645042, availabilityDateTime#645048, nextAvailabilityDateTime#645049, logisticUnits#645064, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid#645066, splitIndicator#645056L, netPriceAmount#645073, netPriceCurrencyCode#645074, netPriceQuantity#645075, netPriceQuantityUom#645076, netPriceQuantityUomUuid#645077, sourceOfSupplyUuid#645051, minimumOrderQuantity#645067, orderProposalItemGroupId#645061, ... 6 more fields]"];
20 [id="node20" labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 980<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 52931.0: task 140229))" tooltip="SortMergeJoin [shardId#643168, worklistShardItemId#643816L], [shardId#647223, worklistShardItemId#647224L], LeftOuter"];
}
subgraph cluster21 {
isCluster="true";
id="cluster21";
label="WholeStageCodegen (10)\n \nduration: total (min, med, max (stageId: taskId))\n2.2 s (33 ms, 52 ms, 293 ms (stage 52931.0: task 140285))";
tooltip="WholeStageCodegen (10)";
22 [id="node22" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#643168, worklistShardItemId#643816L, quantityAfterProdPlantOptimization#643817, qty#643818, orderProposalId#645037L, supplier#645040, supplyingPlant#645044, productGroup#645045, product#645046, plant#645041, subrange#645043, deliveryDateTime#645042, availabilityDateTime#645048, nextAvailabilityDateTime#645049, constraintValues#645070, constraintOperators#645069, constraintLabels#645068, logisticUnits#645064, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid#645066, splitIndicator#645056L, netPriceAmount#645073, netPriceCurrencyCode#645074, netPriceQuantity#645075, netPriceQuantityUom#645076, ... 8 more fields]"];
23 [id="node23" labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 980<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 52931.0: task 140229))" tooltip="SortMergeJoin [shardId#643168, worklistShardItemId#643816L], [shardId#647210, worklistShardItemId#647211L], LeftOuter"];
}
subgraph cluster24 {
isCluster="true";
id="cluster24";
label="WholeStageCodegen (7)\n \nduration: total (min, med, max (stageId: taskId))\n2.8 s (38 ms, 58 ms, 392 ms (stage 52931.0: task 140283))";
tooltip="WholeStageCodegen (7)";
25 [id="node25" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#643168, worklistShardItemId#643816L, quantityAfterProdPlantOptimization#643817, qty#643818, orderProposalId#645037L, supplier#645040, supplyingPlant#645044, productGroup#645045, product#645046, plant#645041, subrange#645043, deliveryDateTime#645042, availabilityDateTime#645048, nextAvailabilityDateTime#645049, constraintValues#645070, constraintOperators#645069, constraintLabels#645068, logisticUnits#645064, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid#645066, splitIndicator#645056L, netPriceAmount#645073, netPriceCurrencyCode#645074, netPriceQuantity#645075, netPriceQuantityUom#645076, ... 7 more fields]"];
26 [id="node26" labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 980<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 52931.0: task 140229))" tooltip="SortMergeJoin [shardId#643168, worklistShardItemId#643816L], [shardId#647194, worklistShardItemId#647195L], LeftOuter"];
}
subgraph cluster27 {
isCluster="true";
id="cluster27";
label="WholeStageCodegen (4)\n \nduration: total (min, med, max (stageId: taskId))\n3.5 s (38 ms, 61 ms, 527 ms (stage 52931.0: task 140283))";
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 52931.0: task 140229))<br>peak memory total (min, med, max (stageId: taskId))<br>41.3 MiB (2.1 MiB, 2.1 MiB, 2.1 MiB (stage 52931.0: task 140229))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 52931.0: task 140229))" tooltip="Sort [shardId#643168 ASC NULLS FIRST, worklistShardItemId#643816L ASC NULLS FIRST], false, 0"];
}
29 [id="node29" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 980<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 980<br>local bytes read total (min, med, max (stageId: taskId))<br>189.3 KiB (4.8 KiB, 8.1 KiB, 18.7 KiB (stage 52931.0: task 140282))<br>merged fetch fallback count: 0<br>local blocks read: 113<br>remote merged chunks fetched: 0<br>remote blocks read: 177<br>data size total (min, med, max (stageId: taskId))<br>1175.2 KiB (1224.0 B, 55.4 KiB, 168.8 KiB (stage 52928.0: task 140185))<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>20 ms (0 ms, 1 ms, 1 ms (stage 52928.0: task 140185))<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 52931.0: task 140229))<br>remote bytes read total (min, med, max (stageId: taskId))<br>285.2 KiB (6.6 KiB, 16.0 KiB, 20.0 KiB (stage 52931.0: task 140254))<br>number of partitions: 20<br>remote reqs duration total (min, med, max (stageId: taskId))<br>47 ms (0 ms, 2 ms, 14 ms (stage 52931.0: task 140276))<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>474.5 KiB (855.0 B, 23.1 KiB, 54.4 KiB (stage 52928.0: task 140185))" tooltip="Exchange hashpartitioning(shardId#643168, worklistShardItemId#643816L, 20), ENSURE_REQUIREMENTS, [plan_id=271518]"];
subgraph cluster30 {
isCluster="true";
id="cluster30";
label="WholeStageCodegen (3)\n \nduration: total (min, med, max (stageId: taskId))\n240 ms (6 ms, 12 ms, 19 ms (stage 52928.0: task 140146))";
tooltip="WholeStageCodegen (3)";
31 [id="node31" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#643168, worklistShardItemId#643816L, quantityAfterProdPlantOptimization#643817, qty#643818, orderProposalId#645037L, supplier#645040, supplyingPlant#645044, productGroup#645045, product#645046, plant#645041, subrange#645043, deliveryDateTime#645042, availabilityDateTime#645048, nextAvailabilityDateTime#645049, constraintValues#645070, constraintOperators#645069, constraintLabels#645068, logisticUnits#645064, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid#645066, splitIndicator#645056L, netPriceAmount#645073, netPriceCurrencyCode#645074, netPriceQuantity#645075, netPriceQuantityUom#645076, ... 6 more fields]"];
32 [id="node32" labelType="html" label="<b>Filter</b><br><br>number of output rows: 980" tooltip="Filter NOT (isFallbackOrderOnly#645054 <=> true)"];
33 [id="node33" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 980" tooltip="BroadcastHashJoin [worklistShardItemId#643816L], [worklistShardItemId#645060L], LeftOuter, BuildRight, (shardId#643168 = 0_1_10000002106), false"];
34 [id="node34" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#643168, item#643815.worklistShardItemId AS worklistShardItemId#643816L, item#643815.quantityAfterProdPlantOptimization AS quantityAfterProdPlantOptimization#643817, item#643815.qty AS qty#643818]"];
35 [id="node35" labelType="html" label="<b>Generate</b><br><br>number of output rows: 980" tooltip="Generate explode(items#643170), [shardId#643168], false, [item#643815]"];
36 [id="node36" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#643168, items#643170]"];
37 [id="node37" labelType="html" label="<b>Filter</b><br><br>number of output rows: 59" tooltip="Filter ((isnotnull(shardId#643168) AND (shardId#643168 = 0_1_10000002106)) AND ((size(items#643170, true) > 0) AND isnotnull(items#643170)))"];
38 [id="node38" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 59" tooltip="Scan ExistingRDD[shardId#643168,orderProposalId#643169L,items#643170,optimizationGroups#643171,isOptimal#643172,lastModified#643173,optimizationInsights#643174]"];
}
39 [id="node39" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 2 ms<br>time to build: 3 ms<br>time to collect: 413 ms<br>number of output rows: 980<br>data size: 2.0 MiB" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(input[0, bigint, true]),false), [plan_id=271512]"];
subgraph cluster40 {
isCluster="true";
id="cluster40";
label="WholeStageCodegen (2)\n \nduration: total (min, med, max (stageId: taskId))\n70 ms (2 ms, 4 ms, 5 ms (stage 52751.0: task 140119))";
tooltip="WholeStageCodegen (2)";
41 [id="node41" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [worklistShardItemId#645060L, orderProposalId#645037L, orderProposalItemGroupId#645061, splitIndicator#645056L, sourceOfSupplyUuid#645051, supplier#645040, subrange#645043, product#645046, plant#645041, deliveryDateTime#645042, availabilityDateTime#645048, nextAvailabilityDateTime#645049, isFallbackOrderOnly#645054, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid#645066, netPriceQuantity#645075, netPriceQuantityUom#645076, netPriceQuantityUomUuid#645077, netPriceAmount#645073, netPriceCurrencyCode#645074, measurements#645078, minimumOrderQuantity#645067, constraintLabels#645068, constraintOperators#645069, constraintValues#645070, ... 4 more fields]"];
}
42 [id="node42" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 980<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 980<br>local bytes read total (min, med, max (stageId: taskId))<br>295.0 KiB (9.9 KiB, 15.0 KiB, 18.9 KiB (stage 52751.0: task 140130))<br>merged fetch fallback count: 0<br>local blocks read: 218<br>remote merged chunks fetched: 0<br>remote blocks read: 218<br>data size total (min, med, max (stageId: taskId))<br>1144.6 KiB (31.1 KiB, 45.7 KiB, 56.1 KiB (stage 52750.0: task 140053))<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>25 ms (0 ms, 0 ms, 1 ms (stage 52750.0: task 140053))<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 52751.0: task 140118))<br>remote bytes read total (min, med, max (stageId: taskId))<br>287.4 KiB (8.8 KiB, 14.9 KiB, 19.0 KiB (stage 52751.0: task 140122))<br>number of partitions: 20<br>remote reqs duration total (min, med, max (stageId: taskId))<br>26 ms (0 ms, 1 ms, 2 ms (stage 52751.0: task 140118))<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>582.4 KiB (18.3 KiB, 23.2 KiB, 27.3 KiB (stage 52750.0: task 140052))" tooltip="Exchange hashpartitioning(worklistShardItemId#645060L, 20), REPARTITION_BY_NUM, [plan_id=271508]"];
subgraph cluster43 {
isCluster="true";
id="cluster43";
label="WholeStageCodegen (1)\n \nduration: total (min, med, max (stageId: taskId))\n2.5 s (82 ms, 97 ms, 146 ms (stage 52750.0: task 140071))";
tooltip="WholeStageCodegen (1)";
44 [id="node44" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [orderProposalId#645037L, supplier#645040, plant#645041, deliveryDateTime#645042, subrange#645043, supplyingPlant#645044, productGroup#645045, product#645046, availabilityDateTime#645048, nextAvailabilityDateTime#645049, sourceOfSupplyUuid#645051, isFallbackOrderOnly#645054, splitIndicator#645056L, worklistShardItemId#645060L, orderProposalItemGroupId#645061, logisticUnits#645064, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid#645066, minimumOrderQuantity#645067, constraintLabels#645068, constraintOperators#645069, constraintValues#645070, netPriceAmount#645073, netPriceCurrencyCode#645074, netPriceQuantity#645075, ... 4 more fields]"];
45 [id="node45" labelType="html" label="<b>Filter</b><br><br>number of output rows: 980" tooltip="Filter isnotnull(worklistShardItemId#645060L)"];
46 [id="node46" labelType="html" label="<b>ColumnarToRow</b><br><br>number of output rows: 980<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.5 s (80 ms, 95 ms, 143 ms (stage 52750.0: task 140071))<br>dynamic partition pruning time: 0 ms<br>metadata time: 0 ms<br>size of files read: 674.1 KiB<br>number of output rows: 980<br>number of partitions read: 1" tooltip="FileScan parquet [orderProposalId#645037L,supplier#645040,plant#645041,deliveryDateTime#645042,subrange#645043,supplyingPlant#645044,productGroup#645045,product#645046,availabilityDateTime#645048,nextAvailabilityDateTime#645049,sourceOfSupplyUuid#645051,isFallbackOrderOnly#645054,splitIndicator#645056L,worklistShardItemId#645060L,orderProposalItemGroupId#645061,logisticUnits#645064,orderQuantityBaseUom#645065,orderQuantityBaseUomUuid#645066,minimumOrderQuantity#645067,constraintLabels#645068,constraintOperators#645069,constraintValues#645070,netPriceAmount#645073,netPriceCurrencyCode#645074,netPriceQuantity#645075,... 6 more fields] Batched: true, DataFilters: [isnotnull(worklistShardItemId#645060L)], Format: Parquet, Location: PreparedDeltaFileIndex(1 paths)[hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20...., PartitionFilters: [isnotnull(shardId#645081), isnotnull(sequenceId#645059), (shardId#645081 = 0_1_10000002106), (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))\n3.0 s (38 ms, 59 ms, 437 ms (stage 52931.0: task 140285))";
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 52931.0: task 140229))<br>peak memory total (min, med, max (stageId: taskId))<br>41.3 MiB (2.1 MiB, 2.1 MiB, 2.1 MiB (stage 52931.0: task 140229))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 52931.0: task 140229))" tooltip="Sort [shardId#647194 ASC NULLS FIRST, worklistShardItemId#647195L ASC NULLS FIRST], false, 0"];
}
50 [id="node50" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 980<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 980<br>local bytes read total (min, med, max (stageId: taskId))<br>171.9 KiB (2.6 KiB, 10.0 KiB, 12.5 KiB (stage 52931.0: task 140279))<br>merged fetch fallback count: 0<br>local blocks read: 233<br>remote merged chunks fetched: 0<br>remote blocks read: 141<br>data size total (min, med, max (stageId: taskId))<br>1025.9 KiB (45.0 KiB, 51.3 KiB, 59.7 KiB (stage 52929.0: task 140197))<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>24 ms (0 ms, 1 ms, 1 ms (stage 52929.0: task 140157))<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 52931.0: task 140229))<br>remote bytes read total (min, med, max (stageId: taskId))<br>108.6 KiB (2.9 KiB, 3.9 KiB, 11.5 KiB (stage 52931.0: task 140285))<br>number of partitions: 20<br>remote reqs duration total (min, med, max (stageId: taskId))<br>44 ms (1 ms, 2 ms, 13 ms (stage 52931.0: task 140276))<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>280.4 KiB (12.9 KiB, 14.1 KiB, 15.1 KiB (stage 52929.0: task 140188))" tooltip="Exchange hashpartitioning(shardId#647194, worklistShardItemId#647195L, 20), ENSURE_REQUIREMENTS, [plan_id=271524]"];
subgraph cluster51 {
isCluster="true";
id="cluster51";
label="WholeStageCodegen (5)\n \nduration: total (min, med, max (stageId: taskId))\n169 ms (6 ms, 9 ms, 11 ms (stage 52929.0: task 140157))";
tooltip="WholeStageCodegen (5)";
52 [id="node52" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#647194, worklistShardItemId#647195L, coalesce(kpis#647199, []) AS prodLocSpecificKpis#647200]"];
53 [id="node53" labelType="html" label="<b>Filter</b><br><br>number of output rows: 980" tooltip="Filter (((isnull(qty#647196) AND isnull(demandChannel#647197)) AND isnull(demandStream#647198)) AND (((shardId#647194 = 0_1_10000002106) AND isnotnull(shardId#647194)) AND isnotnull(worklistShardItemId#647195L)))"];
54 [id="node54" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 4,129" tooltip="Scan ExistingRDD[shardId#647194,worklistShardItemId#647195L,qty#647196,demandChannel#647197,demandStream#647198,kpis#647199]"];
}
subgraph cluster55 {
isCluster="true";
id="cluster55";
label="WholeStageCodegen (9)\n \nduration: total (min, med, max (stageId: taskId))\n2.4 s (34 ms, 52 ms, 334 ms (stage 52931.0: task 140283))";
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 52931.0: task 140229))<br>peak memory total (min, med, max (stageId: taskId))<br>41.3 MiB (2.1 MiB, 2.1 MiB, 2.1 MiB (stage 52931.0: task 140229))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 52931.0: task 140229))" tooltip="Sort [shardId#647210 ASC NULLS FIRST, worklistShardItemId#647211L ASC NULLS FIRST], false, 0"];
}
57 [id="node57" labelType="html" label="<b>ObjectHashAggregate</b><br><br>number of output rows: 966<br>time in aggregation build total (min, med, max (stageId: taskId))<br>206 ms (2 ms, 4 ms, 27 ms (stage 52931.0: task 140285))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 52931.0: task 140229))<br>number of sort fallback tasks: 0" tooltip="ObjectHashAggregate(keys=[shardId#647210, worklistShardItemId#647211L], functions=[collect_list(struct(demandChannel, demandChannel#647213, demandStream, demandStream#647214, kpis, kpis#647215), 0, 0)])"];
58 [id="node58" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 966<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 966<br>local bytes read total (min, med, max (stageId: taskId))<br>78.5 KiB (1549.0 B, 4.4 KiB, 5.4 KiB (stage 52931.0: task 140254))<br>merged fetch fallback count: 0<br>local blocks read: 211<br>remote merged chunks fetched: 0<br>remote blocks read: 146<br>data size total (min, med, max (stageId: taskId))<br>392.4 KiB (17.1 KiB, 19.1 KiB, 23.6 KiB (stage 52930.0: task 140212))<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>23 ms (0 ms, 1 ms, 1 ms (stage 52930.0: task 140167))<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>22 ms (0 ms, 0 ms, 9 ms (stage 52931.0: task 140276))<br>remote bytes read total (min, med, max (stageId: taskId))<br>55.4 KiB (1109.0 B, 2.3 KiB, 5.3 KiB (stage 52931.0: task 140282))<br>number of partitions: 20<br>remote reqs duration total (min, med, max (stageId: taskId))<br>54 ms (0 ms, 1 ms, 13 ms (stage 52931.0: task 140276))<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>133.9 KiB (5.8 KiB, 6.7 KiB, 7.4 KiB (stage 52930.0: task 140214))" tooltip="Exchange hashpartitioning(shardId#647210, worklistShardItemId#647211L, 20), ENSURE_REQUIREMENTS, [plan_id=271535]"];
59 [id="node59" labelType="html" label="<b>ObjectHashAggregate</b><br><br>number of output rows: 966<br>time in aggregation build total (min, med, max (stageId: taskId))<br>131 ms (4 ms, 7 ms, 16 ms (stage 52930.0: task 140212))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 52930.0: task 140151))<br>number of sort fallback tasks: 0" tooltip="ObjectHashAggregate(keys=[shardId#647210, worklistShardItemId#647211L], functions=[partial_collect_list(struct(demandChannel, demandChannel#647213, demandStream, demandStream#647214, kpis, kpis#647215), 0, 0)])"];
subgraph cluster60 {
isCluster="true";
id="cluster60";
label="WholeStageCodegen (8)\n \nduration: total (min, med, max (stageId: taskId))\n131 ms (4 ms, 7 ms, 16 ms (stage 52930.0: task 140212))";
tooltip="WholeStageCodegen (8)";
61 [id="node61" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#647210, worklistShardItemId#647211L, demandChannel#647213, demandStream#647214, kpis#647215]"];
62 [id="node62" labelType="html" label="<b>Filter</b><br><br>number of output rows: 966" tooltip="Filter ((((isnull(qty#647212) AND isnotnull(demandChannel#647213)) AND isnotnull(demandStream#647214)) AND (size(kpis#647215, true) > 0)) AND (((shardId#647210 = 0_1_10000002106) AND isnotnull(shardId#647210)) AND isnotnull(worklistShardItemId#647211L)))"];
63 [id="node63" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 4,129" tooltip="Scan ExistingRDD[shardId#647210,worklistShardItemId#647211L,qty#647212,demandChannel#647213,demandStream#647214,kpis#647215]"];
}
subgraph cluster64 {
isCluster="true";
id="cluster64";
label="WholeStageCodegen (12)\n \nduration: total (min, med, max (stageId: taskId))\n1.8 s (30 ms, 47 ms, 236 ms (stage 52931.0: task 140285))";
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 52931.0: task 140229))<br>peak memory total (min, med, max (stageId: taskId))<br>41.3 MiB (2.1 MiB, 2.1 MiB, 2.1 MiB (stage 52931.0: task 140229))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 52931.0: task 140229))" tooltip="Sort [shardId#647223 ASC NULLS FIRST, worklistShardItemId#647224L ASC NULLS FIRST], false, 0"];
}
66 [id="node66" labelType="html" label="<b>ObjectHashAggregate</b><br><br>number of output rows: 980<br>time in aggregation build total (min, med, max (stageId: taskId))<br>192 ms (2 ms, 3 ms, 33 ms (stage 52931.0: task 140284))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 52931.0: task 140229))<br>number of sort fallback tasks: 0" tooltip="ObjectHashAggregate(keys=[shardId#647223, worklistShardItemId#647224L], functions=[collect_list(struct(qty, qty#647225, kpis, kpis#647228), 0, 0)])"];
67 [id="node67" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 2,091<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 2,091<br>local bytes read total (min, med, max (stageId: taskId))<br>101.5 KiB (2.9 KiB, 3.4 KiB, 10.8 KiB (stage 52931.0: task 140283))<br>merged fetch fallback count: 0<br>local blocks read: 150<br>remote merged chunks fetched: 0<br>remote blocks read: 247<br>data size total (min, med, max (stageId: taskId))<br>1357.2 KiB (60.5 KiB, 69.1 KiB, 72.7 KiB (stage 52927.0: task 140162))<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>26 ms (0 ms, 1 ms, 1 ms (stage 52927.0: task 140136))<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 52931.0: task 140229))<br>remote bytes read total (min, med, max (stageId: taskId))<br>168.2 KiB (3.2 KiB, 9.9 KiB, 11.4 KiB (stage 52931.0: task 140279))<br>number of partitions: 20<br>remote reqs duration total (min, med, max (stageId: taskId))<br>24 ms (0 ms, 1 ms, 2 ms (stage 52931.0: task 140229))<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>269.7 KiB (12.6 KiB, 13.5 KiB, 14.2 KiB (stage 52927.0: task 140140))" tooltip="Exchange hashpartitioning(shardId#647223, worklistShardItemId#647224L, 20), ENSURE_REQUIREMENTS, [plan_id=271547]"];
68 [id="node68" labelType="html" label="<b>ObjectHashAggregate</b><br><br>number of output rows: 2,091<br>time in aggregation build total (min, med, max (stageId: taskId))<br>145 ms (4 ms, 7 ms, 9 ms (stage 52927.0: task 140139))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 52927.0: task 140143))<br>number of sort fallback tasks: 0" tooltip="ObjectHashAggregate(keys=[shardId#647223, worklistShardItemId#647224L], functions=[partial_collect_list(struct(qty, qty#647225, kpis, kpis#647228), 0, 0)])"];
subgraph cluster69 {
isCluster="true";
id="cluster69";
label="WholeStageCodegen (11)\n \nduration: total (min, med, max (stageId: taskId))\n145 ms (4 ms, 7 ms, 9 ms (stage 52927.0: task 140139))";
tooltip="WholeStageCodegen (11)";
70 [id="node70" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#647223, worklistShardItemId#647224L, qty#647225, kpis#647228]"];
71 [id="node71" labelType="html" label="<b>Filter</b><br><br>number of output rows: 2,183" tooltip="Filter ((isnotnull(qty#647225) AND isnotnull(kpis#647228)) AND (((shardId#647223 = 0_1_10000002106) AND isnotnull(shardId#647223)) AND isnotnull(worklistShardItemId#647224L)))"];
72 [id="node72" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 4,129" tooltip="Scan ExistingRDD[shardId#647223,worklistShardItemId#647224L,qty#647225,demandChannel#647226,demandStream#647227,kpis#647228]"];
}
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#643168, orderProposalId#643169L, items#643170, optimizationGroups#643171, isOptimal#643172, lastModified#643173, optimizationInsights#643174]
Arguments: [shardId#643168, orderProposalId#643169L, items#643170, optimizationGroups#643171, isOptimal#643172, lastModified#643173, optimizationInsights#643174], MapPartitionsRDD[30592] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(2) Filter [codegen id : 3]
Input [7]: [shardId#643168, orderProposalId#643169L, items#643170, optimizationGroups#643171, isOptimal#643172, lastModified#643173, optimizationInsights#643174]
Condition : ((isnotnull(shardId#643168) AND (shardId#643168 = 0_1_10000002106)) AND ((size(items#643170, true) > 0) AND isnotnull(items#643170)))
(3) Project [codegen id : 3]
Output [2]: [shardId#643168, items#643170]
Input [7]: [shardId#643168, orderProposalId#643169L, items#643170, optimizationGroups#643171, isOptimal#643172, lastModified#643173, optimizationInsights#643174]
(4) Generate [codegen id : 3]
Input [2]: [shardId#643168, items#643170]
Arguments: explode(items#643170), [shardId#643168], false, [item#643815]
(5) Project [codegen id : 3]
Output [4]: [shardId#643168, item#643815.worklistShardItemId AS worklistShardItemId#643816L, item#643815.quantityAfterProdPlantOptimization AS quantityAfterProdPlantOptimization#643817, item#643815.qty AS qty#643818]
Input [2]: [shardId#643168, item#643815]
(6) Scan parquet
Output [31]: [orderProposalId#645037L, supplier#645040, plant#645041, deliveryDateTime#645042, subrange#645043, supplyingPlant#645044, productGroup#645045, product#645046, availabilityDateTime#645048, nextAvailabilityDateTime#645049, sourceOfSupplyUuid#645051, isFallbackOrderOnly#645054, splitIndicator#645056L, worklistShardItemId#645060L, orderProposalItemGroupId#645061, logisticUnits#645064, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid#645066, minimumOrderQuantity#645067, constraintLabels#645068, constraintOperators#645069, constraintValues#645070, netPriceAmount#645073, netPriceCurrencyCode#645074, netPriceQuantity#645075, netPriceQuantityUom#645076, netPriceQuantityUomUuid#645077, measurements#645078, optimizationGroups#645080, shardId#645081, sequenceId#645059]
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/10000002106]
PartitionFilters: [isnotnull(shardId#645081), isnotnull(sequenceId#645059), (shardId#645081 = 0_1_10000002106), (sequenceId#645059 = 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#645037L, supplier#645040, plant#645041, deliveryDateTime#645042, subrange#645043, supplyingPlant#645044, productGroup#645045, product#645046, availabilityDateTime#645048, nextAvailabilityDateTime#645049, sourceOfSupplyUuid#645051, isFallbackOrderOnly#645054, splitIndicator#645056L, worklistShardItemId#645060L, orderProposalItemGroupId#645061, logisticUnits#645064, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid#645066, minimumOrderQuantity#645067, constraintLabels#645068, constraintOperators#645069, constraintValues#645070, netPriceAmount#645073, netPriceCurrencyCode#645074, netPriceQuantity#645075, netPriceQuantityUom#645076, netPriceQuantityUomUuid#645077, measurements#645078, optimizationGroups#645080, shardId#645081, sequenceId#645059]
(8) Filter [codegen id : 1]
Input [31]: [orderProposalId#645037L, supplier#645040, plant#645041, deliveryDateTime#645042, subrange#645043, supplyingPlant#645044, productGroup#645045, product#645046, availabilityDateTime#645048, nextAvailabilityDateTime#645049, sourceOfSupplyUuid#645051, isFallbackOrderOnly#645054, splitIndicator#645056L, worklistShardItemId#645060L, orderProposalItemGroupId#645061, logisticUnits#645064, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid#645066, minimumOrderQuantity#645067, constraintLabels#645068, constraintOperators#645069, constraintValues#645070, netPriceAmount#645073, netPriceCurrencyCode#645074, netPriceQuantity#645075, netPriceQuantityUom#645076, netPriceQuantityUomUuid#645077, measurements#645078, optimizationGroups#645080, shardId#645081, sequenceId#645059]
Condition : isnotnull(worklistShardItemId#645060L)
(9) Project [codegen id : 1]
Output [29]: [orderProposalId#645037L, supplier#645040, plant#645041, deliveryDateTime#645042, subrange#645043, supplyingPlant#645044, productGroup#645045, product#645046, availabilityDateTime#645048, nextAvailabilityDateTime#645049, sourceOfSupplyUuid#645051, isFallbackOrderOnly#645054, splitIndicator#645056L, worklistShardItemId#645060L, orderProposalItemGroupId#645061, logisticUnits#645064, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid#645066, minimumOrderQuantity#645067, constraintLabels#645068, constraintOperators#645069, constraintValues#645070, netPriceAmount#645073, netPriceCurrencyCode#645074, netPriceQuantity#645075, netPriceQuantityUom#645076, netPriceQuantityUomUuid#645077, measurements#645078, optimizationGroups#645080]
Input [31]: [orderProposalId#645037L, supplier#645040, plant#645041, deliveryDateTime#645042, subrange#645043, supplyingPlant#645044, productGroup#645045, product#645046, availabilityDateTime#645048, nextAvailabilityDateTime#645049, sourceOfSupplyUuid#645051, isFallbackOrderOnly#645054, splitIndicator#645056L, worklistShardItemId#645060L, orderProposalItemGroupId#645061, logisticUnits#645064, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid#645066, minimumOrderQuantity#645067, constraintLabels#645068, constraintOperators#645069, constraintValues#645070, netPriceAmount#645073, netPriceCurrencyCode#645074, netPriceQuantity#645075, netPriceQuantityUom#645076, netPriceQuantityUomUuid#645077, measurements#645078, optimizationGroups#645080, shardId#645081, sequenceId#645059]
(10) Exchange
Input [29]: [orderProposalId#645037L, supplier#645040, plant#645041, deliveryDateTime#645042, subrange#645043, supplyingPlant#645044, productGroup#645045, product#645046, availabilityDateTime#645048, nextAvailabilityDateTime#645049, sourceOfSupplyUuid#645051, isFallbackOrderOnly#645054, splitIndicator#645056L, worklistShardItemId#645060L, orderProposalItemGroupId#645061, logisticUnits#645064, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid#645066, minimumOrderQuantity#645067, constraintLabels#645068, constraintOperators#645069, constraintValues#645070, netPriceAmount#645073, netPriceCurrencyCode#645074, netPriceQuantity#645075, netPriceQuantityUom#645076, netPriceQuantityUomUuid#645077, measurements#645078, optimizationGroups#645080]
Arguments: hashpartitioning(worklistShardItemId#645060L, 20), REPARTITION_BY_NUM, [plan_id=271508]
(11) Project [codegen id : 2]
Output [29]: [worklistShardItemId#645060L, orderProposalId#645037L, orderProposalItemGroupId#645061, splitIndicator#645056L, sourceOfSupplyUuid#645051, supplier#645040, subrange#645043, product#645046, plant#645041, deliveryDateTime#645042, availabilityDateTime#645048, nextAvailabilityDateTime#645049, isFallbackOrderOnly#645054, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid#645066, netPriceQuantity#645075, netPriceQuantityUom#645076, netPriceQuantityUomUuid#645077, netPriceAmount#645073, netPriceCurrencyCode#645074, measurements#645078, minimumOrderQuantity#645067, constraintLabels#645068, constraintOperators#645069, constraintValues#645070, logisticUnits#645064, optimizationGroups#645080, supplyingPlant#645044, productGroup#645045]
Input [29]: [orderProposalId#645037L, supplier#645040, plant#645041, deliveryDateTime#645042, subrange#645043, supplyingPlant#645044, productGroup#645045, product#645046, availabilityDateTime#645048, nextAvailabilityDateTime#645049, sourceOfSupplyUuid#645051, isFallbackOrderOnly#645054, splitIndicator#645056L, worklistShardItemId#645060L, orderProposalItemGroupId#645061, logisticUnits#645064, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid#645066, minimumOrderQuantity#645067, constraintLabels#645068, constraintOperators#645069, constraintValues#645070, netPriceAmount#645073, netPriceCurrencyCode#645074, netPriceQuantity#645075, netPriceQuantityUom#645076, netPriceQuantityUomUuid#645077, measurements#645078, optimizationGroups#645080]
(12) BroadcastExchange
Input [29]: [worklistShardItemId#645060L, orderProposalId#645037L, orderProposalItemGroupId#645061, splitIndicator#645056L, sourceOfSupplyUuid#645051, supplier#645040, subrange#645043, product#645046, plant#645041, deliveryDateTime#645042, availabilityDateTime#645048, nextAvailabilityDateTime#645049, isFallbackOrderOnly#645054, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid#645066, netPriceQuantity#645075, netPriceQuantityUom#645076, netPriceQuantityUomUuid#645077, netPriceAmount#645073, netPriceCurrencyCode#645074, measurements#645078, minimumOrderQuantity#645067, constraintLabels#645068, constraintOperators#645069, constraintValues#645070, logisticUnits#645064, optimizationGroups#645080, supplyingPlant#645044, productGroup#645045]
Arguments: HashedRelationBroadcastMode(List(input[0, bigint, true]),false), [plan_id=271512]
(13) BroadcastHashJoin [codegen id : 3]
Left keys [1]: [worklistShardItemId#643816L]
Right keys [1]: [worklistShardItemId#645060L]
Join type: LeftOuter
Join condition: (shardId#643168 = 0_1_10000002106)
(14) Filter [codegen id : 3]
Input [33]: [shardId#643168, worklistShardItemId#643816L, quantityAfterProdPlantOptimization#643817, qty#643818, worklistShardItemId#645060L, orderProposalId#645037L, orderProposalItemGroupId#645061, splitIndicator#645056L, sourceOfSupplyUuid#645051, supplier#645040, subrange#645043, product#645046, plant#645041, deliveryDateTime#645042, availabilityDateTime#645048, nextAvailabilityDateTime#645049, isFallbackOrderOnly#645054, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid#645066, netPriceQuantity#645075, netPriceQuantityUom#645076, netPriceQuantityUomUuid#645077, netPriceAmount#645073, netPriceCurrencyCode#645074, measurements#645078, minimumOrderQuantity#645067, constraintLabels#645068, constraintOperators#645069, constraintValues#645070, logisticUnits#645064, optimizationGroups#645080, supplyingPlant#645044, productGroup#645045]
Condition : NOT (isFallbackOrderOnly#645054 <=> true)
(15) Project [codegen id : 3]
Output [31]: [shardId#643168, worklistShardItemId#643816L, quantityAfterProdPlantOptimization#643817, qty#643818, orderProposalId#645037L, supplier#645040, supplyingPlant#645044, productGroup#645045, product#645046, plant#645041, subrange#645043, deliveryDateTime#645042, availabilityDateTime#645048, nextAvailabilityDateTime#645049, constraintValues#645070, constraintOperators#645069, constraintLabels#645068, logisticUnits#645064, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid#645066, splitIndicator#645056L, netPriceAmount#645073, netPriceCurrencyCode#645074, netPriceQuantity#645075, netPriceQuantityUom#645076, netPriceQuantityUomUuid#645077, sourceOfSupplyUuid#645051, minimumOrderQuantity#645067, orderProposalItemGroupId#645061, optimizationGroups#645080, measurements#645078]
Input [33]: [shardId#643168, worklistShardItemId#643816L, quantityAfterProdPlantOptimization#643817, qty#643818, worklistShardItemId#645060L, orderProposalId#645037L, orderProposalItemGroupId#645061, splitIndicator#645056L, sourceOfSupplyUuid#645051, supplier#645040, subrange#645043, product#645046, plant#645041, deliveryDateTime#645042, availabilityDateTime#645048, nextAvailabilityDateTime#645049, isFallbackOrderOnly#645054, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid#645066, netPriceQuantity#645075, netPriceQuantityUom#645076, netPriceQuantityUomUuid#645077, netPriceAmount#645073, netPriceCurrencyCode#645074, measurements#645078, minimumOrderQuantity#645067, constraintLabels#645068, constraintOperators#645069, constraintValues#645070, logisticUnits#645064, optimizationGroups#645080, supplyingPlant#645044, productGroup#645045]
(16) Exchange
Input [31]: [shardId#643168, worklistShardItemId#643816L, quantityAfterProdPlantOptimization#643817, qty#643818, orderProposalId#645037L, supplier#645040, supplyingPlant#645044, productGroup#645045, product#645046, plant#645041, subrange#645043, deliveryDateTime#645042, availabilityDateTime#645048, nextAvailabilityDateTime#645049, constraintValues#645070, constraintOperators#645069, constraintLabels#645068, logisticUnits#645064, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid#645066, splitIndicator#645056L, netPriceAmount#645073, netPriceCurrencyCode#645074, netPriceQuantity#645075, netPriceQuantityUom#645076, netPriceQuantityUomUuid#645077, sourceOfSupplyUuid#645051, minimumOrderQuantity#645067, orderProposalItemGroupId#645061, optimizationGroups#645080, measurements#645078]
Arguments: hashpartitioning(shardId#643168, worklistShardItemId#643816L, 20), ENSURE_REQUIREMENTS, [plan_id=271518]
(17) Sort [codegen id : 4]
Input [31]: [shardId#643168, worklistShardItemId#643816L, quantityAfterProdPlantOptimization#643817, qty#643818, orderProposalId#645037L, supplier#645040, supplyingPlant#645044, productGroup#645045, product#645046, plant#645041, subrange#645043, deliveryDateTime#645042, availabilityDateTime#645048, nextAvailabilityDateTime#645049, constraintValues#645070, constraintOperators#645069, constraintLabels#645068, logisticUnits#645064, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid#645066, splitIndicator#645056L, netPriceAmount#645073, netPriceCurrencyCode#645074, netPriceQuantity#645075, netPriceQuantityUom#645076, netPriceQuantityUomUuid#645077, sourceOfSupplyUuid#645051, minimumOrderQuantity#645067, orderProposalItemGroupId#645061, optimizationGroups#645080, measurements#645078]
Arguments: [shardId#643168 ASC NULLS FIRST, worklistShardItemId#643816L ASC NULLS FIRST], false, 0
(18) Scan ExistingRDD [codegen id : 5]
Output [6]: [shardId#647194, worklistShardItemId#647195L, qty#647196, demandChannel#647197, demandStream#647198, kpis#647199]
Arguments: [shardId#647194, worklistShardItemId#647195L, qty#647196, demandChannel#647197, demandStream#647198, kpis#647199], MapPartitionsRDD[30878] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(19) Filter [codegen id : 5]
Input [6]: [shardId#647194, worklistShardItemId#647195L, qty#647196, demandChannel#647197, demandStream#647198, kpis#647199]
Condition : (((isnull(qty#647196) AND isnull(demandChannel#647197)) AND isnull(demandStream#647198)) AND (((shardId#647194 = 0_1_10000002106) AND isnotnull(shardId#647194)) AND isnotnull(worklistShardItemId#647195L)))
(20) Project [codegen id : 5]
Output [3]: [shardId#647194, worklistShardItemId#647195L, coalesce(kpis#647199, []) AS prodLocSpecificKpis#647200]
Input [6]: [shardId#647194, worklistShardItemId#647195L, qty#647196, demandChannel#647197, demandStream#647198, kpis#647199]
(21) Exchange
Input [3]: [shardId#647194, worklistShardItemId#647195L, prodLocSpecificKpis#647200]
Arguments: hashpartitioning(shardId#647194, worklistShardItemId#647195L, 20), ENSURE_REQUIREMENTS, [plan_id=271524]
(22) Sort [codegen id : 6]
Input [3]: [shardId#647194, worklistShardItemId#647195L, prodLocSpecificKpis#647200]
Arguments: [shardId#647194 ASC NULLS FIRST, worklistShardItemId#647195L ASC NULLS FIRST], false, 0
(23) SortMergeJoin [codegen id : 7]
Left keys [2]: [shardId#643168, worklistShardItemId#643816L]
Right keys [2]: [shardId#647194, worklistShardItemId#647195L]
Join type: LeftOuter
Join condition: None
(24) Project [codegen id : 7]
Output [32]: [shardId#643168, worklistShardItemId#643816L, quantityAfterProdPlantOptimization#643817, qty#643818, orderProposalId#645037L, supplier#645040, supplyingPlant#645044, productGroup#645045, product#645046, plant#645041, subrange#645043, deliveryDateTime#645042, availabilityDateTime#645048, nextAvailabilityDateTime#645049, constraintValues#645070, constraintOperators#645069, constraintLabels#645068, logisticUnits#645064, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid#645066, splitIndicator#645056L, netPriceAmount#645073, netPriceCurrencyCode#645074, netPriceQuantity#645075, netPriceQuantityUom#645076, netPriceQuantityUomUuid#645077, sourceOfSupplyUuid#645051, minimumOrderQuantity#645067, orderProposalItemGroupId#645061, optimizationGroups#645080, measurements#645078, coalesce(prodLocSpecificKpis#647200, []) AS prodLocSpecificKpis#647201]
Input [34]: [shardId#643168, worklistShardItemId#643816L, quantityAfterProdPlantOptimization#643817, qty#643818, orderProposalId#645037L, supplier#645040, supplyingPlant#645044, productGroup#645045, product#645046, plant#645041, subrange#645043, deliveryDateTime#645042, availabilityDateTime#645048, nextAvailabilityDateTime#645049, constraintValues#645070, constraintOperators#645069, constraintLabels#645068, logisticUnits#645064, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid#645066, splitIndicator#645056L, netPriceAmount#645073, netPriceCurrencyCode#645074, netPriceQuantity#645075, netPriceQuantityUom#645076, netPriceQuantityUomUuid#645077, sourceOfSupplyUuid#645051, minimumOrderQuantity#645067, orderProposalItemGroupId#645061, optimizationGroups#645080, measurements#645078, shardId#647194, worklistShardItemId#647195L, prodLocSpecificKpis#647200]
(25) Scan ExistingRDD [codegen id : 8]
Output [6]: [shardId#647210, worklistShardItemId#647211L, qty#647212, demandChannel#647213, demandStream#647214, kpis#647215]
Arguments: [shardId#647210, worklistShardItemId#647211L, qty#647212, demandChannel#647213, demandStream#647214, kpis#647215], MapPartitionsRDD[30878] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(26) Filter [codegen id : 8]
Input [6]: [shardId#647210, worklistShardItemId#647211L, qty#647212, demandChannel#647213, demandStream#647214, kpis#647215]
Condition : ((((isnull(qty#647212) AND isnotnull(demandChannel#647213)) AND isnotnull(demandStream#647214)) AND (size(kpis#647215, true) > 0)) AND (((shardId#647210 = 0_1_10000002106) AND isnotnull(shardId#647210)) AND isnotnull(worklistShardItemId#647211L)))
(27) Project [codegen id : 8]
Output [5]: [shardId#647210, worklistShardItemId#647211L, demandChannel#647213, demandStream#647214, kpis#647215]
Input [6]: [shardId#647210, worklistShardItemId#647211L, qty#647212, demandChannel#647213, demandStream#647214, kpis#647215]
(28) ObjectHashAggregate
Input [5]: [shardId#647210, worklistShardItemId#647211L, demandChannel#647213, demandStream#647214, kpis#647215]
Keys [2]: [shardId#647210, worklistShardItemId#647211L]
Functions [1]: [partial_collect_list(struct(demandChannel, demandChannel#647213, demandStream, demandStream#647214, kpis, kpis#647215), 0, 0)]
Aggregate Attributes [1]: [buf#648290]
Results [3]: [shardId#647210, worklistShardItemId#647211L, buf#648291]
(29) Exchange
Input [3]: [shardId#647210, worklistShardItemId#647211L, buf#648291]
Arguments: hashpartitioning(shardId#647210, worklistShardItemId#647211L, 20), ENSURE_REQUIREMENTS, [plan_id=271535]
(30) ObjectHashAggregate
Input [3]: [shardId#647210, worklistShardItemId#647211L, buf#648291]
Keys [2]: [shardId#647210, worklistShardItemId#647211L]
Functions [1]: [collect_list(struct(demandChannel, demandChannel#647213, demandStream, demandStream#647214, kpis, kpis#647215), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(demandChannel, demandChannel#647213, demandStream, demandStream#647214, kpis, kpis#647215), 0, 0)#647209]
Results [3]: [shardId#647210, worklistShardItemId#647211L, collect_list(struct(demandChannel, demandChannel#647213, demandStream, demandStream#647214, kpis, kpis#647215), 0, 0)#647209 AS channelStreamSpecificKpis#647202]
(31) Sort [codegen id : 9]
Input [3]: [shardId#647210, worklistShardItemId#647211L, channelStreamSpecificKpis#647202]
Arguments: [shardId#647210 ASC NULLS FIRST, worklistShardItemId#647211L ASC NULLS FIRST], false, 0
(32) SortMergeJoin [codegen id : 10]
Left keys [2]: [shardId#643168, worklistShardItemId#643816L]
Right keys [2]: [shardId#647210, worklistShardItemId#647211L]
Join type: LeftOuter
Join condition: None
(33) Project [codegen id : 10]
Output [33]: [shardId#643168, worklistShardItemId#643816L, quantityAfterProdPlantOptimization#643817, qty#643818, orderProposalId#645037L, supplier#645040, supplyingPlant#645044, productGroup#645045, product#645046, plant#645041, subrange#645043, deliveryDateTime#645042, availabilityDateTime#645048, nextAvailabilityDateTime#645049, constraintValues#645070, constraintOperators#645069, constraintLabels#645068, logisticUnits#645064, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid#645066, splitIndicator#645056L, netPriceAmount#645073, netPriceCurrencyCode#645074, netPriceQuantity#645075, netPriceQuantityUom#645076, netPriceQuantityUomUuid#645077, sourceOfSupplyUuid#645051, minimumOrderQuantity#645067, orderProposalItemGroupId#645061, optimizationGroups#645080, measurements#645078, prodLocSpecificKpis#647201, coalesce(channelStreamSpecificKpis#647202, []) AS channelStreamSpecificKpis#647216]
Input [35]: [shardId#643168, worklistShardItemId#643816L, quantityAfterProdPlantOptimization#643817, qty#643818, orderProposalId#645037L, supplier#645040, supplyingPlant#645044, productGroup#645045, product#645046, plant#645041, subrange#645043, deliveryDateTime#645042, availabilityDateTime#645048, nextAvailabilityDateTime#645049, constraintValues#645070, constraintOperators#645069, constraintLabels#645068, logisticUnits#645064, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid#645066, splitIndicator#645056L, netPriceAmount#645073, netPriceCurrencyCode#645074, netPriceQuantity#645075, netPriceQuantityUom#645076, netPriceQuantityUomUuid#645077, sourceOfSupplyUuid#645051, minimumOrderQuantity#645067, orderProposalItemGroupId#645061, optimizationGroups#645080, measurements#645078, prodLocSpecificKpis#647201, shardId#647210, worklistShardItemId#647211L, channelStreamSpecificKpis#647202]
(34) Scan ExistingRDD [codegen id : 11]
Output [6]: [shardId#647223, worklistShardItemId#647224L, qty#647225, demandChannel#647226, demandStream#647227, kpis#647228]
Arguments: [shardId#647223, worklistShardItemId#647224L, qty#647225, demandChannel#647226, demandStream#647227, kpis#647228], MapPartitionsRDD[30878] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(35) Filter [codegen id : 11]
Input [6]: [shardId#647223, worklistShardItemId#647224L, qty#647225, demandChannel#647226, demandStream#647227, kpis#647228]
Condition : ((isnotnull(qty#647225) AND isnotnull(kpis#647228)) AND (((shardId#647223 = 0_1_10000002106) AND isnotnull(shardId#647223)) AND isnotnull(worklistShardItemId#647224L)))
(36) Project [codegen id : 11]
Output [4]: [shardId#647223, worklistShardItemId#647224L, qty#647225, kpis#647228]
Input [6]: [shardId#647223, worklistShardItemId#647224L, qty#647225, demandChannel#647226, demandStream#647227, kpis#647228]
(37) ObjectHashAggregate
Input [4]: [shardId#647223, worklistShardItemId#647224L, qty#647225, kpis#647228]
Keys [2]: [shardId#647223, worklistShardItemId#647224L]
Functions [1]: [partial_collect_list(struct(qty, qty#647225, kpis, kpis#647228), 0, 0)]
Aggregate Attributes [1]: [buf#648292]
Results [3]: [shardId#647223, worklistShardItemId#647224L, buf#648293]
(38) Exchange
Input [3]: [shardId#647223, worklistShardItemId#647224L, buf#648293]
Arguments: hashpartitioning(shardId#647223, worklistShardItemId#647224L, 20), ENSURE_REQUIREMENTS, [plan_id=271547]
(39) ObjectHashAggregate
Input [3]: [shardId#647223, worklistShardItemId#647224L, buf#648293]
Keys [2]: [shardId#647223, worklistShardItemId#647224L]
Functions [1]: [collect_list(struct(qty, qty#647225, kpis, kpis#647228), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(qty, qty#647225, kpis, kpis#647228), 0, 0)#647222]
Results [3]: [shardId#647223, worklistShardItemId#647224L, map_from_entries(collect_list(struct(qty, qty#647225, kpis, kpis#647228), 0, 0)#647222) AS quantityKpis#647217]
(40) Sort [codegen id : 12]
Input [3]: [shardId#647223, worklistShardItemId#647224L, quantityKpis#647217]
Arguments: [shardId#647223 ASC NULLS FIRST, worklistShardItemId#647224L ASC NULLS FIRST], false, 0
(41) SortMergeJoin [codegen id : 13]
Left keys [2]: [shardId#643168, worklistShardItemId#643816L]
Right keys [2]: [shardId#647223, worklistShardItemId#647224L]
Join type: LeftOuter
Join condition: None
(42) Project [codegen id : 13]
Output [31]: [shardId#643168, quantityAfterProdPlantOptimization#643817, qty#643818, orderProposalId#645037L, supplier#645040, supplyingPlant#645044, productGroup#645045, product#645046, plant#645041, subrange#645043, deliveryDateTime#645042, availabilityDateTime#645048, nextAvailabilityDateTime#645049, logisticUnits#645064, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid#645066, splitIndicator#645056L, netPriceAmount#645073, netPriceCurrencyCode#645074, netPriceQuantity#645075, netPriceQuantityUom#645076, netPriceQuantityUomUuid#645077, sourceOfSupplyUuid#645051, minimumOrderQuantity#645067, orderProposalItemGroupId#645061, optimizationGroups#645080, measurements#645078, prodLocSpecificKpis#647201, channelStreamSpecificKpis#647216, coalesce(quantityKpis#647217, map(keys: [], values: [])) AS quantityKpis#647229, arrays_zip(constraintLabels#645068, constraintOperators#645069, constraintValues#645070, constraintLabels, constraintOperators, constraintValues) AS constraintStructArray#648543]
Input [36]: [shardId#643168, worklistShardItemId#643816L, quantityAfterProdPlantOptimization#643817, qty#643818, orderProposalId#645037L, supplier#645040, supplyingPlant#645044, productGroup#645045, product#645046, plant#645041, subrange#645043, deliveryDateTime#645042, availabilityDateTime#645048, nextAvailabilityDateTime#645049, constraintValues#645070, constraintOperators#645069, constraintLabels#645068, logisticUnits#645064, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid#645066, splitIndicator#645056L, netPriceAmount#645073, netPriceCurrencyCode#645074, netPriceQuantity#645075, netPriceQuantityUom#645076, netPriceQuantityUomUuid#645077, sourceOfSupplyUuid#645051, minimumOrderQuantity#645067, orderProposalItemGroupId#645061, optimizationGroups#645080, measurements#645078, prodLocSpecificKpis#647201, channelStreamSpecificKpis#647216, shardId#647223, worklistShardItemId#647224L, quantityKpis#647217]
(43) Project
Output [32]: [shardId#643168, qty#643818, orderProposalId#645037L, supplier#645040, supplyingPlant#645044, productGroup#645045, product#645046, plant#645041, subrange#645043, deliveryDateTime#645042, availabilityDateTime#645048, nextAvailabilityDateTime#645049, logisticUnits#645064, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid#645066, splitIndicator#645056L, netPriceAmount#645073, netPriceCurrencyCode#645074, netPriceQuantity#645075, netPriceQuantityUom#645076, netPriceQuantityUomUuid#645077, sourceOfSupplyUuid#645051, orderProposalItemGroupId#645061, optimizationGroups#645080, measurements#645078, prodLocSpecificKpis#647201, channelStreamSpecificKpis#647216, quantityKpis#647229, struct(minServiceLevel, array_min(filter(constraintStructArray#648543, lambdafunction((lambda x_1656#648550.constraintLabels = ServiceLevel), lambda x_1656#648550, false)).constraintValues), minServiceLevelMinStock, null, maxServiceLevelEndOfListing, array_min(filter(constraintStructArray#648543, lambdafunction((lambda x_1657#648551.constraintLabels = ServiceLevelAtStartOfDelisting), lambda x_1657#648551, false)).constraintValues), maxRoc, array_min(filter(constraintStructArray#648543, lambdafunction((lambda x_1658#648552.constraintLabels = RangeOfCoverage), lambda x_1658#648552, false)).constraintValues), minimumOrderQuantity, minimumOrderQuantity#645067, endOfListingDateTime, coalesce(filter(prodLocSpecificKpis#647201, lambdafunction((lambda x_1659#648553.label = NonListingStartTimestamp), lambda x_1659#648553, false))[0].dateTime, 1970-01-01 00:00:00)) AS constraintBenchmark#648549, CASE WHEN (qty#643818 <=> quantityAfterProdPlantOptimization#643817) THEN array(struct(isProposedCandidate, true, isProdlocOptimalCandidate, true, candidateOrderQuantity, coalesce((qty#643818 * (cast(element_at(filter(logisticUnits#645064, lambdafunction(lambda x_1660#648621.isOrderUnit, lambda x_1660#648621, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#645064, lambdafunction(lambda x_1660#648622.isOrderUnit, lambda x_1660#648622, false)), 1, None, false).numerator as double))), qty#643818), orderQuantityUom, coalesce(element_at(filter(logisticUnits#645064, lambdafunction(lambda x_1660#648623.isOrderUnit, lambda x_1660#648623, false)), 1, None, false).uom, orderQuantityBaseUom#645065), orderQuantityUomUuid, coalesce(element_at(filter(logisticUnits#645064, lambdafunction(lambda x_1660#648624.isOrderUnit, lambda x_1660#648624, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#645066), candidateOrderQuantityInBaseUnit, qty#643818, orderQuantityBaseUom, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid, orderQuantityBaseUomUuid#645066, candidateOrderQuantityInPreferredUnit, coalesce(array_min(transform(filter(logisticUnits#645064, lambdafunction((lambda x_1662#648625.isPreferred AND (((qty#643818 * cast(lambda x_1662#648625.denominator as double)) % cast(lambda x_1662#648625.numerator as double)) = 0.0)), lambda x_1662#648625, false)), lambdafunction(struct(inPreferredQuantity, ((qty#643818 * cast(lambda x_1663#648663.denominator as double)) / cast(lambda x_1663#648663.numerator as double)), uom, lambda x_1663#648663.uom, uomUuid, lambda x_1663#648663.uomUuid), lambda x_1663#648663, false))).inPreferredQuantity, coalesce((qty#643818 * (cast(element_at(filter(logisticUnits#645064, lambdafunction(lambda x_1661#648626.isOrderUnit, lambda x_1661#648626, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#645064, lambdafunction(lambda x_1661#648627.isOrderUnit, lambda x_1661#648627, false)), 1, None, false).numerator as double))), qty#643818)), orderQuantityPreferredUom, coalesce(array_min(transform(filter(logisticUnits#645064, lambdafunction((lambda x_1662#648628.isPreferred AND (((qty#643818 * cast(lambda x_1662#648628.denominator as double)) % cast(lambda x_1662#648628.numerator as double)) = 0.0)), lambda x_1662#648628, false)), lambdafunction(struct(inPreferredQuantity, ((qty#643818 * cast(lambda x_1663#648664.denominator as double)) / cast(lambda x_1663#648664.numerator as double)), uom, lambda x_1663#648664.uom, uomUuid, lambda x_1663#648664.uomUuid), lambda x_1663#648664, false))).uom, coalesce(element_at(filter(logisticUnits#645064, lambdafunction(lambda x_1661#648629.isOrderUnit, lambda x_1661#648629, false)), 1, None, false).uom, orderQuantityBaseUom#645065)), orderQuantityPreferredUomUuid, coalesce(array_min(transform(filter(logisticUnits#645064, lambdafunction((lambda x_1662#648630.isPreferred AND (((qty#643818 * cast(lambda x_1662#648630.denominator as double)) % cast(lambda x_1662#648630.numerator as double)) = 0.0)), lambda x_1662#648630, false)), lambdafunction(struct(inPreferredQuantity, ((qty#643818 * cast(lambda x_1663#648665.denominator as double)) / cast(lambda x_1663#648665.numerator as double)), uom, lambda x_1663#648665.uom, uomUuid, lambda x_1663#648665.uomUuid), lambda x_1663#648665, false))).uomUuid, coalesce(element_at(filter(logisticUnits#645064, lambdafunction(lambda x_1661#648631.isOrderUnit, lambda x_1661#648631, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#645066)), serviceLevel, coalesce(filter(element_at(quantityKpis#647229, qty#643818, None, false), lambdafunction((lambda x_1668#648632.label = ServiceLevel), lambda x_1668#648632, false))[0].value, 0.0), serviceLevelMinStock, ... 5 more fields)) ELSE array(struct(isProposedCandidate, true, isProdlocOptimalCandidate, false, candidateOrderQuantity, coalesce((qty#643818 * (cast(element_at(filter(logisticUnits#645064, lambdafunction(lambda x_1660#648635.isOrderUnit, lambda x_1660#648635, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#645064, lambdafunction(lambda x_1660#648636.isOrderUnit, lambda x_1660#648636, false)), 1, None, false).numerator as double))), qty#643818), orderQuantityUom, coalesce(element_at(filter(logisticUnits#645064, lambdafunction(lambda x_1660#648637.isOrderUnit, lambda x_1660#648637, false)), 1, None, false).uom, orderQuantityBaseUom#645065), orderQuantityUomUuid, coalesce(element_at(filter(logisticUnits#645064, lambdafunction(lambda x_1660#648638.isOrderUnit, lambda x_1660#648638, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#645066), candidateOrderQuantityInBaseUnit, qty#643818, orderQuantityBaseUom, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid, orderQuantityBaseUomUuid#645066, candidateOrderQuantityInPreferredUnit, coalesce(array_min(transform(filter(logisticUnits#645064, lambdafunction((lambda x_1662#648639.isPreferred AND (((qty#643818 * cast(lambda x_1662#648639.denominator as double)) % cast(lambda x_1662#648639.numerator as double)) = 0.0)), lambda x_1662#648639, false)), lambdafunction(struct(inPreferredQuantity, ((qty#643818 * cast(lambda x_1663#648666.denominator as double)) / cast(lambda x_1663#648666.numerator as double)), uom, lambda x_1663#648666.uom, uomUuid, lambda x_1663#648666.uomUuid), lambda x_1663#648666, false))).inPreferredQuantity, coalesce((qty#643818 * (cast(element_at(filter(logisticUnits#645064, lambdafunction(lambda x_1661#648640.isOrderUnit, lambda x_1661#648640, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#645064, lambdafunction(lambda x_1661#648641.isOrderUnit, lambda x_1661#648641, false)), 1, None, false).numerator as double))), qty#643818)), orderQuantityPreferredUom, coalesce(array_min(transform(filter(logisticUnits#645064, lambdafunction((lambda x_1662#648642.isPreferred AND (((qty#643818 * cast(lambda x_1662#648642.denominator as double)) % cast(lambda x_1662#648642.numerator as double)) = 0.0)), lambda x_1662#648642, false)), lambdafunction(struct(inPreferredQuantity, ((qty#643818 * cast(lambda x_1663#648667.denominator as double)) / cast(lambda x_1663#648667.numerator as double)), uom, lambda x_1663#648667.uom, uomUuid, lambda x_1663#648667.uomUuid), lambda x_1663#648667, false))).uom, coalesce(element_at(filter(logisticUnits#645064, lambdafunction(lambda x_1661#648643.isOrderUnit, lambda x_1661#648643, false)), 1, None, false).uom, orderQuantityBaseUom#645065)), orderQuantityPreferredUomUuid, coalesce(array_min(transform(filter(logisticUnits#645064, lambdafunction((lambda x_1662#648644.isPreferred AND (((qty#643818 * cast(lambda x_1662#648644.denominator as double)) % cast(lambda x_1662#648644.numerator as double)) = 0.0)), lambda x_1662#648644, false)), lambdafunction(struct(inPreferredQuantity, ((qty#643818 * cast(lambda x_1663#648668.denominator as double)) / cast(lambda x_1663#648668.numerator as double)), uom, lambda x_1663#648668.uom, uomUuid, lambda x_1663#648668.uomUuid), lambda x_1663#648668, false))).uomUuid, coalesce(element_at(filter(logisticUnits#645064, lambdafunction(lambda x_1661#648645.isOrderUnit, lambda x_1661#648645, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#645066)), serviceLevel, coalesce(filter(element_at(quantityKpis#647229, qty#643818, None, false), lambdafunction((lambda x_1671#648646.label = ServiceLevel), lambda x_1671#648646, false))[0].value, 0.0), serviceLevelMinStock, ... 5 more fields), struct(isProposedCandidate, false, isProdlocOptimalCandidate, true, candidateOrderQuantity, coalesce((quantityAfterProdPlantOptimization#643817 * (cast(element_at(filter(logisticUnits#645064, lambdafunction(lambda x_1664#648649.isOrderUnit, lambda x_1664#648649, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#645064, lambdafunction(lambda x_1664#648650.isOrderUnit, lambda x_1664#648650, false)), 1, None, false).numerator as double))), quantityAfterProdPlantOptimization#643817), orderQuantityUom, coalesce(element_at(filter(logisticUnits#645064, lambdafunction(lambda x_1664#648651.isOrderUnit, lambda x_1664#648651, false)), 1, None, false).uom, orderQuantityBaseUom#645065), orderQuantityUomUuid, coalesce(element_at(filter(logisticUnits#645064, lambdafunction(lambda x_1664#648652.isOrderUnit, lambda x_1664#648652, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#645066), candidateOrderQuantityInBaseUnit, quantityAfterProdPlantOptimization#643817, orderQuantityBaseUom, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid, orderQuantityBaseUomUuid#645066, candidateOrderQuantityInPreferredUnit, coalesce(array_min(transform(filter(logisticUnits#645064, lambdafunction((lambda x_1666#648653.isPreferred AND (((quantityAfterProdPlantOptimization#643817 * cast(lambda x_1666#648653.denominator as double)) % cast(lambda x_1666#648653.numerator as double)) = 0.0)), lambda x_1666#648653, false)), lambdafunction(struct(inPreferredQuantity, ((quantityAfterProdPlantOptimization#643817 * cast(lambda x_1667#648669.denominator as double)) / cast(lambda x_1667#648669.numerator as double)), uom, lambda x_1667#648669.uom, uomUuid, lambda x_1667#648669.uomUuid), lambda x_1667#648669, false))).inPreferredQuantity, coalesce((quantityAfterProdPlantOptimization#643817 * (cast(element_at(filter(logisticUnits#645064, lambdafunction(lambda x_1665#648654.isOrderUnit, lambda x_1665#648654, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#645064, lambdafunction(lambda x_1665#648655.isOrderUnit, lambda x_1665#648655, false)), 1, None, false).numerator as double))), quantityAfterProdPlantOptimization#643817)), orderQuantityPreferredUom, coalesce(array_min(transform(filter(logisticUnits#645064, lambdafunction((lambda x_1666#648656.isPreferred AND (((quantityAfterProdPlantOptimization#643817 * cast(lambda x_1666#648656.denominator as double)) % cast(lambda x_1666#648656.numerator as double)) = 0.0)), lambda x_1666#648656, false)), lambdafunction(struct(inPreferredQuantity, ((quantityAfterProdPlantOptimization#643817 * cast(lambda x_1667#648670.denominator as double)) / cast(lambda x_1667#648670.numerator as double)), uom, lambda x_1667#648670.uom, uomUuid, lambda x_1667#648670.uomUuid), lambda x_1667#648670, false))).uom, coalesce(element_at(filter(logisticUnits#645064, lambdafunction(lambda x_1665#648657.isOrderUnit, lambda x_1665#648657, false)), 1, None, false).uom, orderQuantityBaseUom#645065)), orderQuantityPreferredUomUuid, coalesce(array_min(transform(filter(logisticUnits#645064, lambdafunction((lambda x_1666#648658.isPreferred AND (((quantityAfterProdPlantOptimization#643817 * cast(lambda x_1666#648658.denominator as double)) % cast(lambda x_1666#648658.numerator as double)) = 0.0)), lambda x_1666#648658, false)), lambdafunction(struct(inPreferredQuantity, ((quantityAfterProdPlantOptimization#643817 * cast(lambda x_1667#648671.denominator as double)) / cast(lambda x_1667#648671.numerator as double)), uom, lambda x_1667#648671.uom, uomUuid, lambda x_1667#648671.uomUuid), lambda x_1667#648671, false))).uomUuid, coalesce(element_at(filter(logisticUnits#645064, lambdafunction(lambda x_1665#648659.isOrderUnit, lambda x_1665#648659, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#645066)), serviceLevel, coalesce(filter(element_at(quantityKpis#647229, quantityAfterProdPlantOptimization#643817, None, false), lambdafunction((lambda x_1674#648660.label = ServiceLevel), lambda x_1674#648660, false))[0].value, 0.0), serviceLevelMinStock, ... 5 more fields)) END AS calculationAnalysis#648620, coalesce(filter(prodLocSpecificKpis#647201, lambdafunction((lambda x_1677#648673.label = InitialStockQty), lambda x_1677#648673, false))[0].dateTime, 1970-01-01 00:00:00) AS inventoryDateTime#648672, coalesce(filter(prodLocSpecificKpis#647201, lambdafunction((lambda x_1678#648675.label = DemandPeriodEndTimestamp), lambda x_1678#648675, false))[0].dateTime, 1970-01-01 00:00:00) AS demandPeriodEndDateTime#648674]
Input [31]: [shardId#643168, quantityAfterProdPlantOptimization#643817, qty#643818, orderProposalId#645037L, supplier#645040, supplyingPlant#645044, productGroup#645045, product#645046, plant#645041, subrange#645043, deliveryDateTime#645042, availabilityDateTime#645048, nextAvailabilityDateTime#645049, logisticUnits#645064, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid#645066, splitIndicator#645056L, netPriceAmount#645073, netPriceCurrencyCode#645074, netPriceQuantity#645075, netPriceQuantityUom#645076, netPriceQuantityUomUuid#645077, sourceOfSupplyUuid#645051, minimumOrderQuantity#645067, orderProposalItemGroupId#645061, optimizationGroups#645080, measurements#645078, prodLocSpecificKpis#647201, channelStreamSpecificKpis#647216, quantityKpis#647229, constraintStructArray#648543]
(44) Project
Output [5]: [shardId#643168, orderProposalId#645037L, splitIndicator#645056L, orderProposalItemGroupId#645061, struct(itemId, 123456, itemGroupId, 123456, supplier, supplier#645040, supplyingPlant, supplyingPlant#645044, productGroup, productGroup#645045, product, product#645046, plant, plant#645041, supplierSubRange, subrange#645043, sourceOfSupplyUuid, sourceOfSupplyUuid#645051, deliveryDateTime, deliveryDateTime#645042, unitPrice, netPriceAmount#645073, unitPriceCurrency, netPriceCurrencyCode#645074, unitPriceQuantity, ... 37 more fields) AS parentItem#648754]
Input [32]: [shardId#643168, qty#643818, orderProposalId#645037L, supplier#645040, supplyingPlant#645044, productGroup#645045, product#645046, plant#645041, subrange#645043, deliveryDateTime#645042, availabilityDateTime#645048, nextAvailabilityDateTime#645049, logisticUnits#645064, orderQuantityBaseUom#645065, orderQuantityBaseUomUuid#645066, splitIndicator#645056L, netPriceAmount#645073, netPriceCurrencyCode#645074, netPriceQuantity#645075, netPriceQuantityUom#645076, netPriceQuantityUomUuid#645077, sourceOfSupplyUuid#645051, orderProposalItemGroupId#645061, optimizationGroups#645080, measurements#645078, prodLocSpecificKpis#647201, channelStreamSpecificKpis#647216, quantityKpis#647229, constraintBenchmark#648549, calculationAnalysis#648620, inventoryDateTime#648672, demandPeriodEndDateTime#648674]
(45) ObjectHashAggregate
Input [5]: [shardId#643168, orderProposalId#645037L, splitIndicator#645056L, orderProposalItemGroupId#645061, parentItem#648754]
Keys [4]: [shardId#643168, orderProposalId#645037L, splitIndicator#645056L, orderProposalItemGroupId#645061]
Functions [1]: [partial_collect_list(parentItem#648754, 0, 0)]
Aggregate Attributes [1]: [buf#650121]
Results [5]: [shardId#643168, orderProposalId#645037L, splitIndicator#645056L, orderProposalItemGroupId#645061, buf#650129]
(46) Exchange
Input [5]: [shardId#643168, orderProposalId#645037L, splitIndicator#645056L, orderProposalItemGroupId#645061, buf#650129]
Arguments: hashpartitioning(shardId#643168, orderProposalId#645037L, splitIndicator#645056L, orderProposalItemGroupId#645061, 20), ENSURE_REQUIREMENTS, [plan_id=271559]
(47) ObjectHashAggregate
Input [5]: [shardId#643168, orderProposalId#645037L, splitIndicator#645056L, orderProposalItemGroupId#645061, buf#650129]
Keys [4]: [shardId#643168, orderProposalId#645037L, splitIndicator#645056L, orderProposalItemGroupId#645061]
Functions [1]: [collect_list(parentItem#648754, 0, 0)]
Aggregate Attributes [1]: [collect_list(parentItem#648754, 0, 0)#648859]
Results [3]: [shardId#643168, orderProposalId#645037L, collect_list(parentItem#648754, 0, 0)#648859 AS parentItems#648807]
(48) ObjectHashAggregate
Input [3]: [shardId#643168, orderProposalId#645037L, parentItems#648807]
Keys [2]: [shardId#643168, orderProposalId#645037L]
Functions [1]: [partial_collect_list(parentItems#648807, 0, 0)]
Aggregate Attributes [1]: [buf#650106]
Results [3]: [shardId#643168, orderProposalId#645037L, buf#650114]
(49) Exchange
Input [3]: [shardId#643168, orderProposalId#645037L, buf#650114]
Arguments: hashpartitioning(shardId#643168, orderProposalId#645037L, 20), ENSURE_REQUIREMENTS, [plan_id=271562]
(50) ObjectHashAggregate
Input [3]: [shardId#643168, orderProposalId#645037L, buf#650114]
Keys [2]: [shardId#643168, orderProposalId#645037L]
Functions [1]: [collect_list(parentItems#648807, 0, 0)]
Aggregate Attributes [1]: [collect_list(parentItems#648807, 0, 0)#648891]
Results [2]: [shardId#643168, CASE WHEN (size(flatten(collect_list(parentItems#648807, 0, 0)#648891), true) > 2000) THEN xxhash64(orderProposalId#645037L, 42) ELSE xxhash64(pmod(cast(orderProposalId#645037L as decimal(20,0)), 1), 42) END AS resultSeparationId#657383L]
(51) HashAggregate [codegen id : 14]
Input [2]: [shardId#643168, resultSeparationId#657383L]
Keys [2]: [shardId#643168, resultSeparationId#657383L]
Functions: []
Aggregate Attributes: []
Results [2]: [shardId#643168, resultSeparationId#657383L]
(52) Exchange
Input [2]: [shardId#643168, resultSeparationId#657383L]
Arguments: hashpartitioning(shardId#643168, resultSeparationId#657383L, 20), ENSURE_REQUIREMENTS, [plan_id=271567]
(53) HashAggregate [codegen id : 15]
Input [2]: [shardId#643168, resultSeparationId#657383L]
Keys [2]: [shardId#643168, resultSeparationId#657383L]
Functions: []
Aggregate Attributes: []
Results [2]: [shardId#643168, resultSeparationId#657383L]
(54) Exchange
Input [2]: [shardId#643168, resultSeparationId#657383L]
Arguments: SinglePartition, REPARTITION_BY_NUM, [plan_id=271571]
(55) Project [codegen id : 16]
Output [1]: [shardId#643168]
Input [2]: [shardId#643168, resultSeparationId#657383L]
(56) HashAggregate [codegen id : 16]
Input [1]: [shardId#643168]
Keys [1]: [shardId#643168]
Functions: []
Aggregate Attributes: []
Results [1]: [shardId#643168]
(57) HashAggregate [codegen id : 16]
Input [1]: [shardId#643168]
Keys [1]: [shardId#643168]
Functions: []
Aggregate Attributes: []
Results [1]: [shardId#643168]