digraph G {
0 [id="node0" labelType="html" label="<b>CollectLimit</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>local merged bytes read: 0.0 B<br>remote reqs duration: 0 ms<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>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="CollectLimit 1"];
1 [id="node1" labelType="html" label="<br><b>Union</b><br><br>" tooltip="Union"];
subgraph cluster2 {
isCluster="true";
id="cluster2";
label="WholeStageCodegen (5)\n \nduration: total (min, med, max (stageId: taskId))\n96 ms (0 ms, 9 ms, 11 ms (stage 69341.0: task 175653))";
tooltip="WholeStageCodegen (5)";
3 [id="node3" labelType="html" label="<br><b>LocalLimit</b><br><br>" tooltip="LocalLimit 1"];
4 [id="node4" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project"];
5 [id="node5" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter NOT insight#851864.internalInsightType IN (OP_CALC_ITEM_ACCEPT_THR_NOT_MET,OP_CALC_ITEM_NEGL_THR_NOT_MET,OP_CALC_ITEM_OPT_MISSING_MD,OP_CALC_LOCKED_QUANTITY_PREVENTS_DISCARDING_INSIGHT,OP_CALC_MIN_NOT_MET)"];
6 [id="node6" labelType="html" label="<b>Generate</b><br><br>number of output rows: 0" tooltip="Generate explode(optimizationInsights#847559), false, [insight#851864]"];
7 [id="node7" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [optimizationInsights#847559]"];
8 [id="node8" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [orderProposalId#847554L], [orderProposalId#848266L], Inner, BuildLeft, false"];
19 [id="node19" 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, 2 ms (stage 69341.0: task 175655))<br>peak memory total (min, med, max (stageId: taskId))<br>5.0 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 69341.0: task 175654))<br>number of output rows: 4<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[orderProposalId#848266L], functions=[])"];
}
9 [id="node9" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 0 ms<br>time to build: 0 ms<br>time to collect: 37 ms<br>number of output rows: 0<br>data size: 0.0 B" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(input[0, bigint, false]),false), [plan_id=337341]"];
subgraph cluster10 {
isCluster="true";
id="cluster10";
label="WholeStageCodegen (1)\n \nduration: total (min, med, max (stageId: taskId))\n5 ms (0 ms, 0 ms, 2 ms (stage 69302.0: task 175522))";
tooltip="WholeStageCodegen (1)";
11 [id="node11" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((isnotnull(orderProposalId#847554L) AND (size(optimizationInsights#847559, true) > 0)) AND isnotnull(optimizationInsights#847559))"];
}
12 [id="node12" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 4" tooltip="InMemoryTableScan [orderProposalId#847554L, optimizationInsights#847559], [isnotnull(orderProposalId#847554L), (size(optimizationInsights#847559, true) > 0), isnotnull(optimizationInsights#847559)]"];
subgraph cluster13 {
isCluster="true";
id="cluster13";
label="WholeStageCodegen (1)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (1)";
14 [id="node14" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(shardId#847553) AND (shardId#847553 = 0_1_10000002109))"];
}
15 [id="node15" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#847553, orderProposalId#847554L, items#847555, optimizationGroups#847556, isOptimal#847557, optimizationInsights#847559], [isnotnull(shardId#847553), (shardId#847553 = 0_1_10000002109)]"];
subgraph cluster16 {
isCluster="true";
id="cluster16";
label="WholeStageCodegen (1)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (1)";
17 [id="node17" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(shardId#847553) AND (shardId#847553 = 0_1_10000002109))"];
18 [id="node18" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#847553,orderProposalId#847554L,items#847555,optimizationGroups#847556,isOptimal#847557,lastModified#847558,optimizationInsights#847559]"];
}
20 [id="node20" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 6<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 6<br>local bytes read total (min, med, max (stageId: taskId))<br>300.0 B (75.0 B, 75.0 B, 150.0 B (stage 69341.0: task 175653))<br>merged fetch fallback count: 0<br>local blocks read: 4<br>remote merged chunks fetched: 0<br>remote blocks read: 2<br>data size total (min, med, max (stageId: taskId))<br>96.0 B (16.0 B, 16.0 B, 32.0 B (stage 69338.0: task 175593))<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>1 ms (0 ms, 0 ms, 0 ms (stage 69338.0: task 175595))<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 69341.0: task 175654))<br>remote bytes read: 150.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>450.0 B (75.0 B, 75.0 B, 150.0 B (stage 69338.0: task 175593))" tooltip="Exchange hashpartitioning(orderProposalId#848266L, 20), ENSURE_REQUIREMENTS, [plan_id=337363]"];
subgraph cluster21 {
isCluster="true";
id="cluster21";
label="WholeStageCodegen (4)\n \nduration: total (min, med, max (stageId: taskId))\n34 ms (0 ms, 3 ms, 4 ms (stage 69338.0: task 175596))";
tooltip="WholeStageCodegen (4)";
22 [id="node22" 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>0 ms (0 ms, 0 ms, 0 ms (stage 69338.0: task 175598))<br>peak memory total (min, med, max (stageId: taskId))<br>5.0 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 69338.0: task 175598))<br>number of output rows: 6<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[orderProposalId#848266L], functions=[])"];
23 [id="node23" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [orderProposalId#848266L]"];
24 [id="node24" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 6" tooltip="BroadcastHashJoin [worklistShardItemId#848065L], [worklistShardItemId#848289L], Inner, BuildLeft, false"];
38 [id="node38" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [worklistShardItemId#848289L, orderProposalId#848266L]"];
}
25 [id="node25" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 0 ms<br>time to build: 0 ms<br>time to collect: 41 ms<br>number of output rows: 6<br>data size: 1024.1 KiB" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(input[0, bigint, true]),false), [plan_id=337349]"];
subgraph cluster26 {
isCluster="true";
id="cluster26";
label="WholeStageCodegen (2)\n \nduration: total (min, med, max (stageId: taskId))\n0 ms (0 ms, 0 ms, 0 ms (stage 69303.0: task 175521))";
tooltip="WholeStageCodegen (2)";
27 [id="node27" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [item#848064L AS worklistShardItemId#848065L]"];
28 [id="node28" labelType="html" label="<b>Generate</b><br><br>number of output rows: 6" tooltip="Generate explode(_extract_worklistShardItemId#856499), false, [item#848064L]"];
29 [id="node29" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [items#851858.worklistShardItemId AS _extract_worklistShardItemId#856499]"];
30 [id="node30" labelType="html" label="<b>Filter</b><br><br>number of output rows: 4" tooltip="Filter (((size(items#851858.worklistShardItemId, true) > 0) AND isnotnull(items#851858.worklistShardItemId)) AND (shardId#851856 = 0_1_10000002109))"];
}
31 [id="node31" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 4" tooltip="InMemoryTableScan [items#851858, shardId#851856], [(size(items#851858.worklistShardItemId, true) > 0), isnotnull(items#851858.worklistShardItemId), (shardId#851856 = 0_1_10000002109)]"];
subgraph cluster32 {
isCluster="true";
id="cluster32";
label="WholeStageCodegen (1)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (1)";
33 [id="node33" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(shardId#847553) AND (shardId#847553 = 0_1_10000002109))"];
}
34 [id="node34" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#847553, orderProposalId#847554L, items#847555, optimizationGroups#847556, isOptimal#847557, optimizationInsights#847559], [isnotnull(shardId#847553), (shardId#847553 = 0_1_10000002109)]"];
subgraph cluster35 {
isCluster="true";
id="cluster35";
label="WholeStageCodegen (1)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (1)";
36 [id="node36" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(shardId#847553) AND (shardId#847553 = 0_1_10000002109))"];
37 [id="node37" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#847553,orderProposalId#847554L,items#847555,optimizationGroups#847556,isOptimal#847557,lastModified#847558,optimizationInsights#847559]"];
}
39 [id="node39" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 6<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 6<br>local bytes read total (min, med, max (stageId: taskId))<br>420.0 B (84.0 B, 84.0 B, 84.0 B (stage 69338.0: task 175597))<br>merged fetch fallback count: 0<br>local blocks read: 5<br>remote merged chunks fetched: 0<br>remote blocks read: 1<br>data size total (min, med, max (stageId: taskId))<br>144.0 B (24.0 B, 48.0 B, 48.0 B (stage 69317.0: task 175590))<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>1 ms (0 ms, 0 ms, 0 ms (stage 69317.0: task 175589))<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 69338.0: task 175597))<br>remote bytes read: 84.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>504.0 B (84.0 B, 168.0 B, 168.0 B (stage 69317.0: task 175590))" tooltip="Exchange hashpartitioning(worklistShardItemId#848289L, 20), REPARTITION_BY_NUM, [plan_id=337356]"];
subgraph cluster40 {
isCluster="true";
id="cluster40";
label="WholeStageCodegen (3)\n \nduration: total (min, med, max (stageId: taskId))\n398 ms (93 ms, 102 ms, 103 ms (stage 69317.0: task 175589))";
tooltip="WholeStageCodegen (3)";
41 [id="node41" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [orderProposalId#848266L, worklistShardItemId#848289L]"];
42 [id="node42" labelType="html" label="<b>Filter</b><br><br>number of output rows: 6" tooltip="Filter ((isnotnull(worklistShardItemId#848289L) AND NOT (isFallbackOrderOnly#848283 <=> true)) AND isnotnull(orderProposalId#848266L))"];
43 [id="node43" labelType="html" label="<b>ColumnarToRow</b><br><br>number of output rows: 6<br>number of input batches: 4" tooltip="ColumnarToRow"];
}
44 [id="node44" labelType="html" label="<b>Scan parquet </b><br><br>number of files read: 4<br>scan time total (min, med, max (stageId: taskId))<br>394 ms (92 ms, 101 ms, 102 ms (stage 69317.0: task 175589))<br>dynamic partition pruning time: 0 ms<br>metadata time: 0 ms<br>size of files read: 76.8 KiB<br>number of output rows: 6<br>number of partitions read: 1" tooltip="FileScan parquet [orderProposalId#848266L,isFallbackOrderOnly#848283,worklistShardItemId#848289L,shardId#848310,sequenceId#848288] Batched: true, DataFilters: [isnotnull(worklistShardItemId#848289L), NOT (isFallbackOrderOnly#848283 <=> true), isnotnull(ord..., Format: Parquet, Location: PreparedDeltaFileIndex(1 paths)[hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20...., PartitionFilters: [isnotnull(shardId#848310), isnotnull(sequenceId#848288), (shardId#848310 = 0_1_10000002109), (se..., PushedFilters: [IsNotNull(worklistShardItemId), Not(EqualNullSafe(isFallbackOrderOnly,true)), IsNotNull(orderPro..., ReadSchema: struct<orderProposalId:bigint,isFallbackOrderOnly:boolean,worklistShardItemId:bigint>"];
subgraph cluster45 {
isCluster="true";
id="cluster45";
label="WholeStageCodegen (8)\n \nduration: total (min, med, max (stageId: taskId))\n373 ms (0 ms, 1 ms, 84 ms (stage 69341.0: task 175624))";
tooltip="WholeStageCodegen (8)";
46 [id="node46" labelType="html" label="<br><b>LocalLimit</b><br><br>" tooltip="LocalLimit 1"];
47 [id="node47" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project"];
}
48 [id="node48" labelType="html" label="<b>BroadcastNestedLoopJoin</b><br><br>number of output rows: 0" tooltip="BroadcastNestedLoopJoin BuildRight, Cross, ((CASE WHEN (isnull(element_at(filter(prodLocSpecificKpis#848969, lambdafunction((lambda x_2226#852299.label = OutOfStockProbability), lambda x_2226#852299, false)), 1, None, false).value) OR isnull(cast(element_at(filter(_extract_settings#856501, lambdafunction((lambda x_2227#852300.name = OOS_PROBABILITY_THRESHOLD), lambda x_2227#852300, false)), 1, None, false).value as double))) THEN false ELSE (element_at(filter(prodLocSpecificKpis#848969, lambdafunction((lambda x_2226#852301.label = OutOfStockProbability), lambda x_2226#852301, false)), 1, None, false).value >= cast(element_at(filter(_extract_settings#856501, lambdafunction((lambda x_2227#852302.name = OOS_PROBABILITY_THRESHOLD), lambda x_2227#852302, false)), 1, None, false).value as double)) END AND CASE WHEN isnull(element_at(filter(prodLocSpecificKpis#848969, lambdafunction((lambda x_2228#852303.label = InitialStockQty), lambda x_2228#852303, false)), 1, None, false).value) THEN false ELSE (element_at(filter(prodLocSpecificKpis#848969, lambdafunction((lambda x_2228#852305.label = InitialStockQty), lambda x_2228#852305, false)), 1, None, false).value > CASE WHEN cast(element_at(filter(_extract_settings#856501, lambdafunction((lambda x_2229#852306.name = CURRENT_STOCK_ABOVE_ZERO), lambda x_2229#852306, false)), 1, None, false).value as boolean) THEN 0.0 ELSE -Infinity END) END) AND CASE WHEN (CASE WHEN isnull(orderDateTime#852513) THEN true ELSE isnull((cast((unix_timestamp(orderDateTime#852513, yyyy-MM-dd HH:mm:ss, Some(UTC), false) - 1786361504) as double) / 3600.0)) END OR isnull(cast(element_at(filter(_extract_settings#856501, lambdafunction((lambda x_2230#852307.name = OFFSET_CURRENT_ORDER_DATE), lambda x_2230#852307, false)), 1, None, false).value as double))) THEN false ELSE (CASE WHEN isnull(orderDateTime#852513) THEN null ELSE (cast((unix_timestamp(orderDateTime#852513, yyyy-MM-dd HH:mm:ss, Some(UTC), false) - 1786361504) as double) / 3600.0) END >= cast(element_at(filter(_extract_settings#856501, lambdafunction((lambda x_2230#852308.name = OFFSET_CURRENT_ORDER_DATE), lambda x_2230#852308, false)), 1, None, false).value as double)) END)"];
subgraph cluster49 {
isCluster="true";
id="cluster49";
label="WholeStageCodegen (6)\n \nduration: total (min, med, max (stageId: taskId))\n805 ms (0 ms, 44 ms, 117 ms (stage 69341.0: task 175613))";
tooltip="WholeStageCodegen (6)";
50 [id="node50" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [orderDateTime#852513, prodLocSpecificKpis#848969]"];
51 [id="node51" labelType="html" label="<b>Filter</b><br><br>number of output rows: 6" tooltip="Filter NOT (isFallbackOrderOnly#852517 <=> true)"];
}
52 [id="node52" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 6" tooltip="InMemoryTableScan [isFallbackOrderOnly#852517, orderDateTime#852513, prodLocSpecificKpis#848969], [NOT (isFallbackOrderOnly#852517 <=> true)]"];
subgraph cluster53 {
isCluster="true";
id="cluster53";
label="WholeStageCodegen (13)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (13)";
54 [id="node54" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#847553, worklistShardItemId#848065L, quantityAfterProdPlantOptimization#848066, qty#848067, orderProposalId#848266L, originalReplenishmentRunId#848308L, supplierGroup#848268, supplier#848269, supplyingPlant#848273, productGroup#848274, product#848275, plant#848270, subrange#848272, orderDateTime#848276, deliveryDateTime#848271, availabilityDateTime#848277, nextAvailabilityDateTime#848278, constraintValues#848299, constraintOperators#848298, constraintLabels#848297, logisticUnits#848293, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, splitIndicator#848285L, netPriceAmount#848302, ... 17 more fields]"];
55 [id="node55" labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 0<br>spill size: 0.0 B" tooltip="SortMergeJoin [shardId#847553, worklistShardItemId#848065L], [shardId#848991, worklistShardItemId#848992L], LeftOuter"];
}
subgraph cluster56 {
isCluster="true";
id="cluster56";
label="WholeStageCodegen (10)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (10)";
57 [id="node57" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#847553, worklistShardItemId#848065L, quantityAfterProdPlantOptimization#848066, qty#848067, orderProposalId#848266L, originalReplenishmentRunId#848308L, supplierGroup#848268, supplier#848269, supplyingPlant#848273, productGroup#848274, product#848275, plant#848270, subrange#848272, orderDateTime#848276, deliveryDateTime#848271, availabilityDateTime#848277, nextAvailabilityDateTime#848278, constraintValues#848299, constraintOperators#848298, constraintLabels#848297, logisticUnits#848293, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, splitIndicator#848285L, netPriceAmount#848302, ... 16 more fields]"];
58 [id="node58" labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 0<br>spill size: 0.0 B" tooltip="SortMergeJoin [shardId#847553, worklistShardItemId#848065L], [shardId#848978, worklistShardItemId#848979L], LeftOuter"];
}
subgraph cluster59 {
isCluster="true";
id="cluster59";
label="WholeStageCodegen (7)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (7)";
60 [id="node60" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#847553, worklistShardItemId#848065L, quantityAfterProdPlantOptimization#848066, qty#848067, orderProposalId#848266L, originalReplenishmentRunId#848308L, supplierGroup#848268, supplier#848269, supplyingPlant#848273, productGroup#848274, product#848275, plant#848270, subrange#848272, orderDateTime#848276, deliveryDateTime#848271, availabilityDateTime#848277, nextAvailabilityDateTime#848278, constraintValues#848299, constraintOperators#848298, constraintLabels#848297, logisticUnits#848293, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, splitIndicator#848285L, netPriceAmount#848302, ... 15 more fields]"];
61 [id="node61" labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 0<br>spill size: 0.0 B" tooltip="SortMergeJoin [shardId#847553, worklistShardItemId#848065L], [shardId#848962, worklistShardItemId#848963L], LeftOuter"];
}
subgraph cluster62 {
isCluster="true";
id="cluster62";
label="WholeStageCodegen (4)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (4)";
63 [id="node63" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [shardId#847553 ASC NULLS FIRST, worklistShardItemId#848065L ASC NULLS FIRST], false, 0"];
}
64 [id="node64" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.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: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(shardId#847553, worklistShardItemId#848065L, 20), ENSURE_REQUIREMENTS, [plan_id=336125]"];
subgraph cluster65 {
isCluster="true";
id="cluster65";
label="WholeStageCodegen (3)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (3)";
66 [id="node66" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#847553, worklistShardItemId#848065L, quantityAfterProdPlantOptimization#848066, qty#848067, orderProposalId#848266L, originalReplenishmentRunId#848308L, supplierGroup#848268, supplier#848269, supplyingPlant#848273, productGroup#848274, product#848275, plant#848270, subrange#848272, orderDateTime#848276, deliveryDateTime#848271, availabilityDateTime#848277, nextAvailabilityDateTime#848278, constraintValues#848299, constraintOperators#848298, constraintLabels#848297, logisticUnits#848293, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, splitIndicator#848285L, netPriceAmount#848302, ... 14 more fields]"];
67 [id="node67" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#848065L], [worklistShardItemId#848289L], LeftOuter, BuildRight, (shardId#847553 = 0_1_10000002109), false"];
68 [id="node68" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#847553, item#848064.worklistShardItemId AS worklistShardItemId#848065L, item#848064.quantityAfterProdPlantOptimization AS quantityAfterProdPlantOptimization#848066, item#848064.qty AS qty#848067]"];
69 [id="node69" labelType="html" label="<b>Generate</b><br><br>number of output rows: 0" tooltip="Generate explode(items#847555), [shardId#847553], false, [item#848064]"];
70 [id="node70" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((size(items#847555, true) > 0) AND isnotnull(items#847555))"];
}
71 [id="node71" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#847553, items#847555], [(size(items#847555, true) > 0), isnotnull(items#847555)]"];
subgraph cluster72 {
isCluster="true";
id="cluster72";
label="WholeStageCodegen (1)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (1)";
73 [id="node73" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(shardId#847553) AND (shardId#847553 = 0_1_10000002109))"];
}
74 [id="node74" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#847553, orderProposalId#847554L, items#847555, optimizationGroups#847556, isOptimal#847557, optimizationInsights#847559], [isnotnull(shardId#847553), (shardId#847553 = 0_1_10000002109)]"];
subgraph cluster75 {
isCluster="true";
id="cluster75";
label="WholeStageCodegen (1)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (1)";
76 [id="node76" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(shardId#847553) AND (shardId#847553 = 0_1_10000002109))"];
77 [id="node77" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#847553,orderProposalId#847554L,items#847555,optimizationGroups#847556,isOptimal#847557,lastModified#847558,optimizationInsights#847559]"];
}
78 [id="node78" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 0 ms<br>time to build: 0 ms<br>time to collect: 0 ms<br>number of output rows: 0<br>data size: 0.0 B" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(input[0, bigint, true]),false), [plan_id=336120]"];
subgraph cluster79 {
isCluster="true";
id="cluster79";
label="WholeStageCodegen (2)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (2)";
80 [id="node80" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [worklistShardItemId#848289L, orderProposalId#848266L, orderProposalItemId#848267, orderProposalItemGroupId#848290, originalReplenishmentRunId#848308L, splitIndicator#848285L, previousOrderProposal#848286L, sourceOfSupplyUuid#848280, supplierGroup#848268, supplier#848269, subrange#848272, product#848275, plant#848270, orderDateTime#848276, deliveryDateTime#848271, availabilityDateTime#848277, nextAvailabilityDateTime#848278, isFallbackOrderOnly#848283, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, netPriceQuantity#848304, netPriceQuantityUom#848305, netPriceQuantityUomUuid#848306, netPriceAmount#848302, netPriceCurrencyCode#848303, ... 11 more fields]"];
}
81 [id="node81" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.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: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(worklistShardItemId#848289L, 20), REPARTITION_BY_NUM, [plan_id=336116]"];
subgraph cluster82 {
isCluster="true";
id="cluster82";
label="WholeStageCodegen (1)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (1)";
83 [id="node83" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [orderProposalId#848266L, orderProposalItemId#848267, supplierGroup#848268, supplier#848269, plant#848270, deliveryDateTime#848271, subrange#848272, supplyingPlant#848273, productGroup#848274, product#848275, orderDateTime#848276, availabilityDateTime#848277, nextAvailabilityDateTime#848278, sourceOfSupplyUuid#848280, isFallbackOrderOnly#848283, splitIndicator#848285L, previousOrderProposal#848286L, worklistShardItemId#848289L, orderProposalItemGroupId#848290, externalProductId#848291, externalPlantId#848292, logisticUnits#848293, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, minimumOrderQuantity#848296, ... 11 more fields]"];
84 [id="node84" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter isnotnull(worklistShardItemId#848289L)"];
85 [id="node85" labelType="html" label="<b>ColumnarToRow</b><br><br>number of output rows: 0<br>number of input batches: 0" tooltip="ColumnarToRow"];
}
86 [id="node86" labelType="html" label="<b>Scan parquet </b><br><br>number of files read: 0<br>scan time: 0 ms<br>dynamic partition pruning time: 0 ms<br>metadata time: 0 ms<br>size of files read: 0.0 B<br>number of output rows: 0<br>number of partitions read: 0" tooltip="FileScan parquet [orderProposalId#848266L,orderProposalItemId#848267,supplierGroup#848268,supplier#848269,plant#848270,deliveryDateTime#848271,subrange#848272,supplyingPlant#848273,productGroup#848274,product#848275,orderDateTime#848276,availabilityDateTime#848277,nextAvailabilityDateTime#848278,sourceOfSupplyUuid#848280,isFallbackOrderOnly#848283,splitIndicator#848285L,previousOrderProposal#848286L,worklistShardItemId#848289L,orderProposalItemGroupId#848290,externalProductId#848291,externalPlantId#848292,logisticUnits#848293,orderQuantityBaseUom#848294,orderQuantityBaseUomUuid#848295,minimumOrderQuantity#848296,... 13 more fields] Batched: true, DataFilters: [isnotnull(worklistShardItemId#848289L)], Format: Parquet, Location: PreparedDeltaFileIndex(1 paths)[hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20...., PartitionFilters: [isnotnull(shardId#848310), isnotnull(sequenceId#848288), (shardId#848310 = 0_1_10000002109), (se..., PushedFilters: [IsNotNull(worklistShardItemId)], ReadSchema: struct<orderProposalId:bigint,orderProposalItemId:string,supplierGroup:string,supplier:string,pla..."];
subgraph cluster87 {
isCluster="true";
id="cluster87";
label="WholeStageCodegen (6)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (6)";
88 [id="node88" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [shardId#848962 ASC NULLS FIRST, worklistShardItemId#848963L ASC NULLS FIRST], false, 0"];
}
89 [id="node89" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.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: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(shardId#848962, worklistShardItemId#848963L, 20), ENSURE_REQUIREMENTS, [plan_id=336131]"];
subgraph cluster90 {
isCluster="true";
id="cluster90";
label="WholeStageCodegen (5)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (5)";
91 [id="node91" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#848962, worklistShardItemId#848963L, coalesce(kpis#848967, []) AS prodLocSpecificKpis#848968]"];
92 [id="node92" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (((isnull(qty#848964) AND isnull(demandChannel#848965)) AND isnull(demandStream#848966)) AND (isnotnull(shardId#848962) AND isnotnull(worklistShardItemId#848963L)))"];
93 [id="node93" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#848962,worklistShardItemId#848963L,qty#848964,demandChannel#848965,demandStream#848966,kpis#848967]"];
}
subgraph cluster94 {
isCluster="true";
id="cluster94";
label="WholeStageCodegen (9)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (9)";
95 [id="node95" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [shardId#848978 ASC NULLS FIRST, worklistShardItemId#848979L ASC NULLS FIRST], false, 0"];
}
96 [id="node96" labelType="html" label="<b>ObjectHashAggregate</b><br><br>number of output rows: 0<br>time in aggregation build: 0 ms<br>spill size: 0.0 B<br>number of sort fallback tasks: 0" tooltip="ObjectHashAggregate(keys=[shardId#848978, worklistShardItemId#848979L], functions=[collect_list(struct(demandChannel, demandChannel#848981, demandStream, demandStream#848982, kpis, kpis#848983), 0, 0)])"];
97 [id="node97" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.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: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(shardId#848978, worklistShardItemId#848979L, 20), ENSURE_REQUIREMENTS, [plan_id=336142]"];
98 [id="node98" labelType="html" label="<b>ObjectHashAggregate</b><br><br>number of output rows: 0<br>time in aggregation build: 0 ms<br>spill size: 0.0 B<br>number of sort fallback tasks: 0" tooltip="ObjectHashAggregate(keys=[shardId#848978, worklistShardItemId#848979L], functions=[partial_collect_list(struct(demandChannel, demandChannel#848981, demandStream, demandStream#848982, kpis, kpis#848983), 0, 0)])"];
subgraph cluster99 {
isCluster="true";
id="cluster99";
label="WholeStageCodegen (8)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (8)";
100 [id="node100" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#848978, worklistShardItemId#848979L, demandChannel#848981, demandStream#848982, kpis#848983]"];
101 [id="node101" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((((isnull(qty#848980) AND isnotnull(demandChannel#848981)) AND isnotnull(demandStream#848982)) AND (size(kpis#848983, true) > 0)) AND (isnotnull(shardId#848978) AND isnotnull(worklistShardItemId#848979L)))"];
102 [id="node102" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#848978,worklistShardItemId#848979L,qty#848980,demandChannel#848981,demandStream#848982,kpis#848983]"];
}
subgraph cluster103 {
isCluster="true";
id="cluster103";
label="WholeStageCodegen (12)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (12)";
104 [id="node104" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [shardId#848991 ASC NULLS FIRST, worklistShardItemId#848992L ASC NULLS FIRST], false, 0"];
}
105 [id="node105" labelType="html" label="<b>ObjectHashAggregate</b><br><br>number of output rows: 0<br>time in aggregation build: 0 ms<br>spill size: 0.0 B<br>number of sort fallback tasks: 0" tooltip="ObjectHashAggregate(keys=[shardId#848991, worklistShardItemId#848992L], functions=[collect_list(struct(qty, qty#848993, kpis, kpis#848996), 0, 0)])"];
106 [id="node106" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.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: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(shardId#848991, worklistShardItemId#848992L, 20), ENSURE_REQUIREMENTS, [plan_id=336154]"];
107 [id="node107" labelType="html" label="<b>ObjectHashAggregate</b><br><br>number of output rows: 0<br>time in aggregation build: 0 ms<br>spill size: 0.0 B<br>number of sort fallback tasks: 0" tooltip="ObjectHashAggregate(keys=[shardId#848991, worklistShardItemId#848992L], functions=[partial_collect_list(struct(qty, qty#848993, kpis, kpis#848996), 0, 0)])"];
subgraph cluster108 {
isCluster="true";
id="cluster108";
label="WholeStageCodegen (11)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (11)";
109 [id="node109" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#848991, worklistShardItemId#848992L, qty#848993, kpis#848996]"];
110 [id="node110" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((isnotnull(qty#848993) AND isnotnull(kpis#848996)) AND (isnotnull(shardId#848991) AND isnotnull(worklistShardItemId#848992L)))"];
111 [id="node111" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#848991,worklistShardItemId#848992L,qty#848993,demandChannel#848994,demandStream#848995,kpis#848996]"];
}
112 [id="node112" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 0 ms<br>time to build: 0 ms<br>time to collect: 223 ms<br>number of output rows: 0<br>data size: 0.0 B" tooltip="BroadcastExchange IdentityBroadcastMode, [plan_id=337383]"];
113 [id="node113" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.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: 20<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange RoundRobinPartitioning(20), REPARTITION_BY_NUM, [plan_id=337382]"];
subgraph cluster114 {
isCluster="true";
id="cluster114";
label="WholeStageCodegen (7)\n \nduration: 82 ms";
tooltip="WholeStageCodegen (7)";
115 [id="node115" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [insightConfigurations#852294[POTENTIAL_OOS_STOCK_PERIOD].settings AS _extract_settings#856501]"];
116 [id="node116" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(insightConfigurations#852294) AND isnotnull(insightConfigurations#852294[POTENTIAL_OOS_STOCK_PERIOD]))"];
117 [id="node117" labelType="html" label="<b>ColumnarToRow</b><br><br>number of output rows: 1<br>number of input batches: 1" tooltip="ColumnarToRow"];
}
118 [id="node118" labelType="html" label="<b>Scan parquet </b><br><br>number of files read: 1<br>scan time: 79 ms<br>dynamic partition pruning time: 0 ms<br>metadata time: 0 ms<br>size of files read: 4.6 KiB<br>number of output rows: 1<br>number of partitions read: 1" tooltip="FileScan parquet [insightConfigurations#852294,shardId#852295] Batched: true, DataFilters: [isnotnull(insightConfigurations#852294), isnotnull(insightConfigurations#852294[POTENTIAL_OOS_ST..., Format: Parquet, Location: PreparedDeltaFileIndex(1 paths)[hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20...., PartitionFilters: [isnotnull(shardId#852295), (shardId#852295 = 0_1_10000002109)], PushedFilters: [IsNotNull(insightConfigurations)], ReadSchema: struct<insightConfigurations:map<string,struct<configurationVersion:string,name:string,settings:a..."];
subgraph cluster119 {
isCluster="true";
id="cluster119";
label="WholeStageCodegen (11)\n \nduration: total (min, med, max (stageId: taskId))\n351 ms (0 ms, 1 ms, 76 ms (stage 69341.0: task 175637))";
tooltip="WholeStageCodegen (11)";
120 [id="node120" labelType="html" label="<br><b>LocalLimit</b><br><br>" tooltip="LocalLimit 1"];
121 [id="node121" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project"];
}
122 [id="node122" labelType="html" label="<b>BroadcastNestedLoopJoin</b><br><br>number of output rows: 0" tooltip="BroadcastNestedLoopJoin BuildRight, Cross, CASE WHEN (isnull(element_at(filter(element_at(quantityKpis#852471, qty#852355, None, false), lambdafunction((lambda x_2232#852325.label = OutOfStockProbability), lambda x_2232#852325, false)), 1, None, false).value) OR isnull(cast(element_at(filter(_extract_settings#856503, lambdafunction((lambda x_2233#852326.name = OOS_PROBABILITY_THRESHOLD), lambda x_2233#852326, false)), 1, None, false).value as double))) THEN false ELSE (element_at(filter(element_at(quantityKpis#852471, qty#852355, None, false), lambdafunction((lambda x_2232#852327.label = OutOfStockProbability), lambda x_2232#852327, false)), 1, None, false).value >= cast(element_at(filter(_extract_settings#856503, lambdafunction((lambda x_2233#852328.name = OOS_PROBABILITY_THRESHOLD), lambda x_2233#852328, false)), 1, None, false).value as double)) END"];
subgraph cluster123 {
isCluster="true";
id="cluster123";
label="WholeStageCodegen (9)\n \nduration: total (min, med, max (stageId: taskId))\n764 ms (0 ms, 40 ms, 119 ms (stage 69341.0: task 175637))";
tooltip="WholeStageCodegen (9)";
124 [id="node124" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [qty#852355, quantityKpis#852471]"];
125 [id="node125" labelType="html" label="<b>Filter</b><br><br>number of output rows: 6" tooltip="Filter NOT (isFallbackOrderOnly#852380 <=> true)"];
}
126 [id="node126" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 6" tooltip="InMemoryTableScan [isFallbackOrderOnly#852380, qty#852355, quantityKpis#852471], [NOT (isFallbackOrderOnly#852380 <=> true)]"];
subgraph cluster127 {
isCluster="true";
id="cluster127";
label="WholeStageCodegen (13)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (13)";
128 [id="node128" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#847553, worklistShardItemId#848065L, quantityAfterProdPlantOptimization#848066, qty#848067, orderProposalId#848266L, originalReplenishmentRunId#848308L, supplierGroup#848268, supplier#848269, supplyingPlant#848273, productGroup#848274, product#848275, plant#848270, subrange#848272, orderDateTime#848276, deliveryDateTime#848271, availabilityDateTime#848277, nextAvailabilityDateTime#848278, constraintValues#848299, constraintOperators#848298, constraintLabels#848297, logisticUnits#848293, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, splitIndicator#848285L, netPriceAmount#848302, ... 17 more fields]"];
129 [id="node129" labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 0<br>spill size: 0.0 B" tooltip="SortMergeJoin [shardId#847553, worklistShardItemId#848065L], [shardId#848991, worklistShardItemId#848992L], LeftOuter"];
}
subgraph cluster130 {
isCluster="true";
id="cluster130";
label="WholeStageCodegen (10)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (10)";
131 [id="node131" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#847553, worklistShardItemId#848065L, quantityAfterProdPlantOptimization#848066, qty#848067, orderProposalId#848266L, originalReplenishmentRunId#848308L, supplierGroup#848268, supplier#848269, supplyingPlant#848273, productGroup#848274, product#848275, plant#848270, subrange#848272, orderDateTime#848276, deliveryDateTime#848271, availabilityDateTime#848277, nextAvailabilityDateTime#848278, constraintValues#848299, constraintOperators#848298, constraintLabels#848297, logisticUnits#848293, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, splitIndicator#848285L, netPriceAmount#848302, ... 16 more fields]"];
132 [id="node132" labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 0<br>spill size: 0.0 B" tooltip="SortMergeJoin [shardId#847553, worklistShardItemId#848065L], [shardId#848978, worklistShardItemId#848979L], LeftOuter"];
}
subgraph cluster133 {
isCluster="true";
id="cluster133";
label="WholeStageCodegen (7)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (7)";
134 [id="node134" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#847553, worklistShardItemId#848065L, quantityAfterProdPlantOptimization#848066, qty#848067, orderProposalId#848266L, originalReplenishmentRunId#848308L, supplierGroup#848268, supplier#848269, supplyingPlant#848273, productGroup#848274, product#848275, plant#848270, subrange#848272, orderDateTime#848276, deliveryDateTime#848271, availabilityDateTime#848277, nextAvailabilityDateTime#848278, constraintValues#848299, constraintOperators#848298, constraintLabels#848297, logisticUnits#848293, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, splitIndicator#848285L, netPriceAmount#848302, ... 15 more fields]"];
135 [id="node135" labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 0<br>spill size: 0.0 B" tooltip="SortMergeJoin [shardId#847553, worklistShardItemId#848065L], [shardId#848962, worklistShardItemId#848963L], LeftOuter"];
}
subgraph cluster136 {
isCluster="true";
id="cluster136";
label="WholeStageCodegen (4)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (4)";
137 [id="node137" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [shardId#847553 ASC NULLS FIRST, worklistShardItemId#848065L ASC NULLS FIRST], false, 0"];
}
138 [id="node138" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.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: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(shardId#847553, worklistShardItemId#848065L, 20), ENSURE_REQUIREMENTS, [plan_id=336125]"];
subgraph cluster139 {
isCluster="true";
id="cluster139";
label="WholeStageCodegen (3)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (3)";
140 [id="node140" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#847553, worklistShardItemId#848065L, quantityAfterProdPlantOptimization#848066, qty#848067, orderProposalId#848266L, originalReplenishmentRunId#848308L, supplierGroup#848268, supplier#848269, supplyingPlant#848273, productGroup#848274, product#848275, plant#848270, subrange#848272, orderDateTime#848276, deliveryDateTime#848271, availabilityDateTime#848277, nextAvailabilityDateTime#848278, constraintValues#848299, constraintOperators#848298, constraintLabels#848297, logisticUnits#848293, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, splitIndicator#848285L, netPriceAmount#848302, ... 14 more fields]"];
141 [id="node141" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#848065L], [worklistShardItemId#848289L], LeftOuter, BuildRight, (shardId#847553 = 0_1_10000002109), false"];
142 [id="node142" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#847553, item#848064.worklistShardItemId AS worklistShardItemId#848065L, item#848064.quantityAfterProdPlantOptimization AS quantityAfterProdPlantOptimization#848066, item#848064.qty AS qty#848067]"];
143 [id="node143" labelType="html" label="<b>Generate</b><br><br>number of output rows: 0" tooltip="Generate explode(items#847555), [shardId#847553], false, [item#848064]"];
144 [id="node144" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((size(items#847555, true) > 0) AND isnotnull(items#847555))"];
}
145 [id="node145" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#847553, items#847555], [(size(items#847555, true) > 0), isnotnull(items#847555)]"];
subgraph cluster146 {
isCluster="true";
id="cluster146";
label="WholeStageCodegen (1)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (1)";
147 [id="node147" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(shardId#847553) AND (shardId#847553 = 0_1_10000002109))"];
}
148 [id="node148" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#847553, orderProposalId#847554L, items#847555, optimizationGroups#847556, isOptimal#847557, optimizationInsights#847559], [isnotnull(shardId#847553), (shardId#847553 = 0_1_10000002109)]"];
subgraph cluster149 {
isCluster="true";
id="cluster149";
label="WholeStageCodegen (1)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (1)";
150 [id="node150" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(shardId#847553) AND (shardId#847553 = 0_1_10000002109))"];
151 [id="node151" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#847553,orderProposalId#847554L,items#847555,optimizationGroups#847556,isOptimal#847557,lastModified#847558,optimizationInsights#847559]"];
}
152 [id="node152" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 0 ms<br>time to build: 0 ms<br>time to collect: 0 ms<br>number of output rows: 0<br>data size: 0.0 B" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(input[0, bigint, true]),false), [plan_id=336120]"];
subgraph cluster153 {
isCluster="true";
id="cluster153";
label="WholeStageCodegen (2)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (2)";
154 [id="node154" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [worklistShardItemId#848289L, orderProposalId#848266L, orderProposalItemId#848267, orderProposalItemGroupId#848290, originalReplenishmentRunId#848308L, splitIndicator#848285L, previousOrderProposal#848286L, sourceOfSupplyUuid#848280, supplierGroup#848268, supplier#848269, subrange#848272, product#848275, plant#848270, orderDateTime#848276, deliveryDateTime#848271, availabilityDateTime#848277, nextAvailabilityDateTime#848278, isFallbackOrderOnly#848283, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, netPriceQuantity#848304, netPriceQuantityUom#848305, netPriceQuantityUomUuid#848306, netPriceAmount#848302, netPriceCurrencyCode#848303, ... 11 more fields]"];
}
155 [id="node155" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.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: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(worklistShardItemId#848289L, 20), REPARTITION_BY_NUM, [plan_id=336116]"];
subgraph cluster156 {
isCluster="true";
id="cluster156";
label="WholeStageCodegen (1)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (1)";
157 [id="node157" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [orderProposalId#848266L, orderProposalItemId#848267, supplierGroup#848268, supplier#848269, plant#848270, deliveryDateTime#848271, subrange#848272, supplyingPlant#848273, productGroup#848274, product#848275, orderDateTime#848276, availabilityDateTime#848277, nextAvailabilityDateTime#848278, sourceOfSupplyUuid#848280, isFallbackOrderOnly#848283, splitIndicator#848285L, previousOrderProposal#848286L, worklistShardItemId#848289L, orderProposalItemGroupId#848290, externalProductId#848291, externalPlantId#848292, logisticUnits#848293, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, minimumOrderQuantity#848296, ... 11 more fields]"];
158 [id="node158" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter isnotnull(worklistShardItemId#848289L)"];
159 [id="node159" labelType="html" label="<b>ColumnarToRow</b><br><br>number of output rows: 0<br>number of input batches: 0" tooltip="ColumnarToRow"];
}
160 [id="node160" labelType="html" label="<b>Scan parquet </b><br><br>number of files read: 0<br>scan time: 0 ms<br>dynamic partition pruning time: 0 ms<br>metadata time: 0 ms<br>size of files read: 0.0 B<br>number of output rows: 0<br>number of partitions read: 0" tooltip="FileScan parquet [orderProposalId#848266L,orderProposalItemId#848267,supplierGroup#848268,supplier#848269,plant#848270,deliveryDateTime#848271,subrange#848272,supplyingPlant#848273,productGroup#848274,product#848275,orderDateTime#848276,availabilityDateTime#848277,nextAvailabilityDateTime#848278,sourceOfSupplyUuid#848280,isFallbackOrderOnly#848283,splitIndicator#848285L,previousOrderProposal#848286L,worklistShardItemId#848289L,orderProposalItemGroupId#848290,externalProductId#848291,externalPlantId#848292,logisticUnits#848293,orderQuantityBaseUom#848294,orderQuantityBaseUomUuid#848295,minimumOrderQuantity#848296,... 13 more fields] Batched: true, DataFilters: [isnotnull(worklistShardItemId#848289L)], Format: Parquet, Location: PreparedDeltaFileIndex(1 paths)[hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20...., PartitionFilters: [isnotnull(shardId#848310), isnotnull(sequenceId#848288), (shardId#848310 = 0_1_10000002109), (se..., PushedFilters: [IsNotNull(worklistShardItemId)], ReadSchema: struct<orderProposalId:bigint,orderProposalItemId:string,supplierGroup:string,supplier:string,pla..."];
subgraph cluster161 {
isCluster="true";
id="cluster161";
label="WholeStageCodegen (6)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (6)";
162 [id="node162" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [shardId#848962 ASC NULLS FIRST, worklistShardItemId#848963L ASC NULLS FIRST], false, 0"];
}
163 [id="node163" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.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: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(shardId#848962, worklistShardItemId#848963L, 20), ENSURE_REQUIREMENTS, [plan_id=336131]"];
subgraph cluster164 {
isCluster="true";
id="cluster164";
label="WholeStageCodegen (5)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (5)";
165 [id="node165" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#848962, worklistShardItemId#848963L, coalesce(kpis#848967, []) AS prodLocSpecificKpis#848968]"];
166 [id="node166" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (((isnull(qty#848964) AND isnull(demandChannel#848965)) AND isnull(demandStream#848966)) AND (isnotnull(shardId#848962) AND isnotnull(worklistShardItemId#848963L)))"];
167 [id="node167" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#848962,worklistShardItemId#848963L,qty#848964,demandChannel#848965,demandStream#848966,kpis#848967]"];
}
subgraph cluster168 {
isCluster="true";
id="cluster168";
label="WholeStageCodegen (9)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (9)";
169 [id="node169" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [shardId#848978 ASC NULLS FIRST, worklistShardItemId#848979L ASC NULLS FIRST], false, 0"];
}
170 [id="node170" labelType="html" label="<b>ObjectHashAggregate</b><br><br>number of output rows: 0<br>time in aggregation build: 0 ms<br>spill size: 0.0 B<br>number of sort fallback tasks: 0" tooltip="ObjectHashAggregate(keys=[shardId#848978, worklistShardItemId#848979L], functions=[collect_list(struct(demandChannel, demandChannel#848981, demandStream, demandStream#848982, kpis, kpis#848983), 0, 0)])"];
171 [id="node171" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.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: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(shardId#848978, worklistShardItemId#848979L, 20), ENSURE_REQUIREMENTS, [plan_id=336142]"];
172 [id="node172" labelType="html" label="<b>ObjectHashAggregate</b><br><br>number of output rows: 0<br>time in aggregation build: 0 ms<br>spill size: 0.0 B<br>number of sort fallback tasks: 0" tooltip="ObjectHashAggregate(keys=[shardId#848978, worklistShardItemId#848979L], functions=[partial_collect_list(struct(demandChannel, demandChannel#848981, demandStream, demandStream#848982, kpis, kpis#848983), 0, 0)])"];
subgraph cluster173 {
isCluster="true";
id="cluster173";
label="WholeStageCodegen (8)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (8)";
174 [id="node174" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#848978, worklistShardItemId#848979L, demandChannel#848981, demandStream#848982, kpis#848983]"];
175 [id="node175" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((((isnull(qty#848980) AND isnotnull(demandChannel#848981)) AND isnotnull(demandStream#848982)) AND (size(kpis#848983, true) > 0)) AND (isnotnull(shardId#848978) AND isnotnull(worklistShardItemId#848979L)))"];
176 [id="node176" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#848978,worklistShardItemId#848979L,qty#848980,demandChannel#848981,demandStream#848982,kpis#848983]"];
}
subgraph cluster177 {
isCluster="true";
id="cluster177";
label="WholeStageCodegen (12)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (12)";
178 [id="node178" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [shardId#848991 ASC NULLS FIRST, worklistShardItemId#848992L ASC NULLS FIRST], false, 0"];
}
179 [id="node179" labelType="html" label="<b>ObjectHashAggregate</b><br><br>number of output rows: 0<br>time in aggregation build: 0 ms<br>spill size: 0.0 B<br>number of sort fallback tasks: 0" tooltip="ObjectHashAggregate(keys=[shardId#848991, worklistShardItemId#848992L], functions=[collect_list(struct(qty, qty#848993, kpis, kpis#848996), 0, 0)])"];
180 [id="node180" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.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: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(shardId#848991, worklistShardItemId#848992L, 20), ENSURE_REQUIREMENTS, [plan_id=336154]"];
181 [id="node181" labelType="html" label="<b>ObjectHashAggregate</b><br><br>number of output rows: 0<br>time in aggregation build: 0 ms<br>spill size: 0.0 B<br>number of sort fallback tasks: 0" tooltip="ObjectHashAggregate(keys=[shardId#848991, worklistShardItemId#848992L], functions=[partial_collect_list(struct(qty, qty#848993, kpis, kpis#848996), 0, 0)])"];
subgraph cluster182 {
isCluster="true";
id="cluster182";
label="WholeStageCodegen (11)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (11)";
183 [id="node183" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#848991, worklistShardItemId#848992L, qty#848993, kpis#848996]"];
184 [id="node184" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((isnotnull(qty#848993) AND isnotnull(kpis#848996)) AND (isnotnull(shardId#848991) AND isnotnull(worklistShardItemId#848992L)))"];
185 [id="node185" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#848991,worklistShardItemId#848992L,qty#848993,demandChannel#848994,demandStream#848995,kpis#848996]"];
}
186 [id="node186" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 0 ms<br>time to build: 0 ms<br>time to collect: 217 ms<br>number of output rows: 0<br>data size: 0.0 B" tooltip="BroadcastExchange IdentityBroadcastMode, [plan_id=337399]"];
187 [id="node187" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.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: 20<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange RoundRobinPartitioning(20), REPARTITION_BY_NUM, [plan_id=337398]"];
subgraph cluster188 {
isCluster="true";
id="cluster188";
label="WholeStageCodegen (10)\n \nduration: 73 ms";
tooltip="WholeStageCodegen (10)";
189 [id="node189" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [insightConfigurations#852476[POTENTIAL_OOS_DEMAND_PERIOD].settings AS _extract_settings#856503]"];
190 [id="node190" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(insightConfigurations#852476) AND isnotnull(insightConfigurations#852476[POTENTIAL_OOS_DEMAND_PERIOD]))"];
191 [id="node191" labelType="html" label="<b>ColumnarToRow</b><br><br>number of output rows: 1<br>number of input batches: 1" tooltip="ColumnarToRow"];
}
192 [id="node192" labelType="html" label="<b>Scan parquet </b><br><br>number of files read: 1<br>scan time: 71 ms<br>dynamic partition pruning time: 0 ms<br>metadata time: 0 ms<br>size of files read: 4.6 KiB<br>number of output rows: 1<br>number of partitions read: 1" tooltip="FileScan parquet [insightConfigurations#852476,shardId#852477] Batched: true, DataFilters: [isnotnull(insightConfigurations#852476), isnotnull(insightConfigurations#852476[POTENTIAL_OOS_DE..., Format: Parquet, Location: PreparedDeltaFileIndex(1 paths)[hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20...., PartitionFilters: [isnotnull(shardId#852477), (shardId#852477 = 0_1_10000002109)], PushedFilters: [IsNotNull(insightConfigurations)], ReadSchema: struct<insightConfigurations:map<string,struct<configurationVersion:string,name:string,settings:a..."];
1->0;
3->1;
4->3;
5->4;
6->5;
7->6;
8->7;
9->8;
11->9;
12->11;
14->12;
15->14;
17->15;
18->17;
19->8;
20->19;
22->20;
23->22;
24->23;
25->24;
27->25;
28->27;
29->28;
30->29;
31->30;
33->31;
34->33;
36->34;
37->36;
38->24;
39->38;
41->39;
42->41;
43->42;
44->43;
46->1;
47->46;
48->47;
50->48;
51->50;
52->51;
54->52;
55->54;
57->55;
58->57;
60->58;
61->60;
63->61;
64->63;
66->64;
67->66;
68->67;
69->68;
70->69;
71->70;
73->71;
74->73;
76->74;
77->76;
78->67;
80->78;
81->80;
83->81;
84->83;
85->84;
86->85;
88->61;
89->88;
91->89;
92->91;
93->92;
95->58;
96->95;
97->96;
98->97;
100->98;
101->100;
102->101;
104->55;
105->104;
106->105;
107->106;
109->107;
110->109;
111->110;
112->48;
113->112;
115->113;
116->115;
117->116;
118->117;
120->1;
121->120;
122->121;
124->122;
125->124;
126->125;
128->126;
129->128;
131->129;
132->131;
134->132;
135->134;
137->135;
138->137;
140->138;
141->140;
142->141;
143->142;
144->143;
145->144;
147->145;
148->147;
150->148;
151->150;
152->141;
154->152;
155->154;
157->155;
158->157;
159->158;
160->159;
162->135;
163->162;
165->163;
166->165;
167->166;
169->132;
170->169;
171->170;
172->171;
174->172;
175->174;
176->175;
178->129;
179->178;
180->179;
181->180;
183->181;
184->183;
185->184;
186->122;
187->186;
189->187;
190->189;
191->190;
192->191;
}
== Physical Plan ==
CollectLimit (102)
+- Union (101)
:- * LocalLimit (33)
: +- * Project (32)
: +- * Filter (31)
: +- * Generate (30)
: +- * Project (29)
: +- * BroadcastHashJoin Inner BuildLeft (28)
: :- BroadcastExchange (9)
: : +- * Filter (8)
: : +- InMemoryTableScan (1)
: : +- InMemoryRelation (2)
: : +- * Filter (7)
: : +- InMemoryTableScan (3)
: : +- InMemoryRelation (4)
: : +- * Filter (6)
: : +- * Scan ExistingRDD (5)
: +- * HashAggregate (27)
: +- Exchange (26)
: +- * HashAggregate (25)
: +- * Project (24)
: +- * BroadcastHashJoin Inner BuildLeft (23)
: :- BroadcastExchange (16)
: : +- * Project (15)
: : +- * Generate (14)
: : +- * Project (13)
: : +- * Filter (12)
: : +- InMemoryTableScan (10)
: : +- InMemoryRelation (11)
: : +- * Filter (7)
: : +- InMemoryTableScan (3)
: : +- InMemoryRelation (4)
: : +- * Filter (6)
: : +- * Scan ExistingRDD (5)
: +- * Project (22)
: +- Exchange (21)
: +- * Project (20)
: +- * Filter (19)
: +- * ColumnarToRow (18)
: +- Scan parquet (17)
:- * LocalLimit (87)
: +- * Project (86)
: +- BroadcastNestedLoopJoin Cross BuildRight (85)
: :- * Project (78)
: : +- * Filter (77)
: : +- InMemoryTableScan (34)
: : +- InMemoryRelation (35)
: : +- * Project (76)
: : +- * SortMergeJoin LeftOuter (75)
: : :- * Project (67)
: : : +- * SortMergeJoin LeftOuter (66)
: : : :- * Project (58)
: : : : +- * SortMergeJoin LeftOuter (57)
: : : : :- * Sort (51)
: : : : : +- Exchange (50)
: : : : : +- * Project (49)
: : : : : +- * BroadcastHashJoin LeftOuter BuildRight (48)
: : : : : :- * Project (40)
: : : : : : +- * Generate (39)
: : : : : : +- * Filter (38)
: : : : : : +- InMemoryTableScan (36)
: : : : : : +- InMemoryRelation (37)
: : : : : : +- * Filter (7)
: : : : : : +- InMemoryTableScan (3)
: : : : : : +- InMemoryRelation (4)
: : : : : : +- * Filter (6)
: : : : : : +- * Scan ExistingRDD (5)
: : : : : +- BroadcastExchange (47)
: : : : : +- * Project (46)
: : : : : +- Exchange (45)
: : : : : +- * Project (44)
: : : : : +- * Filter (43)
: : : : : +- * ColumnarToRow (42)
: : : : : +- Scan parquet (41)
: : : : +- * Sort (56)
: : : : +- Exchange (55)
: : : : +- * Project (54)
: : : : +- * Filter (53)
: : : : +- * Scan ExistingRDD (52)
: : : +- * Sort (65)
: : : +- ObjectHashAggregate (64)
: : : +- Exchange (63)
: : : +- ObjectHashAggregate (62)
: : : +- * Project (61)
: : : +- * Filter (60)
: : : +- * Scan ExistingRDD (59)
: : +- * Sort (74)
: : +- ObjectHashAggregate (73)
: : +- Exchange (72)
: : +- ObjectHashAggregate (71)
: : +- * Project (70)
: : +- * Filter (69)
: : +- * Scan ExistingRDD (68)
: +- BroadcastExchange (84)
: +- Exchange (83)
: +- * Project (82)
: +- * Filter (81)
: +- * ColumnarToRow (80)
: +- Scan parquet (79)
+- * LocalLimit (100)
+- * Project (99)
+- BroadcastNestedLoopJoin Cross BuildRight (98)
:- * Project (91)
: +- * Filter (90)
: +- InMemoryTableScan (88)
: +- InMemoryRelation (89)
: +- * Project (76)
: +- * SortMergeJoin LeftOuter (75)
: :- * Project (67)
: : +- * SortMergeJoin LeftOuter (66)
: : :- * Project (58)
: : : +- * SortMergeJoin LeftOuter (57)
: : : :- * Sort (51)
: : : : +- Exchange (50)
: : : : +- * Project (49)
: : : : +- * BroadcastHashJoin LeftOuter BuildRight (48)
: : : : :- * Project (40)
: : : : : +- * Generate (39)
: : : : : +- * Filter (38)
: : : : : +- InMemoryTableScan (36)
: : : : : +- InMemoryRelation (37)
: : : : : +- * Filter (7)
: : : : : +- InMemoryTableScan (3)
: : : : : +- InMemoryRelation (4)
: : : : : +- * Filter (6)
: : : : : +- * Scan ExistingRDD (5)
: : : : +- BroadcastExchange (47)
: : : : +- * Project (46)
: : : : +- Exchange (45)
: : : : +- * Project (44)
: : : : +- * Filter (43)
: : : : +- * ColumnarToRow (42)
: : : : +- Scan parquet (41)
: : : +- * Sort (56)
: : : +- Exchange (55)
: : : +- * Project (54)
: : : +- * Filter (53)
: : : +- * Scan ExistingRDD (52)
: : +- * Sort (65)
: : +- ObjectHashAggregate (64)
: : +- Exchange (63)
: : +- ObjectHashAggregate (62)
: : +- * Project (61)
: : +- * Filter (60)
: : +- * Scan ExistingRDD (59)
: +- * Sort (74)
: +- ObjectHashAggregate (73)
: +- Exchange (72)
: +- ObjectHashAggregate (71)
: +- * Project (70)
: +- * Filter (69)
: +- * Scan ExistingRDD (68)
+- BroadcastExchange (97)
+- Exchange (96)
+- * Project (95)
+- * Filter (94)
+- * ColumnarToRow (93)
+- Scan parquet (92)
(1) InMemoryTableScan
Output [2]: [orderProposalId#847554L, optimizationInsights#847559]
Arguments: [orderProposalId#847554L, optimizationInsights#847559], [isnotnull(orderProposalId#847554L), (size(optimizationInsights#847559, true) > 0), isnotnull(optimizationInsights#847559)]
(2) InMemoryRelation
Arguments: [shardId#847553, orderProposalId#847554L, items#847555, optimizationGroups#847556, isOptimal#847557, optimizationInsights#847559], StorageLevel(disk, memory, 2 replicas)
(3) InMemoryTableScan
Output [6]: [shardId#847553, orderProposalId#847554L, items#847555, optimizationGroups#847556, isOptimal#847557, optimizationInsights#847559]
Arguments: [shardId#847553, orderProposalId#847554L, items#847555, optimizationGroups#847556, isOptimal#847557, optimizationInsights#847559], [isnotnull(shardId#847553), (shardId#847553 = 0_1_10000002109)]
(4) InMemoryRelation
Arguments: [shardId#847553, orderProposalId#847554L, items#847555, optimizationGroups#847556, isOptimal#847557, lastModified#847558, optimizationInsights#847559], StorageLevel(disk, memory, 2 replicas)
(5) Scan ExistingRDD [codegen id : 1]
Output [7]: [shardId#847553, orderProposalId#847554L, items#847555, optimizationGroups#847556, isOptimal#847557, lastModified#847558, optimizationInsights#847559]
Arguments: [shardId#847553, orderProposalId#847554L, items#847555, optimizationGroups#847556, isOptimal#847557, lastModified#847558, optimizationInsights#847559], MapPartitionsRDD[39846] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(6) Filter [codegen id : 1]
Input [7]: [shardId#847553, orderProposalId#847554L, items#847555, optimizationGroups#847556, isOptimal#847557, lastModified#847558, optimizationInsights#847559]
Condition : (isnotnull(shardId#847553) AND (shardId#847553 = 0_1_10000002109))
(7) Filter [codegen id : 1]
Input [6]: [shardId#847553, orderProposalId#847554L, items#847555, optimizationGroups#847556, isOptimal#847557, optimizationInsights#847559]
Condition : (isnotnull(shardId#847553) AND (shardId#847553 = 0_1_10000002109))
(8) Filter [codegen id : 1]
Input [2]: [orderProposalId#847554L, optimizationInsights#847559]
Condition : ((isnotnull(orderProposalId#847554L) AND (size(optimizationInsights#847559, true) > 0)) AND isnotnull(optimizationInsights#847559))
(9) BroadcastExchange
Input [2]: [orderProposalId#847554L, optimizationInsights#847559]
Arguments: HashedRelationBroadcastMode(List(input[0, bigint, false]),false), [plan_id=337341]
(10) InMemoryTableScan
Output [2]: [items#851858, shardId#851856]
Arguments: [items#851858, shardId#851856], [(size(items#851858.worklistShardItemId, true) > 0), isnotnull(items#851858.worklistShardItemId), (shardId#851856 = 0_1_10000002109)]
(11) InMemoryRelation
Arguments: [shardId#851856, orderProposalId#851857L, items#851858, optimizationGroups#851859, isOptimal#851860, optimizationInsights#851862], StorageLevel(disk, memory, 2 replicas)
(12) Filter [codegen id : 2]
Input [2]: [items#851858, shardId#851856]
Condition : (((size(items#851858.worklistShardItemId, true) > 0) AND isnotnull(items#851858.worklistShardItemId)) AND (shardId#851856 = 0_1_10000002109))
(13) Project [codegen id : 2]
Output [1]: [items#851858.worklistShardItemId AS _extract_worklistShardItemId#856499]
Input [2]: [items#851858, shardId#851856]
(14) Generate [codegen id : 2]
Input [1]: [_extract_worklistShardItemId#856499]
Arguments: explode(_extract_worklistShardItemId#856499), false, [item#848064L]
(15) Project [codegen id : 2]
Output [1]: [item#848064L AS worklistShardItemId#848065L]
Input [1]: [item#848064L]
(16) BroadcastExchange
Input [1]: [worklistShardItemId#848065L]
Arguments: HashedRelationBroadcastMode(List(input[0, bigint, true]),false), [plan_id=337349]
(17) Scan parquet
Output [5]: [orderProposalId#848266L, isFallbackOrderOnly#848283, worklistShardItemId#848289L, shardId#848310, sequenceId#848288]
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/10000002109]
PartitionFilters: [isnotnull(shardId#848310), isnotnull(sequenceId#848288), (shardId#848310 = 0_1_10000002109), (sequenceId#848288 = 0)]
PushedFilters: [IsNotNull(worklistShardItemId), Not(EqualNullSafe(isFallbackOrderOnly,true)), IsNotNull(orderProposalId)]
ReadSchema: struct<orderProposalId:bigint,isFallbackOrderOnly:boolean,worklistShardItemId:bigint>
(18) ColumnarToRow [codegen id : 3]
Input [5]: [orderProposalId#848266L, isFallbackOrderOnly#848283, worklistShardItemId#848289L, shardId#848310, sequenceId#848288]
(19) Filter [codegen id : 3]
Input [5]: [orderProposalId#848266L, isFallbackOrderOnly#848283, worklistShardItemId#848289L, shardId#848310, sequenceId#848288]
Condition : ((isnotnull(worklistShardItemId#848289L) AND NOT (isFallbackOrderOnly#848283 <=> true)) AND isnotnull(orderProposalId#848266L))
(20) Project [codegen id : 3]
Output [2]: [orderProposalId#848266L, worklistShardItemId#848289L]
Input [5]: [orderProposalId#848266L, isFallbackOrderOnly#848283, worklistShardItemId#848289L, shardId#848310, sequenceId#848288]
(21) Exchange
Input [2]: [orderProposalId#848266L, worklistShardItemId#848289L]
Arguments: hashpartitioning(worklistShardItemId#848289L, 20), REPARTITION_BY_NUM, [plan_id=337356]
(22) Project
Output [2]: [worklistShardItemId#848289L, orderProposalId#848266L]
Input [2]: [orderProposalId#848266L, worklistShardItemId#848289L]
(23) BroadcastHashJoin [codegen id : 4]
Left keys [1]: [worklistShardItemId#848065L]
Right keys [1]: [worklistShardItemId#848289L]
Join type: Inner
Join condition: None
(24) Project [codegen id : 4]
Output [1]: [orderProposalId#848266L]
Input [3]: [worklistShardItemId#848065L, worklistShardItemId#848289L, orderProposalId#848266L]
(25) HashAggregate [codegen id : 4]
Input [1]: [orderProposalId#848266L]
Keys [1]: [orderProposalId#848266L]
Functions: []
Aggregate Attributes: []
Results [1]: [orderProposalId#848266L]
(26) Exchange
Input [1]: [orderProposalId#848266L]
Arguments: hashpartitioning(orderProposalId#848266L, 20), ENSURE_REQUIREMENTS, [plan_id=337363]
(27) HashAggregate
Input [1]: [orderProposalId#848266L]
Keys [1]: [orderProposalId#848266L]
Functions: []
Aggregate Attributes: []
Results [1]: [orderProposalId#848266L]
(28) BroadcastHashJoin [codegen id : 5]
Left keys [1]: [orderProposalId#847554L]
Right keys [1]: [orderProposalId#848266L]
Join type: Inner
Join condition: None
(29) Project [codegen id : 5]
Output [1]: [optimizationInsights#847559]
Input [3]: [orderProposalId#847554L, optimizationInsights#847559, orderProposalId#848266L]
(30) Generate [codegen id : 5]
Input [1]: [optimizationInsights#847559]
Arguments: explode(optimizationInsights#847559), false, [insight#851864]
(31) Filter [codegen id : 5]
Input [1]: [insight#851864]
Condition : NOT insight#851864.internalInsightType IN (OP_CALC_ITEM_ACCEPT_THR_NOT_MET,OP_CALC_ITEM_NEGL_THR_NOT_MET,OP_CALC_ITEM_OPT_MISSING_MD,OP_CALC_LOCKED_QUANTITY_PREVENTS_DISCARDING_INSIGHT,OP_CALC_MIN_NOT_MET)
(32) Project [codegen id : 5]
Output: []
Input [1]: [insight#851864]
(33) LocalLimit [codegen id : 5]
Input: []
Arguments: 1
(34) InMemoryTableScan
Output [3]: [isFallbackOrderOnly#852517, orderDateTime#852513, prodLocSpecificKpis#848969]
Arguments: [isFallbackOrderOnly#852517, orderDateTime#852513, prodLocSpecificKpis#848969], [NOT (isFallbackOrderOnly#852517 <=> true)]
(35) InMemoryRelation
Arguments: [shardId#852482, worklistShardItemId#852490L, quantityAfterProdPlantOptimization#852491, qty#852492, orderProposalId#852495L, originalReplenishmentRunId#852498L, supplierGroup#852505, supplier#852506, supplyingPlant#852536, productGroup#852537, product#852508, plant#852509, subrange#852507, orderDateTime#852513, deliveryDateTime#852514, availabilityDateTime#852515, nextAvailabilityDateTime#852516, constraintValues#852530, constraintOperators#852528, constraintLabels#852527, logisticUnits#852532, orderQuantityBaseUom#852518, orderQuantityBaseUomUuid#852519, splitIndicator#852500L, netPriceAmount#852523, ... 17 more fields], StorageLevel(disk, memory, 2 replicas)
(36) InMemoryTableScan
Output [2]: [shardId#847553, items#847555]
Arguments: [shardId#847553, items#847555], [(size(items#847555, true) > 0), isnotnull(items#847555)]
(37) InMemoryRelation
Arguments: [shardId#847553, orderProposalId#847554L, items#847555, optimizationGroups#847556, isOptimal#847557, optimizationInsights#847559], StorageLevel(disk, memory, 2 replicas)
(38) Filter [codegen id : 3]
Input [2]: [shardId#847553, items#847555]
Condition : ((size(items#847555, true) > 0) AND isnotnull(items#847555))
(39) Generate [codegen id : 3]
Input [2]: [shardId#847553, items#847555]
Arguments: explode(items#847555), [shardId#847553], false, [item#848064]
(40) Project [codegen id : 3]
Output [4]: [shardId#847553, item#848064.worklistShardItemId AS worklistShardItemId#848065L, item#848064.quantityAfterProdPlantOptimization AS quantityAfterProdPlantOptimization#848066, item#848064.qty AS qty#848067]
Input [2]: [shardId#847553, item#848064]
(41) Scan parquet
Output [38]: [orderProposalId#848266L, orderProposalItemId#848267, supplierGroup#848268, supplier#848269, plant#848270, deliveryDateTime#848271, subrange#848272, supplyingPlant#848273, productGroup#848274, product#848275, orderDateTime#848276, availabilityDateTime#848277, nextAvailabilityDateTime#848278, sourceOfSupplyUuid#848280, isFallbackOrderOnly#848283, splitIndicator#848285L, previousOrderProposal#848286L, worklistShardItemId#848289L, orderProposalItemGroupId#848290, externalProductId#848291, externalPlantId#848292, logisticUnits#848293, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, minimumOrderQuantity#848296, constraintLabels#848297, constraintOperators#848298, constraintValues#848299, netPriceAmount#848302, netPriceCurrencyCode#848303, netPriceQuantity#848304, netPriceQuantityUom#848305, netPriceQuantityUomUuid#848306, measurements#848307, originalReplenishmentRunId#848308L, optimizationGroups#848309, shardId#848310, sequenceId#848288]
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/10000002109]
PartitionFilters: [isnotnull(shardId#848310), isnotnull(sequenceId#848288), (shardId#848310 = 0_1_10000002109), (sequenceId#848288 = 0)]
PushedFilters: [IsNotNull(worklistShardItemId)]
ReadSchema: struct<orderProposalId:bigint,orderProposalItemId:string,supplierGroup:string,supplier:string,plant:string,deliveryDateTime:timestamp,subrange:string,supplyingPlant:string,productGroup:string,product:string,orderDateTime:timestamp,availabilityDateTime:timestamp,nextAvailabilityDateTime:timestamp,sourceOfSupplyUuid:string,isFallbackOrderOnly:boolean,splitIndicator:bigint,previousOrderProposal:bigint,worklistShardItemId:bigint,orderProposalItemGroupId:string,externalProductId:string,externalPlantId: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>>,originalReplenishmentRunId:bigint,optimizationGroups:array<string>>
(42) ColumnarToRow [codegen id : 1]
Input [38]: [orderProposalId#848266L, orderProposalItemId#848267, supplierGroup#848268, supplier#848269, plant#848270, deliveryDateTime#848271, subrange#848272, supplyingPlant#848273, productGroup#848274, product#848275, orderDateTime#848276, availabilityDateTime#848277, nextAvailabilityDateTime#848278, sourceOfSupplyUuid#848280, isFallbackOrderOnly#848283, splitIndicator#848285L, previousOrderProposal#848286L, worklistShardItemId#848289L, orderProposalItemGroupId#848290, externalProductId#848291, externalPlantId#848292, logisticUnits#848293, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, minimumOrderQuantity#848296, constraintLabels#848297, constraintOperators#848298, constraintValues#848299, netPriceAmount#848302, netPriceCurrencyCode#848303, netPriceQuantity#848304, netPriceQuantityUom#848305, netPriceQuantityUomUuid#848306, measurements#848307, originalReplenishmentRunId#848308L, optimizationGroups#848309, shardId#848310, sequenceId#848288]
(43) Filter [codegen id : 1]
Input [38]: [orderProposalId#848266L, orderProposalItemId#848267, supplierGroup#848268, supplier#848269, plant#848270, deliveryDateTime#848271, subrange#848272, supplyingPlant#848273, productGroup#848274, product#848275, orderDateTime#848276, availabilityDateTime#848277, nextAvailabilityDateTime#848278, sourceOfSupplyUuid#848280, isFallbackOrderOnly#848283, splitIndicator#848285L, previousOrderProposal#848286L, worklistShardItemId#848289L, orderProposalItemGroupId#848290, externalProductId#848291, externalPlantId#848292, logisticUnits#848293, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, minimumOrderQuantity#848296, constraintLabels#848297, constraintOperators#848298, constraintValues#848299, netPriceAmount#848302, netPriceCurrencyCode#848303, netPriceQuantity#848304, netPriceQuantityUom#848305, netPriceQuantityUomUuid#848306, measurements#848307, originalReplenishmentRunId#848308L, optimizationGroups#848309, shardId#848310, sequenceId#848288]
Condition : isnotnull(worklistShardItemId#848289L)
(44) Project [codegen id : 1]
Output [36]: [orderProposalId#848266L, orderProposalItemId#848267, supplierGroup#848268, supplier#848269, plant#848270, deliveryDateTime#848271, subrange#848272, supplyingPlant#848273, productGroup#848274, product#848275, orderDateTime#848276, availabilityDateTime#848277, nextAvailabilityDateTime#848278, sourceOfSupplyUuid#848280, isFallbackOrderOnly#848283, splitIndicator#848285L, previousOrderProposal#848286L, worklistShardItemId#848289L, orderProposalItemGroupId#848290, externalProductId#848291, externalPlantId#848292, logisticUnits#848293, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, minimumOrderQuantity#848296, constraintLabels#848297, constraintOperators#848298, constraintValues#848299, netPriceAmount#848302, netPriceCurrencyCode#848303, netPriceQuantity#848304, netPriceQuantityUom#848305, netPriceQuantityUomUuid#848306, measurements#848307, originalReplenishmentRunId#848308L, optimizationGroups#848309]
Input [38]: [orderProposalId#848266L, orderProposalItemId#848267, supplierGroup#848268, supplier#848269, plant#848270, deliveryDateTime#848271, subrange#848272, supplyingPlant#848273, productGroup#848274, product#848275, orderDateTime#848276, availabilityDateTime#848277, nextAvailabilityDateTime#848278, sourceOfSupplyUuid#848280, isFallbackOrderOnly#848283, splitIndicator#848285L, previousOrderProposal#848286L, worklistShardItemId#848289L, orderProposalItemGroupId#848290, externalProductId#848291, externalPlantId#848292, logisticUnits#848293, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, minimumOrderQuantity#848296, constraintLabels#848297, constraintOperators#848298, constraintValues#848299, netPriceAmount#848302, netPriceCurrencyCode#848303, netPriceQuantity#848304, netPriceQuantityUom#848305, netPriceQuantityUomUuid#848306, measurements#848307, originalReplenishmentRunId#848308L, optimizationGroups#848309, shardId#848310, sequenceId#848288]
(45) Exchange
Input [36]: [orderProposalId#848266L, orderProposalItemId#848267, supplierGroup#848268, supplier#848269, plant#848270, deliveryDateTime#848271, subrange#848272, supplyingPlant#848273, productGroup#848274, product#848275, orderDateTime#848276, availabilityDateTime#848277, nextAvailabilityDateTime#848278, sourceOfSupplyUuid#848280, isFallbackOrderOnly#848283, splitIndicator#848285L, previousOrderProposal#848286L, worklistShardItemId#848289L, orderProposalItemGroupId#848290, externalProductId#848291, externalPlantId#848292, logisticUnits#848293, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, minimumOrderQuantity#848296, constraintLabels#848297, constraintOperators#848298, constraintValues#848299, netPriceAmount#848302, netPriceCurrencyCode#848303, netPriceQuantity#848304, netPriceQuantityUom#848305, netPriceQuantityUomUuid#848306, measurements#848307, originalReplenishmentRunId#848308L, optimizationGroups#848309]
Arguments: hashpartitioning(worklistShardItemId#848289L, 20), REPARTITION_BY_NUM, [plan_id=336116]
(46) Project [codegen id : 2]
Output [36]: [worklistShardItemId#848289L, orderProposalId#848266L, orderProposalItemId#848267, orderProposalItemGroupId#848290, originalReplenishmentRunId#848308L, splitIndicator#848285L, previousOrderProposal#848286L, sourceOfSupplyUuid#848280, supplierGroup#848268, supplier#848269, subrange#848272, product#848275, plant#848270, orderDateTime#848276, deliveryDateTime#848271, availabilityDateTime#848277, nextAvailabilityDateTime#848278, isFallbackOrderOnly#848283, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, netPriceQuantity#848304, netPriceQuantityUom#848305, netPriceQuantityUomUuid#848306, netPriceAmount#848302, netPriceCurrencyCode#848303, measurements#848307, minimumOrderQuantity#848296, constraintLabels#848297, constraintOperators#848298, constraintValues#848299, logisticUnits#848293, optimizationGroups#848309, externalProductId#848291, externalPlantId#848292, supplyingPlant#848273, productGroup#848274]
Input [36]: [orderProposalId#848266L, orderProposalItemId#848267, supplierGroup#848268, supplier#848269, plant#848270, deliveryDateTime#848271, subrange#848272, supplyingPlant#848273, productGroup#848274, product#848275, orderDateTime#848276, availabilityDateTime#848277, nextAvailabilityDateTime#848278, sourceOfSupplyUuid#848280, isFallbackOrderOnly#848283, splitIndicator#848285L, previousOrderProposal#848286L, worklistShardItemId#848289L, orderProposalItemGroupId#848290, externalProductId#848291, externalPlantId#848292, logisticUnits#848293, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, minimumOrderQuantity#848296, constraintLabels#848297, constraintOperators#848298, constraintValues#848299, netPriceAmount#848302, netPriceCurrencyCode#848303, netPriceQuantity#848304, netPriceQuantityUom#848305, netPriceQuantityUomUuid#848306, measurements#848307, originalReplenishmentRunId#848308L, optimizationGroups#848309]
(47) BroadcastExchange
Input [36]: [worklistShardItemId#848289L, orderProposalId#848266L, orderProposalItemId#848267, orderProposalItemGroupId#848290, originalReplenishmentRunId#848308L, splitIndicator#848285L, previousOrderProposal#848286L, sourceOfSupplyUuid#848280, supplierGroup#848268, supplier#848269, subrange#848272, product#848275, plant#848270, orderDateTime#848276, deliveryDateTime#848271, availabilityDateTime#848277, nextAvailabilityDateTime#848278, isFallbackOrderOnly#848283, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, netPriceQuantity#848304, netPriceQuantityUom#848305, netPriceQuantityUomUuid#848306, netPriceAmount#848302, netPriceCurrencyCode#848303, measurements#848307, minimumOrderQuantity#848296, constraintLabels#848297, constraintOperators#848298, constraintValues#848299, logisticUnits#848293, optimizationGroups#848309, externalProductId#848291, externalPlantId#848292, supplyingPlant#848273, productGroup#848274]
Arguments: HashedRelationBroadcastMode(List(input[0, bigint, true]),false), [plan_id=336120]
(48) BroadcastHashJoin [codegen id : 3]
Left keys [1]: [worklistShardItemId#848065L]
Right keys [1]: [worklistShardItemId#848289L]
Join type: LeftOuter
Join condition: (shardId#847553 = 0_1_10000002109)
(49) Project [codegen id : 3]
Output [39]: [shardId#847553, worklistShardItemId#848065L, quantityAfterProdPlantOptimization#848066, qty#848067, orderProposalId#848266L, originalReplenishmentRunId#848308L, supplierGroup#848268, supplier#848269, supplyingPlant#848273, productGroup#848274, product#848275, plant#848270, subrange#848272, orderDateTime#848276, deliveryDateTime#848271, availabilityDateTime#848277, nextAvailabilityDateTime#848278, constraintValues#848299, constraintOperators#848298, constraintLabels#848297, logisticUnits#848293, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, splitIndicator#848285L, netPriceAmount#848302, netPriceCurrencyCode#848303, netPriceQuantity#848304, netPriceQuantityUom#848305, netPriceQuantityUomUuid#848306, sourceOfSupplyUuid#848280, minimumOrderQuantity#848296, orderProposalItemId#848267, orderProposalItemGroupId#848290, optimizationGroups#848309, measurements#848307, externalProductId#848291, externalPlantId#848292, previousOrderProposal#848286L, isFallbackOrderOnly#848283]
Input [40]: [shardId#847553, worklistShardItemId#848065L, quantityAfterProdPlantOptimization#848066, qty#848067, worklistShardItemId#848289L, orderProposalId#848266L, orderProposalItemId#848267, orderProposalItemGroupId#848290, originalReplenishmentRunId#848308L, splitIndicator#848285L, previousOrderProposal#848286L, sourceOfSupplyUuid#848280, supplierGroup#848268, supplier#848269, subrange#848272, product#848275, plant#848270, orderDateTime#848276, deliveryDateTime#848271, availabilityDateTime#848277, nextAvailabilityDateTime#848278, isFallbackOrderOnly#848283, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, netPriceQuantity#848304, netPriceQuantityUom#848305, netPriceQuantityUomUuid#848306, netPriceAmount#848302, netPriceCurrencyCode#848303, measurements#848307, minimumOrderQuantity#848296, constraintLabels#848297, constraintOperators#848298, constraintValues#848299, logisticUnits#848293, optimizationGroups#848309, externalProductId#848291, externalPlantId#848292, supplyingPlant#848273, productGroup#848274]
(50) Exchange
Input [39]: [shardId#847553, worklistShardItemId#848065L, quantityAfterProdPlantOptimization#848066, qty#848067, orderProposalId#848266L, originalReplenishmentRunId#848308L, supplierGroup#848268, supplier#848269, supplyingPlant#848273, productGroup#848274, product#848275, plant#848270, subrange#848272, orderDateTime#848276, deliveryDateTime#848271, availabilityDateTime#848277, nextAvailabilityDateTime#848278, constraintValues#848299, constraintOperators#848298, constraintLabels#848297, logisticUnits#848293, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, splitIndicator#848285L, netPriceAmount#848302, netPriceCurrencyCode#848303, netPriceQuantity#848304, netPriceQuantityUom#848305, netPriceQuantityUomUuid#848306, sourceOfSupplyUuid#848280, minimumOrderQuantity#848296, orderProposalItemId#848267, orderProposalItemGroupId#848290, optimizationGroups#848309, measurements#848307, externalProductId#848291, externalPlantId#848292, previousOrderProposal#848286L, isFallbackOrderOnly#848283]
Arguments: hashpartitioning(shardId#847553, worklistShardItemId#848065L, 20), ENSURE_REQUIREMENTS, [plan_id=336125]
(51) Sort [codegen id : 4]
Input [39]: [shardId#847553, worklistShardItemId#848065L, quantityAfterProdPlantOptimization#848066, qty#848067, orderProposalId#848266L, originalReplenishmentRunId#848308L, supplierGroup#848268, supplier#848269, supplyingPlant#848273, productGroup#848274, product#848275, plant#848270, subrange#848272, orderDateTime#848276, deliveryDateTime#848271, availabilityDateTime#848277, nextAvailabilityDateTime#848278, constraintValues#848299, constraintOperators#848298, constraintLabels#848297, logisticUnits#848293, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, splitIndicator#848285L, netPriceAmount#848302, netPriceCurrencyCode#848303, netPriceQuantity#848304, netPriceQuantityUom#848305, netPriceQuantityUomUuid#848306, sourceOfSupplyUuid#848280, minimumOrderQuantity#848296, orderProposalItemId#848267, orderProposalItemGroupId#848290, optimizationGroups#848309, measurements#848307, externalProductId#848291, externalPlantId#848292, previousOrderProposal#848286L, isFallbackOrderOnly#848283]
Arguments: [shardId#847553 ASC NULLS FIRST, worklistShardItemId#848065L ASC NULLS FIRST], false, 0
(52) Scan ExistingRDD [codegen id : 5]
Output [6]: [shardId#848962, worklistShardItemId#848963L, qty#848964, demandChannel#848965, demandStream#848966, kpis#848967]
Arguments: [shardId#848962, worklistShardItemId#848963L, qty#848964, demandChannel#848965, demandStream#848966, kpis#848967], MapPartitionsRDD[39920] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(53) Filter [codegen id : 5]
Input [6]: [shardId#848962, worklistShardItemId#848963L, qty#848964, demandChannel#848965, demandStream#848966, kpis#848967]
Condition : (((isnull(qty#848964) AND isnull(demandChannel#848965)) AND isnull(demandStream#848966)) AND (isnotnull(shardId#848962) AND isnotnull(worklistShardItemId#848963L)))
(54) Project [codegen id : 5]
Output [3]: [shardId#848962, worklistShardItemId#848963L, coalesce(kpis#848967, []) AS prodLocSpecificKpis#848968]
Input [6]: [shardId#848962, worklistShardItemId#848963L, qty#848964, demandChannel#848965, demandStream#848966, kpis#848967]
(55) Exchange
Input [3]: [shardId#848962, worklistShardItemId#848963L, prodLocSpecificKpis#848968]
Arguments: hashpartitioning(shardId#848962, worklistShardItemId#848963L, 20), ENSURE_REQUIREMENTS, [plan_id=336131]
(56) Sort [codegen id : 6]
Input [3]: [shardId#848962, worklistShardItemId#848963L, prodLocSpecificKpis#848968]
Arguments: [shardId#848962 ASC NULLS FIRST, worklistShardItemId#848963L ASC NULLS FIRST], false, 0
(57) SortMergeJoin [codegen id : 7]
Left keys [2]: [shardId#847553, worklistShardItemId#848065L]
Right keys [2]: [shardId#848962, worklistShardItemId#848963L]
Join type: LeftOuter
Join condition: None
(58) Project [codegen id : 7]
Output [40]: [shardId#847553, worklistShardItemId#848065L, quantityAfterProdPlantOptimization#848066, qty#848067, orderProposalId#848266L, originalReplenishmentRunId#848308L, supplierGroup#848268, supplier#848269, supplyingPlant#848273, productGroup#848274, product#848275, plant#848270, subrange#848272, orderDateTime#848276, deliveryDateTime#848271, availabilityDateTime#848277, nextAvailabilityDateTime#848278, constraintValues#848299, constraintOperators#848298, constraintLabels#848297, logisticUnits#848293, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, splitIndicator#848285L, netPriceAmount#848302, netPriceCurrencyCode#848303, netPriceQuantity#848304, netPriceQuantityUom#848305, netPriceQuantityUomUuid#848306, sourceOfSupplyUuid#848280, minimumOrderQuantity#848296, orderProposalItemId#848267, orderProposalItemGroupId#848290, optimizationGroups#848309, measurements#848307, externalProductId#848291, externalPlantId#848292, previousOrderProposal#848286L, isFallbackOrderOnly#848283, coalesce(prodLocSpecificKpis#848968, []) AS prodLocSpecificKpis#848969]
Input [42]: [shardId#847553, worklistShardItemId#848065L, quantityAfterProdPlantOptimization#848066, qty#848067, orderProposalId#848266L, originalReplenishmentRunId#848308L, supplierGroup#848268, supplier#848269, supplyingPlant#848273, productGroup#848274, product#848275, plant#848270, subrange#848272, orderDateTime#848276, deliveryDateTime#848271, availabilityDateTime#848277, nextAvailabilityDateTime#848278, constraintValues#848299, constraintOperators#848298, constraintLabels#848297, logisticUnits#848293, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, splitIndicator#848285L, netPriceAmount#848302, netPriceCurrencyCode#848303, netPriceQuantity#848304, netPriceQuantityUom#848305, netPriceQuantityUomUuid#848306, sourceOfSupplyUuid#848280, minimumOrderQuantity#848296, orderProposalItemId#848267, orderProposalItemGroupId#848290, optimizationGroups#848309, measurements#848307, externalProductId#848291, externalPlantId#848292, previousOrderProposal#848286L, isFallbackOrderOnly#848283, shardId#848962, worklistShardItemId#848963L, prodLocSpecificKpis#848968]
(59) Scan ExistingRDD [codegen id : 8]
Output [6]: [shardId#848978, worklistShardItemId#848979L, qty#848980, demandChannel#848981, demandStream#848982, kpis#848983]
Arguments: [shardId#848978, worklistShardItemId#848979L, qty#848980, demandChannel#848981, demandStream#848982, kpis#848983], MapPartitionsRDD[39920] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(60) Filter [codegen id : 8]
Input [6]: [shardId#848978, worklistShardItemId#848979L, qty#848980, demandChannel#848981, demandStream#848982, kpis#848983]
Condition : ((((isnull(qty#848980) AND isnotnull(demandChannel#848981)) AND isnotnull(demandStream#848982)) AND (size(kpis#848983, true) > 0)) AND (isnotnull(shardId#848978) AND isnotnull(worklistShardItemId#848979L)))
(61) Project [codegen id : 8]
Output [5]: [shardId#848978, worklistShardItemId#848979L, demandChannel#848981, demandStream#848982, kpis#848983]
Input [6]: [shardId#848978, worklistShardItemId#848979L, qty#848980, demandChannel#848981, demandStream#848982, kpis#848983]
(62) ObjectHashAggregate
Input [5]: [shardId#848978, worklistShardItemId#848979L, demandChannel#848981, demandStream#848982, kpis#848983]
Keys [2]: [shardId#848978, worklistShardItemId#848979L]
Functions [1]: [partial_collect_list(struct(demandChannel, demandChannel#848981, demandStream, demandStream#848982, kpis, kpis#848983), 0, 0)]
Aggregate Attributes [1]: [buf#849158]
Results [3]: [shardId#848978, worklistShardItemId#848979L, buf#849159]
(63) Exchange
Input [3]: [shardId#848978, worklistShardItemId#848979L, buf#849159]
Arguments: hashpartitioning(shardId#848978, worklistShardItemId#848979L, 20), ENSURE_REQUIREMENTS, [plan_id=336142]
(64) ObjectHashAggregate
Input [3]: [shardId#848978, worklistShardItemId#848979L, buf#849159]
Keys [2]: [shardId#848978, worklistShardItemId#848979L]
Functions [1]: [collect_list(struct(demandChannel, demandChannel#848981, demandStream, demandStream#848982, kpis, kpis#848983), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(demandChannel, demandChannel#848981, demandStream, demandStream#848982, kpis, kpis#848983), 0, 0)#848977]
Results [3]: [shardId#848978, worklistShardItemId#848979L, collect_list(struct(demandChannel, demandChannel#848981, demandStream, demandStream#848982, kpis, kpis#848983), 0, 0)#848977 AS channelStreamSpecificKpis#848970]
(65) Sort [codegen id : 9]
Input [3]: [shardId#848978, worklistShardItemId#848979L, channelStreamSpecificKpis#848970]
Arguments: [shardId#848978 ASC NULLS FIRST, worklistShardItemId#848979L ASC NULLS FIRST], false, 0
(66) SortMergeJoin [codegen id : 10]
Left keys [2]: [shardId#847553, worklistShardItemId#848065L]
Right keys [2]: [shardId#848978, worklistShardItemId#848979L]
Join type: LeftOuter
Join condition: None
(67) Project [codegen id : 10]
Output [41]: [shardId#847553, worklistShardItemId#848065L, quantityAfterProdPlantOptimization#848066, qty#848067, orderProposalId#848266L, originalReplenishmentRunId#848308L, supplierGroup#848268, supplier#848269, supplyingPlant#848273, productGroup#848274, product#848275, plant#848270, subrange#848272, orderDateTime#848276, deliveryDateTime#848271, availabilityDateTime#848277, nextAvailabilityDateTime#848278, constraintValues#848299, constraintOperators#848298, constraintLabels#848297, logisticUnits#848293, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, splitIndicator#848285L, netPriceAmount#848302, netPriceCurrencyCode#848303, netPriceQuantity#848304, netPriceQuantityUom#848305, netPriceQuantityUomUuid#848306, sourceOfSupplyUuid#848280, minimumOrderQuantity#848296, orderProposalItemId#848267, orderProposalItemGroupId#848290, optimizationGroups#848309, measurements#848307, externalProductId#848291, externalPlantId#848292, previousOrderProposal#848286L, isFallbackOrderOnly#848283, prodLocSpecificKpis#848969, coalesce(channelStreamSpecificKpis#848970, []) AS channelStreamSpecificKpis#848984]
Input [43]: [shardId#847553, worklistShardItemId#848065L, quantityAfterProdPlantOptimization#848066, qty#848067, orderProposalId#848266L, originalReplenishmentRunId#848308L, supplierGroup#848268, supplier#848269, supplyingPlant#848273, productGroup#848274, product#848275, plant#848270, subrange#848272, orderDateTime#848276, deliveryDateTime#848271, availabilityDateTime#848277, nextAvailabilityDateTime#848278, constraintValues#848299, constraintOperators#848298, constraintLabels#848297, logisticUnits#848293, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, splitIndicator#848285L, netPriceAmount#848302, netPriceCurrencyCode#848303, netPriceQuantity#848304, netPriceQuantityUom#848305, netPriceQuantityUomUuid#848306, sourceOfSupplyUuid#848280, minimumOrderQuantity#848296, orderProposalItemId#848267, orderProposalItemGroupId#848290, optimizationGroups#848309, measurements#848307, externalProductId#848291, externalPlantId#848292, previousOrderProposal#848286L, isFallbackOrderOnly#848283, prodLocSpecificKpis#848969, shardId#848978, worklistShardItemId#848979L, channelStreamSpecificKpis#848970]
(68) Scan ExistingRDD [codegen id : 11]
Output [6]: [shardId#848991, worklistShardItemId#848992L, qty#848993, demandChannel#848994, demandStream#848995, kpis#848996]
Arguments: [shardId#848991, worklistShardItemId#848992L, qty#848993, demandChannel#848994, demandStream#848995, kpis#848996], MapPartitionsRDD[39920] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(69) Filter [codegen id : 11]
Input [6]: [shardId#848991, worklistShardItemId#848992L, qty#848993, demandChannel#848994, demandStream#848995, kpis#848996]
Condition : ((isnotnull(qty#848993) AND isnotnull(kpis#848996)) AND (isnotnull(shardId#848991) AND isnotnull(worklistShardItemId#848992L)))
(70) Project [codegen id : 11]
Output [4]: [shardId#848991, worklistShardItemId#848992L, qty#848993, kpis#848996]
Input [6]: [shardId#848991, worklistShardItemId#848992L, qty#848993, demandChannel#848994, demandStream#848995, kpis#848996]
(71) ObjectHashAggregate
Input [4]: [shardId#848991, worklistShardItemId#848992L, qty#848993, kpis#848996]
Keys [2]: [shardId#848991, worklistShardItemId#848992L]
Functions [1]: [partial_collect_list(struct(qty, qty#848993, kpis, kpis#848996), 0, 0)]
Aggregate Attributes [1]: [buf#849160]
Results [3]: [shardId#848991, worklistShardItemId#848992L, buf#849161]
(72) Exchange
Input [3]: [shardId#848991, worklistShardItemId#848992L, buf#849161]
Arguments: hashpartitioning(shardId#848991, worklistShardItemId#848992L, 20), ENSURE_REQUIREMENTS, [plan_id=336154]
(73) ObjectHashAggregate
Input [3]: [shardId#848991, worklistShardItemId#848992L, buf#849161]
Keys [2]: [shardId#848991, worklistShardItemId#848992L]
Functions [1]: [collect_list(struct(qty, qty#848993, kpis, kpis#848996), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(qty, qty#848993, kpis, kpis#848996), 0, 0)#848990]
Results [3]: [shardId#848991, worklistShardItemId#848992L, map_from_entries(collect_list(struct(qty, qty#848993, kpis, kpis#848996), 0, 0)#848990) AS quantityKpis#848985]
(74) Sort [codegen id : 12]
Input [3]: [shardId#848991, worklistShardItemId#848992L, quantityKpis#848985]
Arguments: [shardId#848991 ASC NULLS FIRST, worklistShardItemId#848992L ASC NULLS FIRST], false, 0
(75) SortMergeJoin [codegen id : 13]
Left keys [2]: [shardId#847553, worklistShardItemId#848065L]
Right keys [2]: [shardId#848991, worklistShardItemId#848992L]
Join type: LeftOuter
Join condition: None
(76) Project [codegen id : 13]
Output [42]: [shardId#847553, worklistShardItemId#848065L, quantityAfterProdPlantOptimization#848066, qty#848067, orderProposalId#848266L, originalReplenishmentRunId#848308L, supplierGroup#848268, supplier#848269, supplyingPlant#848273, productGroup#848274, product#848275, plant#848270, subrange#848272, orderDateTime#848276, deliveryDateTime#848271, availabilityDateTime#848277, nextAvailabilityDateTime#848278, constraintValues#848299, constraintOperators#848298, constraintLabels#848297, logisticUnits#848293, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, splitIndicator#848285L, netPriceAmount#848302, netPriceCurrencyCode#848303, netPriceQuantity#848304, netPriceQuantityUom#848305, netPriceQuantityUomUuid#848306, sourceOfSupplyUuid#848280, minimumOrderQuantity#848296, orderProposalItemId#848267, orderProposalItemGroupId#848290, optimizationGroups#848309, measurements#848307, externalProductId#848291, externalPlantId#848292, previousOrderProposal#848286L, isFallbackOrderOnly#848283, prodLocSpecificKpis#848969, channelStreamSpecificKpis#848984, coalesce(quantityKpis#848985, map(keys: [], values: [])) AS quantityKpis#848997]
Input [44]: [shardId#847553, worklistShardItemId#848065L, quantityAfterProdPlantOptimization#848066, qty#848067, orderProposalId#848266L, originalReplenishmentRunId#848308L, supplierGroup#848268, supplier#848269, supplyingPlant#848273, productGroup#848274, product#848275, plant#848270, subrange#848272, orderDateTime#848276, deliveryDateTime#848271, availabilityDateTime#848277, nextAvailabilityDateTime#848278, constraintValues#848299, constraintOperators#848298, constraintLabels#848297, logisticUnits#848293, orderQuantityBaseUom#848294, orderQuantityBaseUomUuid#848295, splitIndicator#848285L, netPriceAmount#848302, netPriceCurrencyCode#848303, netPriceQuantity#848304, netPriceQuantityUom#848305, netPriceQuantityUomUuid#848306, sourceOfSupplyUuid#848280, minimumOrderQuantity#848296, orderProposalItemId#848267, orderProposalItemGroupId#848290, optimizationGroups#848309, measurements#848307, externalProductId#848291, externalPlantId#848292, previousOrderProposal#848286L, isFallbackOrderOnly#848283, prodLocSpecificKpis#848969, channelStreamSpecificKpis#848984, shardId#848991, worklistShardItemId#848992L, quantityKpis#848985]
(77) Filter [codegen id : 6]
Input [3]: [isFallbackOrderOnly#852517, orderDateTime#852513, prodLocSpecificKpis#848969]
Condition : NOT (isFallbackOrderOnly#852517 <=> true)
(78) Project [codegen id : 6]
Output [2]: [orderDateTime#852513, prodLocSpecificKpis#848969]
Input [3]: [isFallbackOrderOnly#852517, orderDateTime#852513, prodLocSpecificKpis#848969]
(79) Scan parquet
Output [2]: [insightConfigurations#852294, shardId#852295]
Batched: true
Location: PreparedDeltaFileIndex [hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-qty-opt-service/internal/common-data-snapshot/10000002109]
PartitionFilters: [isnotnull(shardId#852295), (shardId#852295 = 0_1_10000002109)]
PushedFilters: [IsNotNull(insightConfigurations)]
ReadSchema: struct<insightConfigurations:map<string,struct<configurationVersion:string,name:string,settings:array<struct<name:string,type:string,value:string>>,status:string>>>
(80) ColumnarToRow [codegen id : 7]
Input [2]: [insightConfigurations#852294, shardId#852295]
(81) Filter [codegen id : 7]
Input [2]: [insightConfigurations#852294, shardId#852295]
Condition : (isnotnull(insightConfigurations#852294) AND isnotnull(insightConfigurations#852294[POTENTIAL_OOS_STOCK_PERIOD]))
(82) Project [codegen id : 7]
Output [1]: [insightConfigurations#852294[POTENTIAL_OOS_STOCK_PERIOD].settings AS _extract_settings#856501]
Input [2]: [insightConfigurations#852294, shardId#852295]
(83) Exchange
Input [1]: [_extract_settings#856501]
Arguments: RoundRobinPartitioning(20), REPARTITION_BY_NUM, [plan_id=337382]
(84) BroadcastExchange
Input [1]: [_extract_settings#856501]
Arguments: IdentityBroadcastMode, [plan_id=337383]
(85) BroadcastNestedLoopJoin
Join type: Cross
Join condition: ((CASE WHEN (isnull(element_at(filter(prodLocSpecificKpis#848969, lambdafunction((lambda x_2226#852299.label = OutOfStockProbability), lambda x_2226#852299, false)), 1, None, false).value) OR isnull(cast(element_at(filter(_extract_settings#856501, lambdafunction((lambda x_2227#852300.name = OOS_PROBABILITY_THRESHOLD), lambda x_2227#852300, false)), 1, None, false).value as double))) THEN false ELSE (element_at(filter(prodLocSpecificKpis#848969, lambdafunction((lambda x_2226#852301.label = OutOfStockProbability), lambda x_2226#852301, false)), 1, None, false).value >= cast(element_at(filter(_extract_settings#856501, lambdafunction((lambda x_2227#852302.name = OOS_PROBABILITY_THRESHOLD), lambda x_2227#852302, false)), 1, None, false).value as double)) END AND CASE WHEN isnull(element_at(filter(prodLocSpecificKpis#848969, lambdafunction((lambda x_2228#852303.label = InitialStockQty), lambda x_2228#852303, false)), 1, None, false).value) THEN false ELSE (element_at(filter(prodLocSpecificKpis#848969, lambdafunction((lambda x_2228#852305.label = InitialStockQty), lambda x_2228#852305, false)), 1, None, false).value > CASE WHEN cast(element_at(filter(_extract_settings#856501, lambdafunction((lambda x_2229#852306.name = CURRENT_STOCK_ABOVE_ZERO), lambda x_2229#852306, false)), 1, None, false).value as boolean) THEN 0.0 ELSE -Infinity END) END) AND CASE WHEN (CASE WHEN isnull(orderDateTime#852513) THEN true ELSE isnull((cast((unix_timestamp(orderDateTime#852513, yyyy-MM-dd HH:mm:ss, Some(UTC), false) - 1786361504) as double) / 3600.0)) END OR isnull(cast(element_at(filter(_extract_settings#856501, lambdafunction((lambda x_2230#852307.name = OFFSET_CURRENT_ORDER_DATE), lambda x_2230#852307, false)), 1, None, false).value as double))) THEN false ELSE (CASE WHEN isnull(orderDateTime#852513) THEN null ELSE (cast((unix_timestamp(orderDateTime#852513, yyyy-MM-dd HH:mm:ss, Some(UTC), false) - 1786361504) as double) / 3600.0) END >= cast(element_at(filter(_extract_settings#856501, lambdafunction((lambda x_2230#852308.name = OFFSET_CURRENT_ORDER_DATE), lambda x_2230#852308, false)), 1, None, false).value as double)) END)
(86) Project [codegen id : 8]
Output: []
Input [3]: [orderDateTime#852513, prodLocSpecificKpis#848969, _extract_settings#856501]
(87) LocalLimit [codegen id : 8]
Input: []
Arguments: 1
(88) InMemoryTableScan
Output [3]: [isFallbackOrderOnly#852380, qty#852355, quantityKpis#852471]
Arguments: [isFallbackOrderOnly#852380, qty#852355, quantityKpis#852471], [NOT (isFallbackOrderOnly#852380 <=> true)]
(89) InMemoryRelation
Arguments: [shardId#852345, worklistShardItemId#852353L, quantityAfterProdPlantOptimization#852354, qty#852355, orderProposalId#852358L, originalReplenishmentRunId#852361L, supplierGroup#852368, supplier#852369, supplyingPlant#852399, productGroup#852400, product#852371, plant#852372, subrange#852370, orderDateTime#852376, deliveryDateTime#852377, availabilityDateTime#852378, nextAvailabilityDateTime#852379, constraintValues#852393, constraintOperators#852391, constraintLabels#852390, logisticUnits#852395, orderQuantityBaseUom#852381, orderQuantityBaseUomUuid#852382, splitIndicator#852363L, netPriceAmount#852386, ... 17 more fields], StorageLevel(disk, memory, 2 replicas)
(90) Filter [codegen id : 9]
Input [3]: [isFallbackOrderOnly#852380, qty#852355, quantityKpis#852471]
Condition : NOT (isFallbackOrderOnly#852380 <=> true)
(91) Project [codegen id : 9]
Output [2]: [qty#852355, quantityKpis#852471]
Input [3]: [isFallbackOrderOnly#852380, qty#852355, quantityKpis#852471]
(92) Scan parquet
Output [2]: [insightConfigurations#852476, shardId#852477]
Batched: true
Location: PreparedDeltaFileIndex [hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-qty-opt-service/internal/common-data-snapshot/10000002109]
PartitionFilters: [isnotnull(shardId#852477), (shardId#852477 = 0_1_10000002109)]
PushedFilters: [IsNotNull(insightConfigurations)]
ReadSchema: struct<insightConfigurations:map<string,struct<configurationVersion:string,name:string,settings:array<struct<name:string,type:string,value:string>>,status:string>>>
(93) ColumnarToRow [codegen id : 10]
Input [2]: [insightConfigurations#852476, shardId#852477]
(94) Filter [codegen id : 10]
Input [2]: [insightConfigurations#852476, shardId#852477]
Condition : (isnotnull(insightConfigurations#852476) AND isnotnull(insightConfigurations#852476[POTENTIAL_OOS_DEMAND_PERIOD]))
(95) Project [codegen id : 10]
Output [1]: [insightConfigurations#852476[POTENTIAL_OOS_DEMAND_PERIOD].settings AS _extract_settings#856503]
Input [2]: [insightConfigurations#852476, shardId#852477]
(96) Exchange
Input [1]: [_extract_settings#856503]
Arguments: RoundRobinPartitioning(20), REPARTITION_BY_NUM, [plan_id=337398]
(97) BroadcastExchange
Input [1]: [_extract_settings#856503]
Arguments: IdentityBroadcastMode, [plan_id=337399]
(98) BroadcastNestedLoopJoin
Join type: Cross
Join condition: CASE WHEN (isnull(element_at(filter(element_at(quantityKpis#852471, qty#852355, None, false), lambdafunction((lambda x_2232#852325.label = OutOfStockProbability), lambda x_2232#852325, false)), 1, None, false).value) OR isnull(cast(element_at(filter(_extract_settings#856503, lambdafunction((lambda x_2233#852326.name = OOS_PROBABILITY_THRESHOLD), lambda x_2233#852326, false)), 1, None, false).value as double))) THEN false ELSE (element_at(filter(element_at(quantityKpis#852471, qty#852355, None, false), lambdafunction((lambda x_2232#852327.label = OutOfStockProbability), lambda x_2232#852327, false)), 1, None, false).value >= cast(element_at(filter(_extract_settings#856503, lambdafunction((lambda x_2233#852328.name = OOS_PROBABILITY_THRESHOLD), lambda x_2233#852328, false)), 1, None, false).value as double)) END
(99) Project [codegen id : 11]
Output: []
Input [3]: [qty#852355, quantityKpis#852471, _extract_settings#856503]
(100) LocalLimit [codegen id : 11]
Input: []
Arguments: 1
(101) Union
(102) CollectLimit
Input: []
Arguments: 1