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))\n95 ms (0 ms, 9 ms, 10 ms (stage 75281.0: task 184512))";
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#897868.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#893740), false, [insight#897868]"];
7 [id="node7" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [optimizationInsights#893740]"];
8 [id="node8" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [orderProposalId#893735L], [orderProposalId#894447L], 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>7 ms (0 ms, 0 ms, 2 ms (stage 75281.0: task 184505))<br>peak memory total (min, med, max (stageId: taskId))<br>5.0 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 75281.0: task 184510))<br>number of output rows: 4<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[orderProposalId#894447L], 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: 31 ms<br>number of output rows: 0<br>data size: 0.0 B" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(input[0, bigint, false]),false), [plan_id=350705]"];
subgraph cluster10 {
isCluster="true";
id="cluster10";
label="WholeStageCodegen (1)\n \nduration: total (min, med, max (stageId: taskId))\n0 ms (0 ms, 0 ms, 0 ms (stage 75184.0: task 184364))";
tooltip="WholeStageCodegen (1)";
11 [id="node11" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((isnotnull(orderProposalId#893735L) AND (size(optimizationInsights#893740, true) > 0)) AND isnotnull(optimizationInsights#893740))"];
}
12 [id="node12" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 4" tooltip="InMemoryTableScan [orderProposalId#893735L, optimizationInsights#893740], [isnotnull(orderProposalId#893735L), (size(optimizationInsights#893740, true) > 0), isnotnull(optimizationInsights#893740)]"];
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#893734) AND (shardId#893734 = 0_1_10000002109))"];
}
15 [id="node15" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#893734, orderProposalId#893735L, items#893736, optimizationGroups#893737, isOptimal#893738, optimizationInsights#893740], [isnotnull(shardId#893734), (shardId#893734 = 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#893734) AND (shardId#893734 = 0_1_10000002109))"];
18 [id="node18" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#893734,orderProposalId#893735L,items#893736,optimizationGroups#893737,isOptimal#893738,lastModified#893739,optimizationInsights#893740]"];
}
20 [id="node20" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 5<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 5<br>local bytes read total (min, med, max (stageId: taskId))<br>375.0 B (75.0 B, 75.0 B, 150.0 B (stage 75281.0: task 184504))<br>merged fetch fallback count: 0<br>local blocks read: 5<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size total (min, med, max (stageId: taskId))<br>80.0 B (16.0 B, 16.0 B, 16.0 B (stage 75277.0: task 184444))<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 75277.0: task 184445))<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 75281.0: task 184504))<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 total (min, med, max (stageId: taskId))<br>375.0 B (75.0 B, 75.0 B, 75.0 B (stage 75277.0: task 184444))" tooltip="Exchange hashpartitioning(orderProposalId#894447L, 20), ENSURE_REQUIREMENTS, [plan_id=350727]"];
subgraph cluster21 {
isCluster="true";
id="cluster21";
label="WholeStageCodegen (4)\n \nduration: total (min, med, max (stageId: taskId))\n36 ms (0 ms, 3 ms, 4 ms (stage 75277.0: task 184452))";
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 75277.0: task 184450))<br>peak memory total (min, med, max (stageId: taskId))<br>5.0 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 75277.0: task 184450))<br>number of output rows: 5<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[orderProposalId#894447L], functions=[])"];
23 [id="node23" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [orderProposalId#894447L]"];
24 [id="node24" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 6" tooltip="BroadcastHashJoin [worklistShardItemId#894246L], [worklistShardItemId#894470L], Inner, BuildLeft, false"];
38 [id="node38" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [worklistShardItemId#894470L, orderProposalId#894447L]"];
}
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: 40 ms<br>number of output rows: 6<br>data size: 1024.1 KiB" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(input[0, bigint, true]),false), [plan_id=350713]"];
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 75185.0: task 184369))";
tooltip="WholeStageCodegen (2)";
27 [id="node27" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [item#894245L AS worklistShardItemId#894246L]"];
28 [id="node28" labelType="html" label="<b>Generate</b><br><br>number of output rows: 6" tooltip="Generate explode(_extract_worklistShardItemId#902503), false, [item#894245L]"];
29 [id="node29" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [items#897862.worklistShardItemId AS _extract_worklistShardItemId#902503]"];
30 [id="node30" labelType="html" label="<b>Filter</b><br><br>number of output rows: 4" tooltip="Filter (((size(items#897862.worklistShardItemId, true) > 0) AND isnotnull(items#897862.worklistShardItemId)) AND (shardId#897860 = 0_1_10000002109))"];
}
31 [id="node31" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 4" tooltip="InMemoryTableScan [items#897862, shardId#897860], [(size(items#897862.worklistShardItemId, true) > 0), isnotnull(items#897862.worklistShardItemId), (shardId#897860 = 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#893734) AND (shardId#893734 = 0_1_10000002109))"];
}
34 [id="node34" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#893734, orderProposalId#893735L, items#893736, optimizationGroups#893737, isOptimal#893738, optimizationInsights#893740], [isnotnull(shardId#893734), (shardId#893734 = 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#893734) AND (shardId#893734 = 0_1_10000002109))"];
37 [id="node37" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#893734,orderProposalId#893735L,items#893736,optimizationGroups#893737,isOptimal#893738,lastModified#893739,optimizationInsights#893740]"];
}
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>504.0 B (84.0 B, 84.0 B, 168.0 B (stage 75277.0: task 184444))<br>merged fetch fallback count: 0<br>local blocks read: 6<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size total (min, med, max (stageId: taskId))<br>144.0 B (24.0 B, 48.0 B, 48.0 B (stage 75219.0: task 184441))<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 75219.0: task 184443))<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 75277.0: task 184444))<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 total (min, med, max (stageId: taskId))<br>504.0 B (84.0 B, 168.0 B, 168.0 B (stage 75219.0: task 184441))" tooltip="Exchange hashpartitioning(worklistShardItemId#894470L, 20), REPARTITION_BY_NUM, [plan_id=350720]"];
subgraph cluster40 {
isCluster="true";
id="cluster40";
label="WholeStageCodegen (3)\n \nduration: total (min, med, max (stageId: taskId))\n444 ms (101 ms, 117 ms, 124 ms (stage 75219.0: task 184440))";
tooltip="WholeStageCodegen (3)";
41 [id="node41" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [orderProposalId#894447L, worklistShardItemId#894470L]"];
42 [id="node42" labelType="html" label="<b>Filter</b><br><br>number of output rows: 6" tooltip="Filter ((isnotnull(worklistShardItemId#894470L) AND NOT (isFallbackOrderOnly#894464 <=> true)) AND isnotnull(orderProposalId#894447L))"];
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>440 ms (100 ms, 116 ms, 123 ms (stage 75219.0: task 184440))<br>dynamic partition pruning time: 0 ms<br>metadata time: 0 ms<br>size of files read: 77.1 KiB<br>number of output rows: 6<br>number of partitions read: 1" tooltip="FileScan parquet [orderProposalId#894447L,isFallbackOrderOnly#894464,worklistShardItemId#894470L,shardId#894491,sequenceId#894469] Batched: true, DataFilters: [isnotnull(worklistShardItemId#894470L), NOT (isFallbackOrderOnly#894464 <=> true), isnotnull(ord..., Format: Parquet, Location: PreparedDeltaFileIndex(1 paths)[hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20...., PartitionFilters: [isnotnull(shardId#894491), isnotnull(sequenceId#894469), (shardId#894491 = 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))\n339 ms (0 ms, 1 ms, 71 ms (stage 75281.0: task 184477))";
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#894973, lambdafunction((lambda x_2360#898303.label = OutOfStockProbability), lambda x_2360#898303, false)), 1, None, false).value) OR isnull(cast(element_at(filter(_extract_settings#902505, lambdafunction((lambda x_2361#898304.name = OOS_PROBABILITY_THRESHOLD), lambda x_2361#898304, false)), 1, None, false).value as double))) THEN false ELSE (element_at(filter(prodLocSpecificKpis#894973, lambdafunction((lambda x_2360#898305.label = OutOfStockProbability), lambda x_2360#898305, false)), 1, None, false).value >= cast(element_at(filter(_extract_settings#902505, lambdafunction((lambda x_2361#898306.name = OOS_PROBABILITY_THRESHOLD), lambda x_2361#898306, false)), 1, None, false).value as double)) END AND CASE WHEN isnull(element_at(filter(prodLocSpecificKpis#894973, lambdafunction((lambda x_2362#898307.label = InitialStockQty), lambda x_2362#898307, false)), 1, None, false).value) THEN false ELSE (element_at(filter(prodLocSpecificKpis#894973, lambdafunction((lambda x_2362#898309.label = InitialStockQty), lambda x_2362#898309, false)), 1, None, false).value > CASE WHEN cast(element_at(filter(_extract_settings#902505, lambdafunction((lambda x_2363#898310.name = CURRENT_STOCK_ABOVE_ZERO), lambda x_2363#898310, false)), 1, None, false).value as boolean) THEN 0.0 ELSE -Infinity END) END) AND CASE WHEN (CASE WHEN isnull(orderDateTime#898517) THEN true ELSE isnull((cast((unix_timestamp(orderDateTime#898517, yyyy-MM-dd HH:mm:ss, Some(UTC), false) - 1786361630) as double) / 3600.0)) END OR isnull(cast(element_at(filter(_extract_settings#902505, lambdafunction((lambda x_2364#898311.name = OFFSET_CURRENT_ORDER_DATE), lambda x_2364#898311, false)), 1, None, false).value as double))) THEN false ELSE (CASE WHEN isnull(orderDateTime#898517) THEN null ELSE (cast((unix_timestamp(orderDateTime#898517, yyyy-MM-dd HH:mm:ss, Some(UTC), false) - 1786361630) as double) / 3600.0) END >= cast(element_at(filter(_extract_settings#902505, lambdafunction((lambda x_2364#898312.name = OFFSET_CURRENT_ORDER_DATE), lambda x_2364#898312, 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))\n711 ms (0 ms, 38 ms, 100 ms (stage 75281.0: task 184468))";
tooltip="WholeStageCodegen (6)";
50 [id="node50" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [orderDateTime#898517, prodLocSpecificKpis#894973]"];
51 [id="node51" labelType="html" label="<b>Filter</b><br><br>number of output rows: 6" tooltip="Filter NOT (isFallbackOrderOnly#898521 <=> true)"];
}
52 [id="node52" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 6" tooltip="InMemoryTableScan [isFallbackOrderOnly#898521, orderDateTime#898517, prodLocSpecificKpis#894973], [NOT (isFallbackOrderOnly#898521 <=> 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#893734, worklistShardItemId#894246L, quantityAfterProdPlantOptimization#894247, qty#894248, orderProposalId#894447L, originalReplenishmentRunId#894489L, supplierGroup#894449, supplier#894450, supplyingPlant#894454, productGroup#894455, product#894456, plant#894451, subrange#894453, orderDateTime#894457, deliveryDateTime#894452, availabilityDateTime#894458, nextAvailabilityDateTime#894459, constraintValues#894480, constraintOperators#894479, constraintLabels#894478, logisticUnits#894474, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, splitIndicator#894466L, netPriceAmount#894483, ... 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#893734, worklistShardItemId#894246L], [shardId#894995, worklistShardItemId#894996L], 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#893734, worklistShardItemId#894246L, quantityAfterProdPlantOptimization#894247, qty#894248, orderProposalId#894447L, originalReplenishmentRunId#894489L, supplierGroup#894449, supplier#894450, supplyingPlant#894454, productGroup#894455, product#894456, plant#894451, subrange#894453, orderDateTime#894457, deliveryDateTime#894452, availabilityDateTime#894458, nextAvailabilityDateTime#894459, constraintValues#894480, constraintOperators#894479, constraintLabels#894478, logisticUnits#894474, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, splitIndicator#894466L, netPriceAmount#894483, ... 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#893734, worklistShardItemId#894246L], [shardId#894982, worklistShardItemId#894983L], 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#893734, worklistShardItemId#894246L, quantityAfterProdPlantOptimization#894247, qty#894248, orderProposalId#894447L, originalReplenishmentRunId#894489L, supplierGroup#894449, supplier#894450, supplyingPlant#894454, productGroup#894455, product#894456, plant#894451, subrange#894453, orderDateTime#894457, deliveryDateTime#894452, availabilityDateTime#894458, nextAvailabilityDateTime#894459, constraintValues#894480, constraintOperators#894479, constraintLabels#894478, logisticUnits#894474, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, splitIndicator#894466L, netPriceAmount#894483, ... 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#893734, worklistShardItemId#894246L], [shardId#894966, worklistShardItemId#894967L], 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#893734 ASC NULLS FIRST, worklistShardItemId#894246L 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#893734, worklistShardItemId#894246L, 20), ENSURE_REQUIREMENTS, [plan_id=349502]"];
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#893734, worklistShardItemId#894246L, quantityAfterProdPlantOptimization#894247, qty#894248, orderProposalId#894447L, originalReplenishmentRunId#894489L, supplierGroup#894449, supplier#894450, supplyingPlant#894454, productGroup#894455, product#894456, plant#894451, subrange#894453, orderDateTime#894457, deliveryDateTime#894452, availabilityDateTime#894458, nextAvailabilityDateTime#894459, constraintValues#894480, constraintOperators#894479, constraintLabels#894478, logisticUnits#894474, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, splitIndicator#894466L, netPriceAmount#894483, ... 14 more fields]"];
67 [id="node67" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#894246L], [worklistShardItemId#894470L], LeftOuter, BuildRight, (shardId#893734 = 0_1_10000002109), false"];
68 [id="node68" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#893734, item#894245.worklistShardItemId AS worklistShardItemId#894246L, item#894245.quantityAfterProdPlantOptimization AS quantityAfterProdPlantOptimization#894247, item#894245.qty AS qty#894248]"];
69 [id="node69" labelType="html" label="<b>Generate</b><br><br>number of output rows: 0" tooltip="Generate explode(items#893736), [shardId#893734], false, [item#894245]"];
70 [id="node70" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((size(items#893736, true) > 0) AND isnotnull(items#893736))"];
}
71 [id="node71" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#893734, items#893736], [(size(items#893736, true) > 0), isnotnull(items#893736)]"];
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#893734) AND (shardId#893734 = 0_1_10000002109))"];
}
74 [id="node74" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#893734, orderProposalId#893735L, items#893736, optimizationGroups#893737, isOptimal#893738, optimizationInsights#893740], [isnotnull(shardId#893734), (shardId#893734 = 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#893734) AND (shardId#893734 = 0_1_10000002109))"];
77 [id="node77" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#893734,orderProposalId#893735L,items#893736,optimizationGroups#893737,isOptimal#893738,lastModified#893739,optimizationInsights#893740]"];
}
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=349497]"];
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#894470L, orderProposalId#894447L, orderProposalItemId#894448, orderProposalItemGroupId#894471, originalReplenishmentRunId#894489L, splitIndicator#894466L, previousOrderProposal#894467L, sourceOfSupplyUuid#894461, supplierGroup#894449, supplier#894450, subrange#894453, product#894456, plant#894451, orderDateTime#894457, deliveryDateTime#894452, availabilityDateTime#894458, nextAvailabilityDateTime#894459, isFallbackOrderOnly#894464, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, netPriceQuantity#894485, netPriceQuantityUom#894486, netPriceQuantityUomUuid#894487, netPriceAmount#894483, netPriceCurrencyCode#894484, ... 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#894470L, 20), REPARTITION_BY_NUM, [plan_id=349493]"];
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#894447L, orderProposalItemId#894448, supplierGroup#894449, supplier#894450, plant#894451, deliveryDateTime#894452, subrange#894453, supplyingPlant#894454, productGroup#894455, product#894456, orderDateTime#894457, availabilityDateTime#894458, nextAvailabilityDateTime#894459, sourceOfSupplyUuid#894461, isFallbackOrderOnly#894464, splitIndicator#894466L, previousOrderProposal#894467L, worklistShardItemId#894470L, orderProposalItemGroupId#894471, externalProductId#894472, externalPlantId#894473, logisticUnits#894474, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, minimumOrderQuantity#894477, ... 11 more fields]"];
84 [id="node84" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter isnotnull(worklistShardItemId#894470L)"];
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#894447L,orderProposalItemId#894448,supplierGroup#894449,supplier#894450,plant#894451,deliveryDateTime#894452,subrange#894453,supplyingPlant#894454,productGroup#894455,product#894456,orderDateTime#894457,availabilityDateTime#894458,nextAvailabilityDateTime#894459,sourceOfSupplyUuid#894461,isFallbackOrderOnly#894464,splitIndicator#894466L,previousOrderProposal#894467L,worklistShardItemId#894470L,orderProposalItemGroupId#894471,externalProductId#894472,externalPlantId#894473,logisticUnits#894474,orderQuantityBaseUom#894475,orderQuantityBaseUomUuid#894476,minimumOrderQuantity#894477,... 13 more fields] Batched: true, DataFilters: [isnotnull(worklistShardItemId#894470L)], Format: Parquet, Location: PreparedDeltaFileIndex(1 paths)[hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20...., PartitionFilters: [isnotnull(shardId#894491), isnotnull(sequenceId#894469), (shardId#894491 = 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#894966 ASC NULLS FIRST, worklistShardItemId#894967L 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#894966, worklistShardItemId#894967L, 20), ENSURE_REQUIREMENTS, [plan_id=349508]"];
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#894966, worklistShardItemId#894967L, coalesce(kpis#894971, []) AS prodLocSpecificKpis#894972]"];
92 [id="node92" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (((isnull(qty#894968) AND isnull(demandChannel#894969)) AND isnull(demandStream#894970)) AND (isnotnull(shardId#894966) AND isnotnull(worklistShardItemId#894967L)))"];
93 [id="node93" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#894966,worklistShardItemId#894967L,qty#894968,demandChannel#894969,demandStream#894970,kpis#894971]"];
}
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#894982 ASC NULLS FIRST, worklistShardItemId#894983L 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#894982, worklistShardItemId#894983L], functions=[collect_list(struct(demandChannel, demandChannel#894985, demandStream, demandStream#894986, kpis, kpis#894987), 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#894982, worklistShardItemId#894983L, 20), ENSURE_REQUIREMENTS, [plan_id=349519]"];
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#894982, worklistShardItemId#894983L], functions=[partial_collect_list(struct(demandChannel, demandChannel#894985, demandStream, demandStream#894986, kpis, kpis#894987), 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#894982, worklistShardItemId#894983L, demandChannel#894985, demandStream#894986, kpis#894987]"];
101 [id="node101" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((((isnull(qty#894984) AND isnotnull(demandChannel#894985)) AND isnotnull(demandStream#894986)) AND (size(kpis#894987, true) > 0)) AND (isnotnull(shardId#894982) AND isnotnull(worklistShardItemId#894983L)))"];
102 [id="node102" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#894982,worklistShardItemId#894983L,qty#894984,demandChannel#894985,demandStream#894986,kpis#894987]"];
}
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#894995 ASC NULLS FIRST, worklistShardItemId#894996L 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#894995, worklistShardItemId#894996L], functions=[collect_list(struct(qty, qty#894997, kpis, kpis#895000), 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#894995, worklistShardItemId#894996L, 20), ENSURE_REQUIREMENTS, [plan_id=349531]"];
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#894995, worklistShardItemId#894996L], functions=[partial_collect_list(struct(qty, qty#894997, kpis, kpis#895000), 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#894995, worklistShardItemId#894996L, qty#894997, kpis#895000]"];
110 [id="node110" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((isnotnull(qty#894997) AND isnotnull(kpis#895000)) AND (isnotnull(shardId#894995) AND isnotnull(worklistShardItemId#894996L)))"];
111 [id="node111" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#894995,worklistShardItemId#894996L,qty#894997,demandChannel#894998,demandStream#894999,kpis#895000]"];
}
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: 169 ms<br>number of output rows: 0<br>data size: 0.0 B" tooltip="BroadcastExchange IdentityBroadcastMode, [plan_id=350747]"];
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=350746]"];
subgraph cluster114 {
isCluster="true";
id="cluster114";
label="WholeStageCodegen (7)\n \nduration: 71 ms";
tooltip="WholeStageCodegen (7)";
115 [id="node115" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [insightConfigurations#898298[POTENTIAL_OOS_STOCK_PERIOD].settings AS _extract_settings#902505]"];
116 [id="node116" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(insightConfigurations#898298) AND isnotnull(insightConfigurations#898298[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: 69 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#898298,shardId#898299] Batched: true, DataFilters: [isnotnull(insightConfigurations#898298), isnotnull(insightConfigurations#898298[POTENTIAL_OOS_ST..., Format: Parquet, Location: PreparedDeltaFileIndex(1 paths)[hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20...., PartitionFilters: [isnotnull(shardId#898299), (shardId#898299 = 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))\n325 ms (0 ms, 1 ms, 69 ms (stage 75281.0: task 184484))";
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#898475, qty#898359, None, false), lambdafunction((lambda x_2366#898329.label = OutOfStockProbability), lambda x_2366#898329, false)), 1, None, false).value) OR isnull(cast(element_at(filter(_extract_settings#902507, lambdafunction((lambda x_2367#898330.name = OOS_PROBABILITY_THRESHOLD), lambda x_2367#898330, false)), 1, None, false).value as double))) THEN false ELSE (element_at(filter(element_at(quantityKpis#898475, qty#898359, None, false), lambdafunction((lambda x_2366#898331.label = OutOfStockProbability), lambda x_2366#898331, false)), 1, None, false).value >= cast(element_at(filter(_extract_settings#902507, lambdafunction((lambda x_2367#898332.name = OOS_PROBABILITY_THRESHOLD), lambda x_2367#898332, 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))\n739 ms (0 ms, 41 ms, 111 ms (stage 75281.0: task 184484))";
tooltip="WholeStageCodegen (9)";
124 [id="node124" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [qty#898359, quantityKpis#898475]"];
125 [id="node125" labelType="html" label="<b>Filter</b><br><br>number of output rows: 6" tooltip="Filter NOT (isFallbackOrderOnly#898384 <=> true)"];
}
126 [id="node126" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 6" tooltip="InMemoryTableScan [isFallbackOrderOnly#898384, qty#898359, quantityKpis#898475], [NOT (isFallbackOrderOnly#898384 <=> 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#893734, worklistShardItemId#894246L, quantityAfterProdPlantOptimization#894247, qty#894248, orderProposalId#894447L, originalReplenishmentRunId#894489L, supplierGroup#894449, supplier#894450, supplyingPlant#894454, productGroup#894455, product#894456, plant#894451, subrange#894453, orderDateTime#894457, deliveryDateTime#894452, availabilityDateTime#894458, nextAvailabilityDateTime#894459, constraintValues#894480, constraintOperators#894479, constraintLabels#894478, logisticUnits#894474, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, splitIndicator#894466L, netPriceAmount#894483, ... 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#893734, worklistShardItemId#894246L], [shardId#894995, worklistShardItemId#894996L], 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#893734, worklistShardItemId#894246L, quantityAfterProdPlantOptimization#894247, qty#894248, orderProposalId#894447L, originalReplenishmentRunId#894489L, supplierGroup#894449, supplier#894450, supplyingPlant#894454, productGroup#894455, product#894456, plant#894451, subrange#894453, orderDateTime#894457, deliveryDateTime#894452, availabilityDateTime#894458, nextAvailabilityDateTime#894459, constraintValues#894480, constraintOperators#894479, constraintLabels#894478, logisticUnits#894474, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, splitIndicator#894466L, netPriceAmount#894483, ... 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#893734, worklistShardItemId#894246L], [shardId#894982, worklistShardItemId#894983L], 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#893734, worklistShardItemId#894246L, quantityAfterProdPlantOptimization#894247, qty#894248, orderProposalId#894447L, originalReplenishmentRunId#894489L, supplierGroup#894449, supplier#894450, supplyingPlant#894454, productGroup#894455, product#894456, plant#894451, subrange#894453, orderDateTime#894457, deliveryDateTime#894452, availabilityDateTime#894458, nextAvailabilityDateTime#894459, constraintValues#894480, constraintOperators#894479, constraintLabels#894478, logisticUnits#894474, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, splitIndicator#894466L, netPriceAmount#894483, ... 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#893734, worklistShardItemId#894246L], [shardId#894966, worklistShardItemId#894967L], 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#893734 ASC NULLS FIRST, worklistShardItemId#894246L 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#893734, worklistShardItemId#894246L, 20), ENSURE_REQUIREMENTS, [plan_id=349502]"];
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#893734, worklistShardItemId#894246L, quantityAfterProdPlantOptimization#894247, qty#894248, orderProposalId#894447L, originalReplenishmentRunId#894489L, supplierGroup#894449, supplier#894450, supplyingPlant#894454, productGroup#894455, product#894456, plant#894451, subrange#894453, orderDateTime#894457, deliveryDateTime#894452, availabilityDateTime#894458, nextAvailabilityDateTime#894459, constraintValues#894480, constraintOperators#894479, constraintLabels#894478, logisticUnits#894474, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, splitIndicator#894466L, netPriceAmount#894483, ... 14 more fields]"];
141 [id="node141" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#894246L], [worklistShardItemId#894470L], LeftOuter, BuildRight, (shardId#893734 = 0_1_10000002109), false"];
142 [id="node142" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#893734, item#894245.worklistShardItemId AS worklistShardItemId#894246L, item#894245.quantityAfterProdPlantOptimization AS quantityAfterProdPlantOptimization#894247, item#894245.qty AS qty#894248]"];
143 [id="node143" labelType="html" label="<b>Generate</b><br><br>number of output rows: 0" tooltip="Generate explode(items#893736), [shardId#893734], false, [item#894245]"];
144 [id="node144" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((size(items#893736, true) > 0) AND isnotnull(items#893736))"];
}
145 [id="node145" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#893734, items#893736], [(size(items#893736, true) > 0), isnotnull(items#893736)]"];
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#893734) AND (shardId#893734 = 0_1_10000002109))"];
}
148 [id="node148" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#893734, orderProposalId#893735L, items#893736, optimizationGroups#893737, isOptimal#893738, optimizationInsights#893740], [isnotnull(shardId#893734), (shardId#893734 = 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#893734) AND (shardId#893734 = 0_1_10000002109))"];
151 [id="node151" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#893734,orderProposalId#893735L,items#893736,optimizationGroups#893737,isOptimal#893738,lastModified#893739,optimizationInsights#893740]"];
}
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=349497]"];
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#894470L, orderProposalId#894447L, orderProposalItemId#894448, orderProposalItemGroupId#894471, originalReplenishmentRunId#894489L, splitIndicator#894466L, previousOrderProposal#894467L, sourceOfSupplyUuid#894461, supplierGroup#894449, supplier#894450, subrange#894453, product#894456, plant#894451, orderDateTime#894457, deliveryDateTime#894452, availabilityDateTime#894458, nextAvailabilityDateTime#894459, isFallbackOrderOnly#894464, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, netPriceQuantity#894485, netPriceQuantityUom#894486, netPriceQuantityUomUuid#894487, netPriceAmount#894483, netPriceCurrencyCode#894484, ... 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#894470L, 20), REPARTITION_BY_NUM, [plan_id=349493]"];
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#894447L, orderProposalItemId#894448, supplierGroup#894449, supplier#894450, plant#894451, deliveryDateTime#894452, subrange#894453, supplyingPlant#894454, productGroup#894455, product#894456, orderDateTime#894457, availabilityDateTime#894458, nextAvailabilityDateTime#894459, sourceOfSupplyUuid#894461, isFallbackOrderOnly#894464, splitIndicator#894466L, previousOrderProposal#894467L, worklistShardItemId#894470L, orderProposalItemGroupId#894471, externalProductId#894472, externalPlantId#894473, logisticUnits#894474, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, minimumOrderQuantity#894477, ... 11 more fields]"];
158 [id="node158" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter isnotnull(worklistShardItemId#894470L)"];
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#894447L,orderProposalItemId#894448,supplierGroup#894449,supplier#894450,plant#894451,deliveryDateTime#894452,subrange#894453,supplyingPlant#894454,productGroup#894455,product#894456,orderDateTime#894457,availabilityDateTime#894458,nextAvailabilityDateTime#894459,sourceOfSupplyUuid#894461,isFallbackOrderOnly#894464,splitIndicator#894466L,previousOrderProposal#894467L,worklistShardItemId#894470L,orderProposalItemGroupId#894471,externalProductId#894472,externalPlantId#894473,logisticUnits#894474,orderQuantityBaseUom#894475,orderQuantityBaseUomUuid#894476,minimumOrderQuantity#894477,... 13 more fields] Batched: true, DataFilters: [isnotnull(worklistShardItemId#894470L)], Format: Parquet, Location: PreparedDeltaFileIndex(1 paths)[hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20...., PartitionFilters: [isnotnull(shardId#894491), isnotnull(sequenceId#894469), (shardId#894491 = 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#894966 ASC NULLS FIRST, worklistShardItemId#894967L 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#894966, worklistShardItemId#894967L, 20), ENSURE_REQUIREMENTS, [plan_id=349508]"];
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#894966, worklistShardItemId#894967L, coalesce(kpis#894971, []) AS prodLocSpecificKpis#894972]"];
166 [id="node166" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (((isnull(qty#894968) AND isnull(demandChannel#894969)) AND isnull(demandStream#894970)) AND (isnotnull(shardId#894966) AND isnotnull(worklistShardItemId#894967L)))"];
167 [id="node167" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#894966,worklistShardItemId#894967L,qty#894968,demandChannel#894969,demandStream#894970,kpis#894971]"];
}
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#894982 ASC NULLS FIRST, worklistShardItemId#894983L 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#894982, worklistShardItemId#894983L], functions=[collect_list(struct(demandChannel, demandChannel#894985, demandStream, demandStream#894986, kpis, kpis#894987), 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#894982, worklistShardItemId#894983L, 20), ENSURE_REQUIREMENTS, [plan_id=349519]"];
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#894982, worklistShardItemId#894983L], functions=[partial_collect_list(struct(demandChannel, demandChannel#894985, demandStream, demandStream#894986, kpis, kpis#894987), 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#894982, worklistShardItemId#894983L, demandChannel#894985, demandStream#894986, kpis#894987]"];
175 [id="node175" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((((isnull(qty#894984) AND isnotnull(demandChannel#894985)) AND isnotnull(demandStream#894986)) AND (size(kpis#894987, true) > 0)) AND (isnotnull(shardId#894982) AND isnotnull(worklistShardItemId#894983L)))"];
176 [id="node176" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#894982,worklistShardItemId#894983L,qty#894984,demandChannel#894985,demandStream#894986,kpis#894987]"];
}
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#894995 ASC NULLS FIRST, worklistShardItemId#894996L 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#894995, worklistShardItemId#894996L], functions=[collect_list(struct(qty, qty#894997, kpis, kpis#895000), 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#894995, worklistShardItemId#894996L, 20), ENSURE_REQUIREMENTS, [plan_id=349531]"];
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#894995, worklistShardItemId#894996L], functions=[partial_collect_list(struct(qty, qty#894997, kpis, kpis#895000), 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#894995, worklistShardItemId#894996L, qty#894997, kpis#895000]"];
184 [id="node184" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((isnotnull(qty#894997) AND isnotnull(kpis#895000)) AND (isnotnull(shardId#894995) AND isnotnull(worklistShardItemId#894996L)))"];
185 [id="node185" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#894995,worklistShardItemId#894996L,qty#894997,demandChannel#894998,demandStream#894999,kpis#895000]"];
}
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: 174 ms<br>number of output rows: 0<br>data size: 0.0 B" tooltip="BroadcastExchange IdentityBroadcastMode, [plan_id=350763]"];
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=350762]"];
subgraph cluster188 {
isCluster="true";
id="cluster188";
label="WholeStageCodegen (10)\n \nduration: 79 ms";
tooltip="WholeStageCodegen (10)";
189 [id="node189" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [insightConfigurations#898480[POTENTIAL_OOS_DEMAND_PERIOD].settings AS _extract_settings#902507]"];
190 [id="node190" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(insightConfigurations#898480) AND isnotnull(insightConfigurations#898480[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: 77 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#898480,shardId#898481] Batched: true, DataFilters: [isnotnull(insightConfigurations#898480), isnotnull(insightConfigurations#898480[POTENTIAL_OOS_DE..., Format: Parquet, Location: PreparedDeltaFileIndex(1 paths)[hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20...., PartitionFilters: [isnotnull(shardId#898481), (shardId#898481 = 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#893735L, optimizationInsights#893740]
Arguments: [orderProposalId#893735L, optimizationInsights#893740], [isnotnull(orderProposalId#893735L), (size(optimizationInsights#893740, true) > 0), isnotnull(optimizationInsights#893740)]
(2) InMemoryRelation
Arguments: [shardId#893734, orderProposalId#893735L, items#893736, optimizationGroups#893737, isOptimal#893738, optimizationInsights#893740], StorageLevel(disk, memory, 2 replicas)
(3) InMemoryTableScan
Output [6]: [shardId#893734, orderProposalId#893735L, items#893736, optimizationGroups#893737, isOptimal#893738, optimizationInsights#893740]
Arguments: [shardId#893734, orderProposalId#893735L, items#893736, optimizationGroups#893737, isOptimal#893738, optimizationInsights#893740], [isnotnull(shardId#893734), (shardId#893734 = 0_1_10000002109)]
(4) InMemoryRelation
Arguments: [shardId#893734, orderProposalId#893735L, items#893736, optimizationGroups#893737, isOptimal#893738, lastModified#893739, optimizationInsights#893740], StorageLevel(disk, memory, 2 replicas)
(5) Scan ExistingRDD [codegen id : 1]
Output [7]: [shardId#893734, orderProposalId#893735L, items#893736, optimizationGroups#893737, isOptimal#893738, lastModified#893739, optimizationInsights#893740]
Arguments: [shardId#893734, orderProposalId#893735L, items#893736, optimizationGroups#893737, isOptimal#893738, lastModified#893739, optimizationInsights#893740], MapPartitionsRDD[41954] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(6) Filter [codegen id : 1]
Input [7]: [shardId#893734, orderProposalId#893735L, items#893736, optimizationGroups#893737, isOptimal#893738, lastModified#893739, optimizationInsights#893740]
Condition : (isnotnull(shardId#893734) AND (shardId#893734 = 0_1_10000002109))
(7) Filter [codegen id : 1]
Input [6]: [shardId#893734, orderProposalId#893735L, items#893736, optimizationGroups#893737, isOptimal#893738, optimizationInsights#893740]
Condition : (isnotnull(shardId#893734) AND (shardId#893734 = 0_1_10000002109))
(8) Filter [codegen id : 1]
Input [2]: [orderProposalId#893735L, optimizationInsights#893740]
Condition : ((isnotnull(orderProposalId#893735L) AND (size(optimizationInsights#893740, true) > 0)) AND isnotnull(optimizationInsights#893740))
(9) BroadcastExchange
Input [2]: [orderProposalId#893735L, optimizationInsights#893740]
Arguments: HashedRelationBroadcastMode(List(input[0, bigint, false]),false), [plan_id=350705]
(10) InMemoryTableScan
Output [2]: [items#897862, shardId#897860]
Arguments: [items#897862, shardId#897860], [(size(items#897862.worklistShardItemId, true) > 0), isnotnull(items#897862.worklistShardItemId), (shardId#897860 = 0_1_10000002109)]
(11) InMemoryRelation
Arguments: [shardId#897860, orderProposalId#897861L, items#897862, optimizationGroups#897863, isOptimal#897864, optimizationInsights#897866], StorageLevel(disk, memory, 2 replicas)
(12) Filter [codegen id : 2]
Input [2]: [items#897862, shardId#897860]
Condition : (((size(items#897862.worklistShardItemId, true) > 0) AND isnotnull(items#897862.worklistShardItemId)) AND (shardId#897860 = 0_1_10000002109))
(13) Project [codegen id : 2]
Output [1]: [items#897862.worklistShardItemId AS _extract_worklistShardItemId#902503]
Input [2]: [items#897862, shardId#897860]
(14) Generate [codegen id : 2]
Input [1]: [_extract_worklistShardItemId#902503]
Arguments: explode(_extract_worklistShardItemId#902503), false, [item#894245L]
(15) Project [codegen id : 2]
Output [1]: [item#894245L AS worklistShardItemId#894246L]
Input [1]: [item#894245L]
(16) BroadcastExchange
Input [1]: [worklistShardItemId#894246L]
Arguments: HashedRelationBroadcastMode(List(input[0, bigint, true]),false), [plan_id=350713]
(17) Scan parquet
Output [5]: [orderProposalId#894447L, isFallbackOrderOnly#894464, worklistShardItemId#894470L, shardId#894491, sequenceId#894469]
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#894491), isnotnull(sequenceId#894469), (shardId#894491 = 0_1_10000002109), (sequenceId#894469 = 2)]
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#894447L, isFallbackOrderOnly#894464, worklistShardItemId#894470L, shardId#894491, sequenceId#894469]
(19) Filter [codegen id : 3]
Input [5]: [orderProposalId#894447L, isFallbackOrderOnly#894464, worklistShardItemId#894470L, shardId#894491, sequenceId#894469]
Condition : ((isnotnull(worklistShardItemId#894470L) AND NOT (isFallbackOrderOnly#894464 <=> true)) AND isnotnull(orderProposalId#894447L))
(20) Project [codegen id : 3]
Output [2]: [orderProposalId#894447L, worklistShardItemId#894470L]
Input [5]: [orderProposalId#894447L, isFallbackOrderOnly#894464, worklistShardItemId#894470L, shardId#894491, sequenceId#894469]
(21) Exchange
Input [2]: [orderProposalId#894447L, worklistShardItemId#894470L]
Arguments: hashpartitioning(worklistShardItemId#894470L, 20), REPARTITION_BY_NUM, [plan_id=350720]
(22) Project
Output [2]: [worklistShardItemId#894470L, orderProposalId#894447L]
Input [2]: [orderProposalId#894447L, worklistShardItemId#894470L]
(23) BroadcastHashJoin [codegen id : 4]
Left keys [1]: [worklistShardItemId#894246L]
Right keys [1]: [worklistShardItemId#894470L]
Join type: Inner
Join condition: None
(24) Project [codegen id : 4]
Output [1]: [orderProposalId#894447L]
Input [3]: [worklistShardItemId#894246L, worklistShardItemId#894470L, orderProposalId#894447L]
(25) HashAggregate [codegen id : 4]
Input [1]: [orderProposalId#894447L]
Keys [1]: [orderProposalId#894447L]
Functions: []
Aggregate Attributes: []
Results [1]: [orderProposalId#894447L]
(26) Exchange
Input [1]: [orderProposalId#894447L]
Arguments: hashpartitioning(orderProposalId#894447L, 20), ENSURE_REQUIREMENTS, [plan_id=350727]
(27) HashAggregate
Input [1]: [orderProposalId#894447L]
Keys [1]: [orderProposalId#894447L]
Functions: []
Aggregate Attributes: []
Results [1]: [orderProposalId#894447L]
(28) BroadcastHashJoin [codegen id : 5]
Left keys [1]: [orderProposalId#893735L]
Right keys [1]: [orderProposalId#894447L]
Join type: Inner
Join condition: None
(29) Project [codegen id : 5]
Output [1]: [optimizationInsights#893740]
Input [3]: [orderProposalId#893735L, optimizationInsights#893740, orderProposalId#894447L]
(30) Generate [codegen id : 5]
Input [1]: [optimizationInsights#893740]
Arguments: explode(optimizationInsights#893740), false, [insight#897868]
(31) Filter [codegen id : 5]
Input [1]: [insight#897868]
Condition : NOT insight#897868.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#897868]
(33) LocalLimit [codegen id : 5]
Input: []
Arguments: 1
(34) InMemoryTableScan
Output [3]: [isFallbackOrderOnly#898521, orderDateTime#898517, prodLocSpecificKpis#894973]
Arguments: [isFallbackOrderOnly#898521, orderDateTime#898517, prodLocSpecificKpis#894973], [NOT (isFallbackOrderOnly#898521 <=> true)]
(35) InMemoryRelation
Arguments: [shardId#898486, worklistShardItemId#898494L, quantityAfterProdPlantOptimization#898495, qty#898496, orderProposalId#898499L, originalReplenishmentRunId#898502L, supplierGroup#898509, supplier#898510, supplyingPlant#898540, productGroup#898541, product#898512, plant#898513, subrange#898511, orderDateTime#898517, deliveryDateTime#898518, availabilityDateTime#898519, nextAvailabilityDateTime#898520, constraintValues#898534, constraintOperators#898532, constraintLabels#898531, logisticUnits#898536, orderQuantityBaseUom#898522, orderQuantityBaseUomUuid#898523, splitIndicator#898504L, netPriceAmount#898527, ... 17 more fields], StorageLevel(disk, memory, 2 replicas)
(36) InMemoryTableScan
Output [2]: [shardId#893734, items#893736]
Arguments: [shardId#893734, items#893736], [(size(items#893736, true) > 0), isnotnull(items#893736)]
(37) InMemoryRelation
Arguments: [shardId#893734, orderProposalId#893735L, items#893736, optimizationGroups#893737, isOptimal#893738, optimizationInsights#893740], StorageLevel(disk, memory, 2 replicas)
(38) Filter [codegen id : 3]
Input [2]: [shardId#893734, items#893736]
Condition : ((size(items#893736, true) > 0) AND isnotnull(items#893736))
(39) Generate [codegen id : 3]
Input [2]: [shardId#893734, items#893736]
Arguments: explode(items#893736), [shardId#893734], false, [item#894245]
(40) Project [codegen id : 3]
Output [4]: [shardId#893734, item#894245.worklistShardItemId AS worklistShardItemId#894246L, item#894245.quantityAfterProdPlantOptimization AS quantityAfterProdPlantOptimization#894247, item#894245.qty AS qty#894248]
Input [2]: [shardId#893734, item#894245]
(41) Scan parquet
Output [38]: [orderProposalId#894447L, orderProposalItemId#894448, supplierGroup#894449, supplier#894450, plant#894451, deliveryDateTime#894452, subrange#894453, supplyingPlant#894454, productGroup#894455, product#894456, orderDateTime#894457, availabilityDateTime#894458, nextAvailabilityDateTime#894459, sourceOfSupplyUuid#894461, isFallbackOrderOnly#894464, splitIndicator#894466L, previousOrderProposal#894467L, worklistShardItemId#894470L, orderProposalItemGroupId#894471, externalProductId#894472, externalPlantId#894473, logisticUnits#894474, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, minimumOrderQuantity#894477, constraintLabels#894478, constraintOperators#894479, constraintValues#894480, netPriceAmount#894483, netPriceCurrencyCode#894484, netPriceQuantity#894485, netPriceQuantityUom#894486, netPriceQuantityUomUuid#894487, measurements#894488, originalReplenishmentRunId#894489L, optimizationGroups#894490, shardId#894491, sequenceId#894469]
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#894491), isnotnull(sequenceId#894469), (shardId#894491 = 0_1_10000002109), (sequenceId#894469 = 2)]
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#894447L, orderProposalItemId#894448, supplierGroup#894449, supplier#894450, plant#894451, deliveryDateTime#894452, subrange#894453, supplyingPlant#894454, productGroup#894455, product#894456, orderDateTime#894457, availabilityDateTime#894458, nextAvailabilityDateTime#894459, sourceOfSupplyUuid#894461, isFallbackOrderOnly#894464, splitIndicator#894466L, previousOrderProposal#894467L, worklistShardItemId#894470L, orderProposalItemGroupId#894471, externalProductId#894472, externalPlantId#894473, logisticUnits#894474, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, minimumOrderQuantity#894477, constraintLabels#894478, constraintOperators#894479, constraintValues#894480, netPriceAmount#894483, netPriceCurrencyCode#894484, netPriceQuantity#894485, netPriceQuantityUom#894486, netPriceQuantityUomUuid#894487, measurements#894488, originalReplenishmentRunId#894489L, optimizationGroups#894490, shardId#894491, sequenceId#894469]
(43) Filter [codegen id : 1]
Input [38]: [orderProposalId#894447L, orderProposalItemId#894448, supplierGroup#894449, supplier#894450, plant#894451, deliveryDateTime#894452, subrange#894453, supplyingPlant#894454, productGroup#894455, product#894456, orderDateTime#894457, availabilityDateTime#894458, nextAvailabilityDateTime#894459, sourceOfSupplyUuid#894461, isFallbackOrderOnly#894464, splitIndicator#894466L, previousOrderProposal#894467L, worklistShardItemId#894470L, orderProposalItemGroupId#894471, externalProductId#894472, externalPlantId#894473, logisticUnits#894474, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, minimumOrderQuantity#894477, constraintLabels#894478, constraintOperators#894479, constraintValues#894480, netPriceAmount#894483, netPriceCurrencyCode#894484, netPriceQuantity#894485, netPriceQuantityUom#894486, netPriceQuantityUomUuid#894487, measurements#894488, originalReplenishmentRunId#894489L, optimizationGroups#894490, shardId#894491, sequenceId#894469]
Condition : isnotnull(worklistShardItemId#894470L)
(44) Project [codegen id : 1]
Output [36]: [orderProposalId#894447L, orderProposalItemId#894448, supplierGroup#894449, supplier#894450, plant#894451, deliveryDateTime#894452, subrange#894453, supplyingPlant#894454, productGroup#894455, product#894456, orderDateTime#894457, availabilityDateTime#894458, nextAvailabilityDateTime#894459, sourceOfSupplyUuid#894461, isFallbackOrderOnly#894464, splitIndicator#894466L, previousOrderProposal#894467L, worklistShardItemId#894470L, orderProposalItemGroupId#894471, externalProductId#894472, externalPlantId#894473, logisticUnits#894474, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, minimumOrderQuantity#894477, constraintLabels#894478, constraintOperators#894479, constraintValues#894480, netPriceAmount#894483, netPriceCurrencyCode#894484, netPriceQuantity#894485, netPriceQuantityUom#894486, netPriceQuantityUomUuid#894487, measurements#894488, originalReplenishmentRunId#894489L, optimizationGroups#894490]
Input [38]: [orderProposalId#894447L, orderProposalItemId#894448, supplierGroup#894449, supplier#894450, plant#894451, deliveryDateTime#894452, subrange#894453, supplyingPlant#894454, productGroup#894455, product#894456, orderDateTime#894457, availabilityDateTime#894458, nextAvailabilityDateTime#894459, sourceOfSupplyUuid#894461, isFallbackOrderOnly#894464, splitIndicator#894466L, previousOrderProposal#894467L, worklistShardItemId#894470L, orderProposalItemGroupId#894471, externalProductId#894472, externalPlantId#894473, logisticUnits#894474, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, minimumOrderQuantity#894477, constraintLabels#894478, constraintOperators#894479, constraintValues#894480, netPriceAmount#894483, netPriceCurrencyCode#894484, netPriceQuantity#894485, netPriceQuantityUom#894486, netPriceQuantityUomUuid#894487, measurements#894488, originalReplenishmentRunId#894489L, optimizationGroups#894490, shardId#894491, sequenceId#894469]
(45) Exchange
Input [36]: [orderProposalId#894447L, orderProposalItemId#894448, supplierGroup#894449, supplier#894450, plant#894451, deliveryDateTime#894452, subrange#894453, supplyingPlant#894454, productGroup#894455, product#894456, orderDateTime#894457, availabilityDateTime#894458, nextAvailabilityDateTime#894459, sourceOfSupplyUuid#894461, isFallbackOrderOnly#894464, splitIndicator#894466L, previousOrderProposal#894467L, worklistShardItemId#894470L, orderProposalItemGroupId#894471, externalProductId#894472, externalPlantId#894473, logisticUnits#894474, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, minimumOrderQuantity#894477, constraintLabels#894478, constraintOperators#894479, constraintValues#894480, netPriceAmount#894483, netPriceCurrencyCode#894484, netPriceQuantity#894485, netPriceQuantityUom#894486, netPriceQuantityUomUuid#894487, measurements#894488, originalReplenishmentRunId#894489L, optimizationGroups#894490]
Arguments: hashpartitioning(worklistShardItemId#894470L, 20), REPARTITION_BY_NUM, [plan_id=349493]
(46) Project [codegen id : 2]
Output [36]: [worklistShardItemId#894470L, orderProposalId#894447L, orderProposalItemId#894448, orderProposalItemGroupId#894471, originalReplenishmentRunId#894489L, splitIndicator#894466L, previousOrderProposal#894467L, sourceOfSupplyUuid#894461, supplierGroup#894449, supplier#894450, subrange#894453, product#894456, plant#894451, orderDateTime#894457, deliveryDateTime#894452, availabilityDateTime#894458, nextAvailabilityDateTime#894459, isFallbackOrderOnly#894464, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, netPriceQuantity#894485, netPriceQuantityUom#894486, netPriceQuantityUomUuid#894487, netPriceAmount#894483, netPriceCurrencyCode#894484, measurements#894488, minimumOrderQuantity#894477, constraintLabels#894478, constraintOperators#894479, constraintValues#894480, logisticUnits#894474, optimizationGroups#894490, externalProductId#894472, externalPlantId#894473, supplyingPlant#894454, productGroup#894455]
Input [36]: [orderProposalId#894447L, orderProposalItemId#894448, supplierGroup#894449, supplier#894450, plant#894451, deliveryDateTime#894452, subrange#894453, supplyingPlant#894454, productGroup#894455, product#894456, orderDateTime#894457, availabilityDateTime#894458, nextAvailabilityDateTime#894459, sourceOfSupplyUuid#894461, isFallbackOrderOnly#894464, splitIndicator#894466L, previousOrderProposal#894467L, worklistShardItemId#894470L, orderProposalItemGroupId#894471, externalProductId#894472, externalPlantId#894473, logisticUnits#894474, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, minimumOrderQuantity#894477, constraintLabels#894478, constraintOperators#894479, constraintValues#894480, netPriceAmount#894483, netPriceCurrencyCode#894484, netPriceQuantity#894485, netPriceQuantityUom#894486, netPriceQuantityUomUuid#894487, measurements#894488, originalReplenishmentRunId#894489L, optimizationGroups#894490]
(47) BroadcastExchange
Input [36]: [worklistShardItemId#894470L, orderProposalId#894447L, orderProposalItemId#894448, orderProposalItemGroupId#894471, originalReplenishmentRunId#894489L, splitIndicator#894466L, previousOrderProposal#894467L, sourceOfSupplyUuid#894461, supplierGroup#894449, supplier#894450, subrange#894453, product#894456, plant#894451, orderDateTime#894457, deliveryDateTime#894452, availabilityDateTime#894458, nextAvailabilityDateTime#894459, isFallbackOrderOnly#894464, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, netPriceQuantity#894485, netPriceQuantityUom#894486, netPriceQuantityUomUuid#894487, netPriceAmount#894483, netPriceCurrencyCode#894484, measurements#894488, minimumOrderQuantity#894477, constraintLabels#894478, constraintOperators#894479, constraintValues#894480, logisticUnits#894474, optimizationGroups#894490, externalProductId#894472, externalPlantId#894473, supplyingPlant#894454, productGroup#894455]
Arguments: HashedRelationBroadcastMode(List(input[0, bigint, true]),false), [plan_id=349497]
(48) BroadcastHashJoin [codegen id : 3]
Left keys [1]: [worklistShardItemId#894246L]
Right keys [1]: [worklistShardItemId#894470L]
Join type: LeftOuter
Join condition: (shardId#893734 = 0_1_10000002109)
(49) Project [codegen id : 3]
Output [39]: [shardId#893734, worklistShardItemId#894246L, quantityAfterProdPlantOptimization#894247, qty#894248, orderProposalId#894447L, originalReplenishmentRunId#894489L, supplierGroup#894449, supplier#894450, supplyingPlant#894454, productGroup#894455, product#894456, plant#894451, subrange#894453, orderDateTime#894457, deliveryDateTime#894452, availabilityDateTime#894458, nextAvailabilityDateTime#894459, constraintValues#894480, constraintOperators#894479, constraintLabels#894478, logisticUnits#894474, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, splitIndicator#894466L, netPriceAmount#894483, netPriceCurrencyCode#894484, netPriceQuantity#894485, netPriceQuantityUom#894486, netPriceQuantityUomUuid#894487, sourceOfSupplyUuid#894461, minimumOrderQuantity#894477, orderProposalItemId#894448, orderProposalItemGroupId#894471, optimizationGroups#894490, measurements#894488, externalProductId#894472, externalPlantId#894473, previousOrderProposal#894467L, isFallbackOrderOnly#894464]
Input [40]: [shardId#893734, worklistShardItemId#894246L, quantityAfterProdPlantOptimization#894247, qty#894248, worklistShardItemId#894470L, orderProposalId#894447L, orderProposalItemId#894448, orderProposalItemGroupId#894471, originalReplenishmentRunId#894489L, splitIndicator#894466L, previousOrderProposal#894467L, sourceOfSupplyUuid#894461, supplierGroup#894449, supplier#894450, subrange#894453, product#894456, plant#894451, orderDateTime#894457, deliveryDateTime#894452, availabilityDateTime#894458, nextAvailabilityDateTime#894459, isFallbackOrderOnly#894464, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, netPriceQuantity#894485, netPriceQuantityUom#894486, netPriceQuantityUomUuid#894487, netPriceAmount#894483, netPriceCurrencyCode#894484, measurements#894488, minimumOrderQuantity#894477, constraintLabels#894478, constraintOperators#894479, constraintValues#894480, logisticUnits#894474, optimizationGroups#894490, externalProductId#894472, externalPlantId#894473, supplyingPlant#894454, productGroup#894455]
(50) Exchange
Input [39]: [shardId#893734, worklistShardItemId#894246L, quantityAfterProdPlantOptimization#894247, qty#894248, orderProposalId#894447L, originalReplenishmentRunId#894489L, supplierGroup#894449, supplier#894450, supplyingPlant#894454, productGroup#894455, product#894456, plant#894451, subrange#894453, orderDateTime#894457, deliveryDateTime#894452, availabilityDateTime#894458, nextAvailabilityDateTime#894459, constraintValues#894480, constraintOperators#894479, constraintLabels#894478, logisticUnits#894474, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, splitIndicator#894466L, netPriceAmount#894483, netPriceCurrencyCode#894484, netPriceQuantity#894485, netPriceQuantityUom#894486, netPriceQuantityUomUuid#894487, sourceOfSupplyUuid#894461, minimumOrderQuantity#894477, orderProposalItemId#894448, orderProposalItemGroupId#894471, optimizationGroups#894490, measurements#894488, externalProductId#894472, externalPlantId#894473, previousOrderProposal#894467L, isFallbackOrderOnly#894464]
Arguments: hashpartitioning(shardId#893734, worklistShardItemId#894246L, 20), ENSURE_REQUIREMENTS, [plan_id=349502]
(51) Sort [codegen id : 4]
Input [39]: [shardId#893734, worklistShardItemId#894246L, quantityAfterProdPlantOptimization#894247, qty#894248, orderProposalId#894447L, originalReplenishmentRunId#894489L, supplierGroup#894449, supplier#894450, supplyingPlant#894454, productGroup#894455, product#894456, plant#894451, subrange#894453, orderDateTime#894457, deliveryDateTime#894452, availabilityDateTime#894458, nextAvailabilityDateTime#894459, constraintValues#894480, constraintOperators#894479, constraintLabels#894478, logisticUnits#894474, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, splitIndicator#894466L, netPriceAmount#894483, netPriceCurrencyCode#894484, netPriceQuantity#894485, netPriceQuantityUom#894486, netPriceQuantityUomUuid#894487, sourceOfSupplyUuid#894461, minimumOrderQuantity#894477, orderProposalItemId#894448, orderProposalItemGroupId#894471, optimizationGroups#894490, measurements#894488, externalProductId#894472, externalPlantId#894473, previousOrderProposal#894467L, isFallbackOrderOnly#894464]
Arguments: [shardId#893734 ASC NULLS FIRST, worklistShardItemId#894246L ASC NULLS FIRST], false, 0
(52) Scan ExistingRDD [codegen id : 5]
Output [6]: [shardId#894966, worklistShardItemId#894967L, qty#894968, demandChannel#894969, demandStream#894970, kpis#894971]
Arguments: [shardId#894966, worklistShardItemId#894967L, qty#894968, demandChannel#894969, demandStream#894970, kpis#894971], MapPartitionsRDD[42014] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(53) Filter [codegen id : 5]
Input [6]: [shardId#894966, worklistShardItemId#894967L, qty#894968, demandChannel#894969, demandStream#894970, kpis#894971]
Condition : (((isnull(qty#894968) AND isnull(demandChannel#894969)) AND isnull(demandStream#894970)) AND (isnotnull(shardId#894966) AND isnotnull(worklistShardItemId#894967L)))
(54) Project [codegen id : 5]
Output [3]: [shardId#894966, worklistShardItemId#894967L, coalesce(kpis#894971, []) AS prodLocSpecificKpis#894972]
Input [6]: [shardId#894966, worklistShardItemId#894967L, qty#894968, demandChannel#894969, demandStream#894970, kpis#894971]
(55) Exchange
Input [3]: [shardId#894966, worklistShardItemId#894967L, prodLocSpecificKpis#894972]
Arguments: hashpartitioning(shardId#894966, worklistShardItemId#894967L, 20), ENSURE_REQUIREMENTS, [plan_id=349508]
(56) Sort [codegen id : 6]
Input [3]: [shardId#894966, worklistShardItemId#894967L, prodLocSpecificKpis#894972]
Arguments: [shardId#894966 ASC NULLS FIRST, worklistShardItemId#894967L ASC NULLS FIRST], false, 0
(57) SortMergeJoin [codegen id : 7]
Left keys [2]: [shardId#893734, worklistShardItemId#894246L]
Right keys [2]: [shardId#894966, worklistShardItemId#894967L]
Join type: LeftOuter
Join condition: None
(58) Project [codegen id : 7]
Output [40]: [shardId#893734, worklistShardItemId#894246L, quantityAfterProdPlantOptimization#894247, qty#894248, orderProposalId#894447L, originalReplenishmentRunId#894489L, supplierGroup#894449, supplier#894450, supplyingPlant#894454, productGroup#894455, product#894456, plant#894451, subrange#894453, orderDateTime#894457, deliveryDateTime#894452, availabilityDateTime#894458, nextAvailabilityDateTime#894459, constraintValues#894480, constraintOperators#894479, constraintLabels#894478, logisticUnits#894474, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, splitIndicator#894466L, netPriceAmount#894483, netPriceCurrencyCode#894484, netPriceQuantity#894485, netPriceQuantityUom#894486, netPriceQuantityUomUuid#894487, sourceOfSupplyUuid#894461, minimumOrderQuantity#894477, orderProposalItemId#894448, orderProposalItemGroupId#894471, optimizationGroups#894490, measurements#894488, externalProductId#894472, externalPlantId#894473, previousOrderProposal#894467L, isFallbackOrderOnly#894464, coalesce(prodLocSpecificKpis#894972, []) AS prodLocSpecificKpis#894973]
Input [42]: [shardId#893734, worklistShardItemId#894246L, quantityAfterProdPlantOptimization#894247, qty#894248, orderProposalId#894447L, originalReplenishmentRunId#894489L, supplierGroup#894449, supplier#894450, supplyingPlant#894454, productGroup#894455, product#894456, plant#894451, subrange#894453, orderDateTime#894457, deliveryDateTime#894452, availabilityDateTime#894458, nextAvailabilityDateTime#894459, constraintValues#894480, constraintOperators#894479, constraintLabels#894478, logisticUnits#894474, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, splitIndicator#894466L, netPriceAmount#894483, netPriceCurrencyCode#894484, netPriceQuantity#894485, netPriceQuantityUom#894486, netPriceQuantityUomUuid#894487, sourceOfSupplyUuid#894461, minimumOrderQuantity#894477, orderProposalItemId#894448, orderProposalItemGroupId#894471, optimizationGroups#894490, measurements#894488, externalProductId#894472, externalPlantId#894473, previousOrderProposal#894467L, isFallbackOrderOnly#894464, shardId#894966, worklistShardItemId#894967L, prodLocSpecificKpis#894972]
(59) Scan ExistingRDD [codegen id : 8]
Output [6]: [shardId#894982, worklistShardItemId#894983L, qty#894984, demandChannel#894985, demandStream#894986, kpis#894987]
Arguments: [shardId#894982, worklistShardItemId#894983L, qty#894984, demandChannel#894985, demandStream#894986, kpis#894987], MapPartitionsRDD[42014] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(60) Filter [codegen id : 8]
Input [6]: [shardId#894982, worklistShardItemId#894983L, qty#894984, demandChannel#894985, demandStream#894986, kpis#894987]
Condition : ((((isnull(qty#894984) AND isnotnull(demandChannel#894985)) AND isnotnull(demandStream#894986)) AND (size(kpis#894987, true) > 0)) AND (isnotnull(shardId#894982) AND isnotnull(worklistShardItemId#894983L)))
(61) Project [codegen id : 8]
Output [5]: [shardId#894982, worklistShardItemId#894983L, demandChannel#894985, demandStream#894986, kpis#894987]
Input [6]: [shardId#894982, worklistShardItemId#894983L, qty#894984, demandChannel#894985, demandStream#894986, kpis#894987]
(62) ObjectHashAggregate
Input [5]: [shardId#894982, worklistShardItemId#894983L, demandChannel#894985, demandStream#894986, kpis#894987]
Keys [2]: [shardId#894982, worklistShardItemId#894983L]
Functions [1]: [partial_collect_list(struct(demandChannel, demandChannel#894985, demandStream, demandStream#894986, kpis, kpis#894987), 0, 0)]
Aggregate Attributes [1]: [buf#895162]
Results [3]: [shardId#894982, worklistShardItemId#894983L, buf#895163]
(63) Exchange
Input [3]: [shardId#894982, worklistShardItemId#894983L, buf#895163]
Arguments: hashpartitioning(shardId#894982, worklistShardItemId#894983L, 20), ENSURE_REQUIREMENTS, [plan_id=349519]
(64) ObjectHashAggregate
Input [3]: [shardId#894982, worklistShardItemId#894983L, buf#895163]
Keys [2]: [shardId#894982, worklistShardItemId#894983L]
Functions [1]: [collect_list(struct(demandChannel, demandChannel#894985, demandStream, demandStream#894986, kpis, kpis#894987), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(demandChannel, demandChannel#894985, demandStream, demandStream#894986, kpis, kpis#894987), 0, 0)#894981]
Results [3]: [shardId#894982, worklistShardItemId#894983L, collect_list(struct(demandChannel, demandChannel#894985, demandStream, demandStream#894986, kpis, kpis#894987), 0, 0)#894981 AS channelStreamSpecificKpis#894974]
(65) Sort [codegen id : 9]
Input [3]: [shardId#894982, worklistShardItemId#894983L, channelStreamSpecificKpis#894974]
Arguments: [shardId#894982 ASC NULLS FIRST, worklistShardItemId#894983L ASC NULLS FIRST], false, 0
(66) SortMergeJoin [codegen id : 10]
Left keys [2]: [shardId#893734, worklistShardItemId#894246L]
Right keys [2]: [shardId#894982, worklistShardItemId#894983L]
Join type: LeftOuter
Join condition: None
(67) Project [codegen id : 10]
Output [41]: [shardId#893734, worklistShardItemId#894246L, quantityAfterProdPlantOptimization#894247, qty#894248, orderProposalId#894447L, originalReplenishmentRunId#894489L, supplierGroup#894449, supplier#894450, supplyingPlant#894454, productGroup#894455, product#894456, plant#894451, subrange#894453, orderDateTime#894457, deliveryDateTime#894452, availabilityDateTime#894458, nextAvailabilityDateTime#894459, constraintValues#894480, constraintOperators#894479, constraintLabels#894478, logisticUnits#894474, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, splitIndicator#894466L, netPriceAmount#894483, netPriceCurrencyCode#894484, netPriceQuantity#894485, netPriceQuantityUom#894486, netPriceQuantityUomUuid#894487, sourceOfSupplyUuid#894461, minimumOrderQuantity#894477, orderProposalItemId#894448, orderProposalItemGroupId#894471, optimizationGroups#894490, measurements#894488, externalProductId#894472, externalPlantId#894473, previousOrderProposal#894467L, isFallbackOrderOnly#894464, prodLocSpecificKpis#894973, coalesce(channelStreamSpecificKpis#894974, []) AS channelStreamSpecificKpis#894988]
Input [43]: [shardId#893734, worklistShardItemId#894246L, quantityAfterProdPlantOptimization#894247, qty#894248, orderProposalId#894447L, originalReplenishmentRunId#894489L, supplierGroup#894449, supplier#894450, supplyingPlant#894454, productGroup#894455, product#894456, plant#894451, subrange#894453, orderDateTime#894457, deliveryDateTime#894452, availabilityDateTime#894458, nextAvailabilityDateTime#894459, constraintValues#894480, constraintOperators#894479, constraintLabels#894478, logisticUnits#894474, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, splitIndicator#894466L, netPriceAmount#894483, netPriceCurrencyCode#894484, netPriceQuantity#894485, netPriceQuantityUom#894486, netPriceQuantityUomUuid#894487, sourceOfSupplyUuid#894461, minimumOrderQuantity#894477, orderProposalItemId#894448, orderProposalItemGroupId#894471, optimizationGroups#894490, measurements#894488, externalProductId#894472, externalPlantId#894473, previousOrderProposal#894467L, isFallbackOrderOnly#894464, prodLocSpecificKpis#894973, shardId#894982, worklistShardItemId#894983L, channelStreamSpecificKpis#894974]
(68) Scan ExistingRDD [codegen id : 11]
Output [6]: [shardId#894995, worklistShardItemId#894996L, qty#894997, demandChannel#894998, demandStream#894999, kpis#895000]
Arguments: [shardId#894995, worklistShardItemId#894996L, qty#894997, demandChannel#894998, demandStream#894999, kpis#895000], MapPartitionsRDD[42014] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(69) Filter [codegen id : 11]
Input [6]: [shardId#894995, worklistShardItemId#894996L, qty#894997, demandChannel#894998, demandStream#894999, kpis#895000]
Condition : ((isnotnull(qty#894997) AND isnotnull(kpis#895000)) AND (isnotnull(shardId#894995) AND isnotnull(worklistShardItemId#894996L)))
(70) Project [codegen id : 11]
Output [4]: [shardId#894995, worklistShardItemId#894996L, qty#894997, kpis#895000]
Input [6]: [shardId#894995, worklistShardItemId#894996L, qty#894997, demandChannel#894998, demandStream#894999, kpis#895000]
(71) ObjectHashAggregate
Input [4]: [shardId#894995, worklistShardItemId#894996L, qty#894997, kpis#895000]
Keys [2]: [shardId#894995, worklistShardItemId#894996L]
Functions [1]: [partial_collect_list(struct(qty, qty#894997, kpis, kpis#895000), 0, 0)]
Aggregate Attributes [1]: [buf#895164]
Results [3]: [shardId#894995, worklistShardItemId#894996L, buf#895165]
(72) Exchange
Input [3]: [shardId#894995, worklistShardItemId#894996L, buf#895165]
Arguments: hashpartitioning(shardId#894995, worklistShardItemId#894996L, 20), ENSURE_REQUIREMENTS, [plan_id=349531]
(73) ObjectHashAggregate
Input [3]: [shardId#894995, worklistShardItemId#894996L, buf#895165]
Keys [2]: [shardId#894995, worklistShardItemId#894996L]
Functions [1]: [collect_list(struct(qty, qty#894997, kpis, kpis#895000), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(qty, qty#894997, kpis, kpis#895000), 0, 0)#894994]
Results [3]: [shardId#894995, worklistShardItemId#894996L, map_from_entries(collect_list(struct(qty, qty#894997, kpis, kpis#895000), 0, 0)#894994) AS quantityKpis#894989]
(74) Sort [codegen id : 12]
Input [3]: [shardId#894995, worklistShardItemId#894996L, quantityKpis#894989]
Arguments: [shardId#894995 ASC NULLS FIRST, worklistShardItemId#894996L ASC NULLS FIRST], false, 0
(75) SortMergeJoin [codegen id : 13]
Left keys [2]: [shardId#893734, worklistShardItemId#894246L]
Right keys [2]: [shardId#894995, worklistShardItemId#894996L]
Join type: LeftOuter
Join condition: None
(76) Project [codegen id : 13]
Output [42]: [shardId#893734, worklistShardItemId#894246L, quantityAfterProdPlantOptimization#894247, qty#894248, orderProposalId#894447L, originalReplenishmentRunId#894489L, supplierGroup#894449, supplier#894450, supplyingPlant#894454, productGroup#894455, product#894456, plant#894451, subrange#894453, orderDateTime#894457, deliveryDateTime#894452, availabilityDateTime#894458, nextAvailabilityDateTime#894459, constraintValues#894480, constraintOperators#894479, constraintLabels#894478, logisticUnits#894474, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, splitIndicator#894466L, netPriceAmount#894483, netPriceCurrencyCode#894484, netPriceQuantity#894485, netPriceQuantityUom#894486, netPriceQuantityUomUuid#894487, sourceOfSupplyUuid#894461, minimumOrderQuantity#894477, orderProposalItemId#894448, orderProposalItemGroupId#894471, optimizationGroups#894490, measurements#894488, externalProductId#894472, externalPlantId#894473, previousOrderProposal#894467L, isFallbackOrderOnly#894464, prodLocSpecificKpis#894973, channelStreamSpecificKpis#894988, coalesce(quantityKpis#894989, map(keys: [], values: [])) AS quantityKpis#895001]
Input [44]: [shardId#893734, worklistShardItemId#894246L, quantityAfterProdPlantOptimization#894247, qty#894248, orderProposalId#894447L, originalReplenishmentRunId#894489L, supplierGroup#894449, supplier#894450, supplyingPlant#894454, productGroup#894455, product#894456, plant#894451, subrange#894453, orderDateTime#894457, deliveryDateTime#894452, availabilityDateTime#894458, nextAvailabilityDateTime#894459, constraintValues#894480, constraintOperators#894479, constraintLabels#894478, logisticUnits#894474, orderQuantityBaseUom#894475, orderQuantityBaseUomUuid#894476, splitIndicator#894466L, netPriceAmount#894483, netPriceCurrencyCode#894484, netPriceQuantity#894485, netPriceQuantityUom#894486, netPriceQuantityUomUuid#894487, sourceOfSupplyUuid#894461, minimumOrderQuantity#894477, orderProposalItemId#894448, orderProposalItemGroupId#894471, optimizationGroups#894490, measurements#894488, externalProductId#894472, externalPlantId#894473, previousOrderProposal#894467L, isFallbackOrderOnly#894464, prodLocSpecificKpis#894973, channelStreamSpecificKpis#894988, shardId#894995, worklistShardItemId#894996L, quantityKpis#894989]
(77) Filter [codegen id : 6]
Input [3]: [isFallbackOrderOnly#898521, orderDateTime#898517, prodLocSpecificKpis#894973]
Condition : NOT (isFallbackOrderOnly#898521 <=> true)
(78) Project [codegen id : 6]
Output [2]: [orderDateTime#898517, prodLocSpecificKpis#894973]
Input [3]: [isFallbackOrderOnly#898521, orderDateTime#898517, prodLocSpecificKpis#894973]
(79) Scan parquet
Output [2]: [insightConfigurations#898298, shardId#898299]
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#898299), (shardId#898299 = 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#898298, shardId#898299]
(81) Filter [codegen id : 7]
Input [2]: [insightConfigurations#898298, shardId#898299]
Condition : (isnotnull(insightConfigurations#898298) AND isnotnull(insightConfigurations#898298[POTENTIAL_OOS_STOCK_PERIOD]))
(82) Project [codegen id : 7]
Output [1]: [insightConfigurations#898298[POTENTIAL_OOS_STOCK_PERIOD].settings AS _extract_settings#902505]
Input [2]: [insightConfigurations#898298, shardId#898299]
(83) Exchange
Input [1]: [_extract_settings#902505]
Arguments: RoundRobinPartitioning(20), REPARTITION_BY_NUM, [plan_id=350746]
(84) BroadcastExchange
Input [1]: [_extract_settings#902505]
Arguments: IdentityBroadcastMode, [plan_id=350747]
(85) BroadcastNestedLoopJoin
Join type: Cross
Join condition: ((CASE WHEN (isnull(element_at(filter(prodLocSpecificKpis#894973, lambdafunction((lambda x_2360#898303.label = OutOfStockProbability), lambda x_2360#898303, false)), 1, None, false).value) OR isnull(cast(element_at(filter(_extract_settings#902505, lambdafunction((lambda x_2361#898304.name = OOS_PROBABILITY_THRESHOLD), lambda x_2361#898304, false)), 1, None, false).value as double))) THEN false ELSE (element_at(filter(prodLocSpecificKpis#894973, lambdafunction((lambda x_2360#898305.label = OutOfStockProbability), lambda x_2360#898305, false)), 1, None, false).value >= cast(element_at(filter(_extract_settings#902505, lambdafunction((lambda x_2361#898306.name = OOS_PROBABILITY_THRESHOLD), lambda x_2361#898306, false)), 1, None, false).value as double)) END AND CASE WHEN isnull(element_at(filter(prodLocSpecificKpis#894973, lambdafunction((lambda x_2362#898307.label = InitialStockQty), lambda x_2362#898307, false)), 1, None, false).value) THEN false ELSE (element_at(filter(prodLocSpecificKpis#894973, lambdafunction((lambda x_2362#898309.label = InitialStockQty), lambda x_2362#898309, false)), 1, None, false).value > CASE WHEN cast(element_at(filter(_extract_settings#902505, lambdafunction((lambda x_2363#898310.name = CURRENT_STOCK_ABOVE_ZERO), lambda x_2363#898310, false)), 1, None, false).value as boolean) THEN 0.0 ELSE -Infinity END) END) AND CASE WHEN (CASE WHEN isnull(orderDateTime#898517) THEN true ELSE isnull((cast((unix_timestamp(orderDateTime#898517, yyyy-MM-dd HH:mm:ss, Some(UTC), false) - 1786361630) as double) / 3600.0)) END OR isnull(cast(element_at(filter(_extract_settings#902505, lambdafunction((lambda x_2364#898311.name = OFFSET_CURRENT_ORDER_DATE), lambda x_2364#898311, false)), 1, None, false).value as double))) THEN false ELSE (CASE WHEN isnull(orderDateTime#898517) THEN null ELSE (cast((unix_timestamp(orderDateTime#898517, yyyy-MM-dd HH:mm:ss, Some(UTC), false) - 1786361630) as double) / 3600.0) END >= cast(element_at(filter(_extract_settings#902505, lambdafunction((lambda x_2364#898312.name = OFFSET_CURRENT_ORDER_DATE), lambda x_2364#898312, false)), 1, None, false).value as double)) END)
(86) Project [codegen id : 8]
Output: []
Input [3]: [orderDateTime#898517, prodLocSpecificKpis#894973, _extract_settings#902505]
(87) LocalLimit [codegen id : 8]
Input: []
Arguments: 1
(88) InMemoryTableScan
Output [3]: [isFallbackOrderOnly#898384, qty#898359, quantityKpis#898475]
Arguments: [isFallbackOrderOnly#898384, qty#898359, quantityKpis#898475], [NOT (isFallbackOrderOnly#898384 <=> true)]
(89) InMemoryRelation
Arguments: [shardId#898349, worklistShardItemId#898357L, quantityAfterProdPlantOptimization#898358, qty#898359, orderProposalId#898362L, originalReplenishmentRunId#898365L, supplierGroup#898372, supplier#898373, supplyingPlant#898403, productGroup#898404, product#898375, plant#898376, subrange#898374, orderDateTime#898380, deliveryDateTime#898381, availabilityDateTime#898382, nextAvailabilityDateTime#898383, constraintValues#898397, constraintOperators#898395, constraintLabels#898394, logisticUnits#898399, orderQuantityBaseUom#898385, orderQuantityBaseUomUuid#898386, splitIndicator#898367L, netPriceAmount#898390, ... 17 more fields], StorageLevel(disk, memory, 2 replicas)
(90) Filter [codegen id : 9]
Input [3]: [isFallbackOrderOnly#898384, qty#898359, quantityKpis#898475]
Condition : NOT (isFallbackOrderOnly#898384 <=> true)
(91) Project [codegen id : 9]
Output [2]: [qty#898359, quantityKpis#898475]
Input [3]: [isFallbackOrderOnly#898384, qty#898359, quantityKpis#898475]
(92) Scan parquet
Output [2]: [insightConfigurations#898480, shardId#898481]
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#898481), (shardId#898481 = 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#898480, shardId#898481]
(94) Filter [codegen id : 10]
Input [2]: [insightConfigurations#898480, shardId#898481]
Condition : (isnotnull(insightConfigurations#898480) AND isnotnull(insightConfigurations#898480[POTENTIAL_OOS_DEMAND_PERIOD]))
(95) Project [codegen id : 10]
Output [1]: [insightConfigurations#898480[POTENTIAL_OOS_DEMAND_PERIOD].settings AS _extract_settings#902507]
Input [2]: [insightConfigurations#898480, shardId#898481]
(96) Exchange
Input [1]: [_extract_settings#902507]
Arguments: RoundRobinPartitioning(20), REPARTITION_BY_NUM, [plan_id=350762]
(97) BroadcastExchange
Input [1]: [_extract_settings#902507]
Arguments: IdentityBroadcastMode, [plan_id=350763]
(98) BroadcastNestedLoopJoin
Join type: Cross
Join condition: CASE WHEN (isnull(element_at(filter(element_at(quantityKpis#898475, qty#898359, None, false), lambdafunction((lambda x_2366#898329.label = OutOfStockProbability), lambda x_2366#898329, false)), 1, None, false).value) OR isnull(cast(element_at(filter(_extract_settings#902507, lambdafunction((lambda x_2367#898330.name = OOS_PROBABILITY_THRESHOLD), lambda x_2367#898330, false)), 1, None, false).value as double))) THEN false ELSE (element_at(filter(element_at(quantityKpis#898475, qty#898359, None, false), lambdafunction((lambda x_2366#898331.label = OutOfStockProbability), lambda x_2366#898331, false)), 1, None, false).value >= cast(element_at(filter(_extract_settings#902507, lambdafunction((lambda x_2367#898332.name = OOS_PROBABILITY_THRESHOLD), lambda x_2367#898332, false)), 1, None, false).value as double)) END
(99) Project [codegen id : 11]
Output: []
Input [3]: [qty#898359, quantityKpis#898475, _extract_settings#902507]
(100) LocalLimit [codegen id : 11]
Input: []
Arguments: 1
(101) Union
(102) CollectLimit
Input: []
Arguments: 1