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))\n105 ms (0 ms, 10 ms, 11 ms (stage 71678.0: task 180028))";
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#874876.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#870571), false, [insight#874876]"];
7 [id="node7" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [optimizationInsights#870571]"];
8 [id="node8" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [orderProposalId#870566L], [orderProposalId#871278L], 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>5 ms (0 ms, 0 ms, 2 ms (stage 71678.0: task 180021))<br>peak memory total (min, med, max (stageId: taskId))<br>5.0 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 71678.0: task 180024))<br>number of output rows: 4<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[orderProposalId#871278L], 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: 40 ms<br>number of output rows: 0<br>data size: 0.0 B" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(input[0, bigint, false]),false), [plan_id=344003]"];
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 71610.0: task 179880))";
tooltip="WholeStageCodegen (1)";
11 [id="node11" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((isnotnull(orderProposalId#870566L) AND (size(optimizationInsights#870571, true) > 0)) AND isnotnull(optimizationInsights#870571))"];
}
12 [id="node12" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 4" tooltip="InMemoryTableScan [orderProposalId#870566L, optimizationInsights#870571], [isnotnull(orderProposalId#870566L), (size(optimizationInsights#870571, true) > 0), isnotnull(optimizationInsights#870571)]"];
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#870565) AND (shardId#870565 = 0_1_10000002109))"];
}
15 [id="node15" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#870565, orderProposalId#870566L, items#870567, optimizationGroups#870568, isOptimal#870569, optimizationInsights#870571], [isnotnull(shardId#870565), (shardId#870565 = 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#870565) AND (shardId#870565 = 0_1_10000002109))"];
18 [id="node18" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#870565,orderProposalId#870566L,items#870567,optimizationGroups#870568,isOptimal#870569,lastModified#870570,optimizationInsights#870571]"];
}
20 [id="node20" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 6<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 6<br>local bytes read total (min, med, max (stageId: taskId))<br>300.0 B (75.0 B, 75.0 B, 150.0 B (stage 71678.0: task 180022))<br>merged fetch fallback count: 0<br>local blocks read: 4<br>remote merged chunks fetched: 0<br>remote blocks read: 2<br>data size total (min, med, max (stageId: taskId))<br>96.0 B (16.0 B, 16.0 B, 16.0 B (stage 71673.0: task 179962))<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>2 ms (0 ms, 0 ms, 0 ms (stage 71673.0: task 179963))<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 71678.0: task 180021))<br>remote bytes read: 150.0 B<br>number of partitions: 20<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>450.0 B (75.0 B, 75.0 B, 75.0 B (stage 71673.0: task 179962))" tooltip="Exchange hashpartitioning(orderProposalId#871278L, 20), ENSURE_REQUIREMENTS, [plan_id=344025]"];
subgraph cluster21 {
isCluster="true";
id="cluster21";
label="WholeStageCodegen (4)\n \nduration: total (min, med, max (stageId: taskId))\n45 ms (0 ms, 3 ms, 6 ms (stage 71673.0: task 179963))";
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 71673.0: task 179969))<br>peak memory total (min, med, max (stageId: taskId))<br>5.0 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 71673.0: task 179969))<br>number of output rows: 6<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[orderProposalId#871278L], functions=[])"];
23 [id="node23" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [orderProposalId#871278L]"];
24 [id="node24" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 6" tooltip="BroadcastHashJoin [worklistShardItemId#871077L], [worklistShardItemId#871301L], Inner, BuildLeft, false"];
38 [id="node38" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [worklistShardItemId#871301L, orderProposalId#871278L]"];
}
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: 46 ms<br>number of output rows: 6<br>data size: 1024.1 KiB" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(input[0, bigint, true]),false), [plan_id=344011]"];
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 71611.0: task 179887))";
tooltip="WholeStageCodegen (2)";
27 [id="node27" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [item#871076L AS worklistShardItemId#871077L]"];
28 [id="node28" labelType="html" label="<b>Generate</b><br><br>number of output rows: 6" tooltip="Generate explode(_extract_worklistShardItemId#879511), false, [item#871076L]"];
29 [id="node29" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [items#874870.worklistShardItemId AS _extract_worklistShardItemId#879511]"];
30 [id="node30" labelType="html" label="<b>Filter</b><br><br>number of output rows: 4" tooltip="Filter (((size(items#874870.worklistShardItemId, true) > 0) AND isnotnull(items#874870.worklistShardItemId)) AND (shardId#874868 = 0_1_10000002109))"];
}
31 [id="node31" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 4" tooltip="InMemoryTableScan [items#874870, shardId#874868], [(size(items#874870.worklistShardItemId, true) > 0), isnotnull(items#874870.worklistShardItemId), (shardId#874868 = 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#870565) AND (shardId#870565 = 0_1_10000002109))"];
}
34 [id="node34" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#870565, orderProposalId#870566L, items#870567, optimizationGroups#870568, isOptimal#870569, optimizationInsights#870571], [isnotnull(shardId#870565), (shardId#870565 = 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#870565) AND (shardId#870565 = 0_1_10000002109))"];
37 [id="node37" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#870565,orderProposalId#870566L,items#870567,optimizationGroups#870568,isOptimal#870569,lastModified#870570,optimizationInsights#870571]"];
}
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, 84.0 B (stage 71673.0: task 179962))<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 71672.0: task 179956))<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 71672.0: task 179959))<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 71673.0: task 179962))<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 71672.0: task 179956))" tooltip="Exchange hashpartitioning(worklistShardItemId#871301L, 20), REPARTITION_BY_NUM, [plan_id=344018]"];
subgraph cluster40 {
isCluster="true";
id="cluster40";
label="WholeStageCodegen (3)\n \nduration: total (min, med, max (stageId: taskId))\n408 ms (99 ms, 105 ms, 105 ms (stage 71672.0: task 179958))";
tooltip="WholeStageCodegen (3)";
41 [id="node41" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [orderProposalId#871278L, worklistShardItemId#871301L]"];
42 [id="node42" labelType="html" label="<b>Filter</b><br><br>number of output rows: 6" tooltip="Filter ((isnotnull(worklistShardItemId#871301L) AND NOT (isFallbackOrderOnly#871295 <=> true)) AND isnotnull(orderProposalId#871278L))"];
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>404 ms (98 ms, 104 ms, 104 ms (stage 71672.0: task 179958))<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#871278L,isFallbackOrderOnly#871295,worklistShardItemId#871301L,shardId#871322,sequenceId#871300] Batched: true, DataFilters: [isnotnull(worklistShardItemId#871301L), NOT (isFallbackOrderOnly#871295 <=> true), isnotnull(ord..., Format: Parquet, Location: PreparedDeltaFileIndex(1 paths)[hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20...., PartitionFilters: [isnotnull(shardId#871322), isnotnull(sequenceId#871300), (shardId#871322 = 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))\n377 ms (0 ms, 1 ms, 75 ms (stage 71678.0: task 179985))";
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#871981, lambdafunction((lambda x_2293#875311.label = OutOfStockProbability), lambda x_2293#875311, false)), 1, None, false).value) OR isnull(cast(element_at(filter(_extract_settings#879513, lambdafunction((lambda x_2294#875312.name = OOS_PROBABILITY_THRESHOLD), lambda x_2294#875312, false)), 1, None, false).value as double))) THEN false ELSE (element_at(filter(prodLocSpecificKpis#871981, lambdafunction((lambda x_2293#875313.label = OutOfStockProbability), lambda x_2293#875313, false)), 1, None, false).value >= cast(element_at(filter(_extract_settings#879513, lambdafunction((lambda x_2294#875314.name = OOS_PROBABILITY_THRESHOLD), lambda x_2294#875314, false)), 1, None, false).value as double)) END AND CASE WHEN isnull(element_at(filter(prodLocSpecificKpis#871981, lambdafunction((lambda x_2295#875315.label = InitialStockQty), lambda x_2295#875315, false)), 1, None, false).value) THEN false ELSE (element_at(filter(prodLocSpecificKpis#871981, lambdafunction((lambda x_2295#875317.label = InitialStockQty), lambda x_2295#875317, false)), 1, None, false).value > CASE WHEN cast(element_at(filter(_extract_settings#879513, lambdafunction((lambda x_2296#875318.name = CURRENT_STOCK_ABOVE_ZERO), lambda x_2296#875318, false)), 1, None, false).value as boolean) THEN 0.0 ELSE -Infinity END) END) AND CASE WHEN (CASE WHEN isnull(orderDateTime#875525) THEN true ELSE isnull((cast((unix_timestamp(orderDateTime#875525, yyyy-MM-dd HH:mm:ss, Some(UTC), false) - 1786361563) as double) / 3600.0)) END OR isnull(cast(element_at(filter(_extract_settings#879513, lambdafunction((lambda x_2297#875319.name = OFFSET_CURRENT_ORDER_DATE), lambda x_2297#875319, false)), 1, None, false).value as double))) THEN false ELSE (CASE WHEN isnull(orderDateTime#875525) THEN null ELSE (cast((unix_timestamp(orderDateTime#875525, yyyy-MM-dd HH:mm:ss, Some(UTC), false) - 1786361563) as double) / 3600.0) END >= cast(element_at(filter(_extract_settings#879513, lambdafunction((lambda x_2297#875320.name = OFFSET_CURRENT_ORDER_DATE), lambda x_2297#875320, 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))\n765 ms (0 ms, 39 ms, 114 ms (stage 71678.0: task 179985))";
tooltip="WholeStageCodegen (6)";
50 [id="node50" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [orderDateTime#875525, prodLocSpecificKpis#871981]"];
51 [id="node51" labelType="html" label="<b>Filter</b><br><br>number of output rows: 6" tooltip="Filter NOT (isFallbackOrderOnly#875529 <=> true)"];
}
52 [id="node52" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 6" tooltip="InMemoryTableScan [isFallbackOrderOnly#875529, orderDateTime#875525, prodLocSpecificKpis#871981], [NOT (isFallbackOrderOnly#875529 <=> 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#870565, worklistShardItemId#871077L, quantityAfterProdPlantOptimization#871078, qty#871079, orderProposalId#871278L, originalReplenishmentRunId#871320L, supplierGroup#871280, supplier#871281, supplyingPlant#871285, productGroup#871286, product#871287, plant#871282, subrange#871284, orderDateTime#871288, deliveryDateTime#871283, availabilityDateTime#871289, nextAvailabilityDateTime#871290, constraintValues#871311, constraintOperators#871310, constraintLabels#871309, logisticUnits#871305, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, splitIndicator#871297L, netPriceAmount#871314, ... 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#870565, worklistShardItemId#871077L], [shardId#872003, worklistShardItemId#872004L], 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#870565, worklistShardItemId#871077L, quantityAfterProdPlantOptimization#871078, qty#871079, orderProposalId#871278L, originalReplenishmentRunId#871320L, supplierGroup#871280, supplier#871281, supplyingPlant#871285, productGroup#871286, product#871287, plant#871282, subrange#871284, orderDateTime#871288, deliveryDateTime#871283, availabilityDateTime#871289, nextAvailabilityDateTime#871290, constraintValues#871311, constraintOperators#871310, constraintLabels#871309, logisticUnits#871305, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, splitIndicator#871297L, netPriceAmount#871314, ... 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#870565, worklistShardItemId#871077L], [shardId#871990, worklistShardItemId#871991L], 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#870565, worklistShardItemId#871077L, quantityAfterProdPlantOptimization#871078, qty#871079, orderProposalId#871278L, originalReplenishmentRunId#871320L, supplierGroup#871280, supplier#871281, supplyingPlant#871285, productGroup#871286, product#871287, plant#871282, subrange#871284, orderDateTime#871288, deliveryDateTime#871283, availabilityDateTime#871289, nextAvailabilityDateTime#871290, constraintValues#871311, constraintOperators#871310, constraintLabels#871309, logisticUnits#871305, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, splitIndicator#871297L, netPriceAmount#871314, ... 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#870565, worklistShardItemId#871077L], [shardId#871974, worklistShardItemId#871975L], 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#870565 ASC NULLS FIRST, worklistShardItemId#871077L 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#870565, worklistShardItemId#871077L, 20), ENSURE_REQUIREMENTS, [plan_id=342800]"];
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#870565, worklistShardItemId#871077L, quantityAfterProdPlantOptimization#871078, qty#871079, orderProposalId#871278L, originalReplenishmentRunId#871320L, supplierGroup#871280, supplier#871281, supplyingPlant#871285, productGroup#871286, product#871287, plant#871282, subrange#871284, orderDateTime#871288, deliveryDateTime#871283, availabilityDateTime#871289, nextAvailabilityDateTime#871290, constraintValues#871311, constraintOperators#871310, constraintLabels#871309, logisticUnits#871305, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, splitIndicator#871297L, netPriceAmount#871314, ... 14 more fields]"];
67 [id="node67" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#871077L], [worklistShardItemId#871301L], LeftOuter, BuildRight, (shardId#870565 = 0_1_10000002109), false"];
68 [id="node68" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#870565, item#871076.worklistShardItemId AS worklistShardItemId#871077L, item#871076.quantityAfterProdPlantOptimization AS quantityAfterProdPlantOptimization#871078, item#871076.qty AS qty#871079]"];
69 [id="node69" labelType="html" label="<b>Generate</b><br><br>number of output rows: 0" tooltip="Generate explode(items#870567), [shardId#870565], false, [item#871076]"];
70 [id="node70" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((size(items#870567, true) > 0) AND isnotnull(items#870567))"];
}
71 [id="node71" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#870565, items#870567], [(size(items#870567, true) > 0), isnotnull(items#870567)]"];
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#870565) AND (shardId#870565 = 0_1_10000002109))"];
}
74 [id="node74" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#870565, orderProposalId#870566L, items#870567, optimizationGroups#870568, isOptimal#870569, optimizationInsights#870571], [isnotnull(shardId#870565), (shardId#870565 = 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#870565) AND (shardId#870565 = 0_1_10000002109))"];
77 [id="node77" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#870565,orderProposalId#870566L,items#870567,optimizationGroups#870568,isOptimal#870569,lastModified#870570,optimizationInsights#870571]"];
}
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=342795]"];
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#871301L, orderProposalId#871278L, orderProposalItemId#871279, orderProposalItemGroupId#871302, originalReplenishmentRunId#871320L, splitIndicator#871297L, previousOrderProposal#871298L, sourceOfSupplyUuid#871292, supplierGroup#871280, supplier#871281, subrange#871284, product#871287, plant#871282, orderDateTime#871288, deliveryDateTime#871283, availabilityDateTime#871289, nextAvailabilityDateTime#871290, isFallbackOrderOnly#871295, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, netPriceQuantity#871316, netPriceQuantityUom#871317, netPriceQuantityUomUuid#871318, netPriceAmount#871314, netPriceCurrencyCode#871315, ... 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#871301L, 20), REPARTITION_BY_NUM, [plan_id=342791]"];
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#871278L, orderProposalItemId#871279, supplierGroup#871280, supplier#871281, plant#871282, deliveryDateTime#871283, subrange#871284, supplyingPlant#871285, productGroup#871286, product#871287, orderDateTime#871288, availabilityDateTime#871289, nextAvailabilityDateTime#871290, sourceOfSupplyUuid#871292, isFallbackOrderOnly#871295, splitIndicator#871297L, previousOrderProposal#871298L, worklistShardItemId#871301L, orderProposalItemGroupId#871302, externalProductId#871303, externalPlantId#871304, logisticUnits#871305, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, minimumOrderQuantity#871308, ... 11 more fields]"];
84 [id="node84" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter isnotnull(worklistShardItemId#871301L)"];
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#871278L,orderProposalItemId#871279,supplierGroup#871280,supplier#871281,plant#871282,deliveryDateTime#871283,subrange#871284,supplyingPlant#871285,productGroup#871286,product#871287,orderDateTime#871288,availabilityDateTime#871289,nextAvailabilityDateTime#871290,sourceOfSupplyUuid#871292,isFallbackOrderOnly#871295,splitIndicator#871297L,previousOrderProposal#871298L,worklistShardItemId#871301L,orderProposalItemGroupId#871302,externalProductId#871303,externalPlantId#871304,logisticUnits#871305,orderQuantityBaseUom#871306,orderQuantityBaseUomUuid#871307,minimumOrderQuantity#871308,... 13 more fields] Batched: true, DataFilters: [isnotnull(worklistShardItemId#871301L)], Format: Parquet, Location: PreparedDeltaFileIndex(1 paths)[hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20...., PartitionFilters: [isnotnull(shardId#871322), isnotnull(sequenceId#871300), (shardId#871322 = 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#871974 ASC NULLS FIRST, worklistShardItemId#871975L 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#871974, worklistShardItemId#871975L, 20), ENSURE_REQUIREMENTS, [plan_id=342806]"];
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#871974, worklistShardItemId#871975L, coalesce(kpis#871979, []) AS prodLocSpecificKpis#871980]"];
92 [id="node92" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (((isnull(qty#871976) AND isnull(demandChannel#871977)) AND isnull(demandStream#871978)) AND (isnotnull(shardId#871974) AND isnotnull(worklistShardItemId#871975L)))"];
93 [id="node93" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#871974,worklistShardItemId#871975L,qty#871976,demandChannel#871977,demandStream#871978,kpis#871979]"];
}
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#871990 ASC NULLS FIRST, worklistShardItemId#871991L 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#871990, worklistShardItemId#871991L], functions=[collect_list(struct(demandChannel, demandChannel#871993, demandStream, demandStream#871994, kpis, kpis#871995), 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#871990, worklistShardItemId#871991L, 20), ENSURE_REQUIREMENTS, [plan_id=342817]"];
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#871990, worklistShardItemId#871991L], functions=[partial_collect_list(struct(demandChannel, demandChannel#871993, demandStream, demandStream#871994, kpis, kpis#871995), 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#871990, worklistShardItemId#871991L, demandChannel#871993, demandStream#871994, kpis#871995]"];
101 [id="node101" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((((isnull(qty#871992) AND isnotnull(demandChannel#871993)) AND isnotnull(demandStream#871994)) AND (size(kpis#871995, true) > 0)) AND (isnotnull(shardId#871990) AND isnotnull(worklistShardItemId#871991L)))"];
102 [id="node102" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#871990,worklistShardItemId#871991L,qty#871992,demandChannel#871993,demandStream#871994,kpis#871995]"];
}
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#872003 ASC NULLS FIRST, worklistShardItemId#872004L 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#872003, worklistShardItemId#872004L], functions=[collect_list(struct(qty, qty#872005, kpis, kpis#872008), 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#872003, worklistShardItemId#872004L, 20), ENSURE_REQUIREMENTS, [plan_id=342829]"];
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#872003, worklistShardItemId#872004L], functions=[partial_collect_list(struct(qty, qty#872005, kpis, kpis#872008), 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#872003, worklistShardItemId#872004L, qty#872005, kpis#872008]"];
110 [id="node110" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((isnotnull(qty#872005) AND isnotnull(kpis#872008)) AND (isnotnull(shardId#872003) AND isnotnull(worklistShardItemId#872004L)))"];
111 [id="node111" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#872003,worklistShardItemId#872004L,qty#872005,demandChannel#872006,demandStream#872007,kpis#872008]"];
}
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: 246 ms<br>number of output rows: 0<br>data size: 0.0 B" tooltip="BroadcastExchange IdentityBroadcastMode, [plan_id=344045]"];
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=344044]"];
subgraph cluster114 {
isCluster="true";
id="cluster114";
label="WholeStageCodegen (7)\n \nduration: 79 ms";
tooltip="WholeStageCodegen (7)";
115 [id="node115" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [insightConfigurations#875306[POTENTIAL_OOS_STOCK_PERIOD].settings AS _extract_settings#879513]"];
116 [id="node116" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(insightConfigurations#875306) AND isnotnull(insightConfigurations#875306[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: 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#875306,shardId#875307] Batched: true, DataFilters: [isnotnull(insightConfigurations#875306), isnotnull(insightConfigurations#875306[POTENTIAL_OOS_ST..., Format: Parquet, Location: PreparedDeltaFileIndex(1 paths)[hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20...., PartitionFilters: [isnotnull(shardId#875307), (shardId#875307 = 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))\n328 ms (0 ms, 1 ms, 66 ms (stage 71678.0: task 180005))";
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#875483, qty#875367, None, false), lambdafunction((lambda x_2299#875337.label = OutOfStockProbability), lambda x_2299#875337, false)), 1, None, false).value) OR isnull(cast(element_at(filter(_extract_settings#879515, lambdafunction((lambda x_2300#875338.name = OOS_PROBABILITY_THRESHOLD), lambda x_2300#875338, false)), 1, None, false).value as double))) THEN false ELSE (element_at(filter(element_at(quantityKpis#875483, qty#875367, None, false), lambdafunction((lambda x_2299#875339.label = OutOfStockProbability), lambda x_2299#875339, false)), 1, None, false).value >= cast(element_at(filter(_extract_settings#879515, lambdafunction((lambda x_2300#875340.name = OOS_PROBABILITY_THRESHOLD), lambda x_2300#875340, 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))\n771 ms (0 ms, 42 ms, 113 ms (stage 71678.0: task 180005))";
tooltip="WholeStageCodegen (9)";
124 [id="node124" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [qty#875367, quantityKpis#875483]"];
125 [id="node125" labelType="html" label="<b>Filter</b><br><br>number of output rows: 6" tooltip="Filter NOT (isFallbackOrderOnly#875392 <=> true)"];
}
126 [id="node126" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 6" tooltip="InMemoryTableScan [isFallbackOrderOnly#875392, qty#875367, quantityKpis#875483], [NOT (isFallbackOrderOnly#875392 <=> 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#870565, worklistShardItemId#871077L, quantityAfterProdPlantOptimization#871078, qty#871079, orderProposalId#871278L, originalReplenishmentRunId#871320L, supplierGroup#871280, supplier#871281, supplyingPlant#871285, productGroup#871286, product#871287, plant#871282, subrange#871284, orderDateTime#871288, deliveryDateTime#871283, availabilityDateTime#871289, nextAvailabilityDateTime#871290, constraintValues#871311, constraintOperators#871310, constraintLabels#871309, logisticUnits#871305, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, splitIndicator#871297L, netPriceAmount#871314, ... 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#870565, worklistShardItemId#871077L], [shardId#872003, worklistShardItemId#872004L], 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#870565, worklistShardItemId#871077L, quantityAfterProdPlantOptimization#871078, qty#871079, orderProposalId#871278L, originalReplenishmentRunId#871320L, supplierGroup#871280, supplier#871281, supplyingPlant#871285, productGroup#871286, product#871287, plant#871282, subrange#871284, orderDateTime#871288, deliveryDateTime#871283, availabilityDateTime#871289, nextAvailabilityDateTime#871290, constraintValues#871311, constraintOperators#871310, constraintLabels#871309, logisticUnits#871305, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, splitIndicator#871297L, netPriceAmount#871314, ... 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#870565, worklistShardItemId#871077L], [shardId#871990, worklistShardItemId#871991L], 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#870565, worklistShardItemId#871077L, quantityAfterProdPlantOptimization#871078, qty#871079, orderProposalId#871278L, originalReplenishmentRunId#871320L, supplierGroup#871280, supplier#871281, supplyingPlant#871285, productGroup#871286, product#871287, plant#871282, subrange#871284, orderDateTime#871288, deliveryDateTime#871283, availabilityDateTime#871289, nextAvailabilityDateTime#871290, constraintValues#871311, constraintOperators#871310, constraintLabels#871309, logisticUnits#871305, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, splitIndicator#871297L, netPriceAmount#871314, ... 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#870565, worklistShardItemId#871077L], [shardId#871974, worklistShardItemId#871975L], 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#870565 ASC NULLS FIRST, worklistShardItemId#871077L 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#870565, worklistShardItemId#871077L, 20), ENSURE_REQUIREMENTS, [plan_id=342800]"];
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#870565, worklistShardItemId#871077L, quantityAfterProdPlantOptimization#871078, qty#871079, orderProposalId#871278L, originalReplenishmentRunId#871320L, supplierGroup#871280, supplier#871281, supplyingPlant#871285, productGroup#871286, product#871287, plant#871282, subrange#871284, orderDateTime#871288, deliveryDateTime#871283, availabilityDateTime#871289, nextAvailabilityDateTime#871290, constraintValues#871311, constraintOperators#871310, constraintLabels#871309, logisticUnits#871305, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, splitIndicator#871297L, netPriceAmount#871314, ... 14 more fields]"];
141 [id="node141" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#871077L], [worklistShardItemId#871301L], LeftOuter, BuildRight, (shardId#870565 = 0_1_10000002109), false"];
142 [id="node142" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#870565, item#871076.worklistShardItemId AS worklistShardItemId#871077L, item#871076.quantityAfterProdPlantOptimization AS quantityAfterProdPlantOptimization#871078, item#871076.qty AS qty#871079]"];
143 [id="node143" labelType="html" label="<b>Generate</b><br><br>number of output rows: 0" tooltip="Generate explode(items#870567), [shardId#870565], false, [item#871076]"];
144 [id="node144" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((size(items#870567, true) > 0) AND isnotnull(items#870567))"];
}
145 [id="node145" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#870565, items#870567], [(size(items#870567, true) > 0), isnotnull(items#870567)]"];
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#870565) AND (shardId#870565 = 0_1_10000002109))"];
}
148 [id="node148" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#870565, orderProposalId#870566L, items#870567, optimizationGroups#870568, isOptimal#870569, optimizationInsights#870571], [isnotnull(shardId#870565), (shardId#870565 = 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#870565) AND (shardId#870565 = 0_1_10000002109))"];
151 [id="node151" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#870565,orderProposalId#870566L,items#870567,optimizationGroups#870568,isOptimal#870569,lastModified#870570,optimizationInsights#870571]"];
}
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=342795]"];
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#871301L, orderProposalId#871278L, orderProposalItemId#871279, orderProposalItemGroupId#871302, originalReplenishmentRunId#871320L, splitIndicator#871297L, previousOrderProposal#871298L, sourceOfSupplyUuid#871292, supplierGroup#871280, supplier#871281, subrange#871284, product#871287, plant#871282, orderDateTime#871288, deliveryDateTime#871283, availabilityDateTime#871289, nextAvailabilityDateTime#871290, isFallbackOrderOnly#871295, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, netPriceQuantity#871316, netPriceQuantityUom#871317, netPriceQuantityUomUuid#871318, netPriceAmount#871314, netPriceCurrencyCode#871315, ... 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#871301L, 20), REPARTITION_BY_NUM, [plan_id=342791]"];
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#871278L, orderProposalItemId#871279, supplierGroup#871280, supplier#871281, plant#871282, deliveryDateTime#871283, subrange#871284, supplyingPlant#871285, productGroup#871286, product#871287, orderDateTime#871288, availabilityDateTime#871289, nextAvailabilityDateTime#871290, sourceOfSupplyUuid#871292, isFallbackOrderOnly#871295, splitIndicator#871297L, previousOrderProposal#871298L, worklistShardItemId#871301L, orderProposalItemGroupId#871302, externalProductId#871303, externalPlantId#871304, logisticUnits#871305, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, minimumOrderQuantity#871308, ... 11 more fields]"];
158 [id="node158" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter isnotnull(worklistShardItemId#871301L)"];
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#871278L,orderProposalItemId#871279,supplierGroup#871280,supplier#871281,plant#871282,deliveryDateTime#871283,subrange#871284,supplyingPlant#871285,productGroup#871286,product#871287,orderDateTime#871288,availabilityDateTime#871289,nextAvailabilityDateTime#871290,sourceOfSupplyUuid#871292,isFallbackOrderOnly#871295,splitIndicator#871297L,previousOrderProposal#871298L,worklistShardItemId#871301L,orderProposalItemGroupId#871302,externalProductId#871303,externalPlantId#871304,logisticUnits#871305,orderQuantityBaseUom#871306,orderQuantityBaseUomUuid#871307,minimumOrderQuantity#871308,... 13 more fields] Batched: true, DataFilters: [isnotnull(worklistShardItemId#871301L)], Format: Parquet, Location: PreparedDeltaFileIndex(1 paths)[hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20...., PartitionFilters: [isnotnull(shardId#871322), isnotnull(sequenceId#871300), (shardId#871322 = 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#871974 ASC NULLS FIRST, worklistShardItemId#871975L 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#871974, worklistShardItemId#871975L, 20), ENSURE_REQUIREMENTS, [plan_id=342806]"];
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#871974, worklistShardItemId#871975L, coalesce(kpis#871979, []) AS prodLocSpecificKpis#871980]"];
166 [id="node166" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (((isnull(qty#871976) AND isnull(demandChannel#871977)) AND isnull(demandStream#871978)) AND (isnotnull(shardId#871974) AND isnotnull(worklistShardItemId#871975L)))"];
167 [id="node167" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#871974,worklistShardItemId#871975L,qty#871976,demandChannel#871977,demandStream#871978,kpis#871979]"];
}
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#871990 ASC NULLS FIRST, worklistShardItemId#871991L 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#871990, worklistShardItemId#871991L], functions=[collect_list(struct(demandChannel, demandChannel#871993, demandStream, demandStream#871994, kpis, kpis#871995), 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#871990, worklistShardItemId#871991L, 20), ENSURE_REQUIREMENTS, [plan_id=342817]"];
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#871990, worklistShardItemId#871991L], functions=[partial_collect_list(struct(demandChannel, demandChannel#871993, demandStream, demandStream#871994, kpis, kpis#871995), 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#871990, worklistShardItemId#871991L, demandChannel#871993, demandStream#871994, kpis#871995]"];
175 [id="node175" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((((isnull(qty#871992) AND isnotnull(demandChannel#871993)) AND isnotnull(demandStream#871994)) AND (size(kpis#871995, true) > 0)) AND (isnotnull(shardId#871990) AND isnotnull(worklistShardItemId#871991L)))"];
176 [id="node176" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#871990,worklistShardItemId#871991L,qty#871992,demandChannel#871993,demandStream#871994,kpis#871995]"];
}
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#872003 ASC NULLS FIRST, worklistShardItemId#872004L 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#872003, worklistShardItemId#872004L], functions=[collect_list(struct(qty, qty#872005, kpis, kpis#872008), 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#872003, worklistShardItemId#872004L, 20), ENSURE_REQUIREMENTS, [plan_id=342829]"];
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#872003, worklistShardItemId#872004L], functions=[partial_collect_list(struct(qty, qty#872005, kpis, kpis#872008), 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#872003, worklistShardItemId#872004L, qty#872005, kpis#872008]"];
184 [id="node184" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((isnotnull(qty#872005) AND isnotnull(kpis#872008)) AND (isnotnull(shardId#872003) AND isnotnull(worklistShardItemId#872004L)))"];
185 [id="node185" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#872003,worklistShardItemId#872004L,qty#872005,demandChannel#872006,demandStream#872007,kpis#872008]"];
}
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: 239 ms<br>number of output rows: 0<br>data size: 0.0 B" tooltip="BroadcastExchange IdentityBroadcastMode, [plan_id=344061]"];
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=344060]"];
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#875488[POTENTIAL_OOS_DEMAND_PERIOD].settings AS _extract_settings#879515]"];
190 [id="node190" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(insightConfigurations#875488) AND isnotnull(insightConfigurations#875488[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#875488,shardId#875489] Batched: true, DataFilters: [isnotnull(insightConfigurations#875488), isnotnull(insightConfigurations#875488[POTENTIAL_OOS_DE..., Format: Parquet, Location: PreparedDeltaFileIndex(1 paths)[hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20...., PartitionFilters: [isnotnull(shardId#875489), (shardId#875489 = 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#870566L, optimizationInsights#870571]
Arguments: [orderProposalId#870566L, optimizationInsights#870571], [isnotnull(orderProposalId#870566L), (size(optimizationInsights#870571, true) > 0), isnotnull(optimizationInsights#870571)]
(2) InMemoryRelation
Arguments: [shardId#870565, orderProposalId#870566L, items#870567, optimizationGroups#870568, isOptimal#870569, optimizationInsights#870571], StorageLevel(disk, memory, 2 replicas)
(3) InMemoryTableScan
Output [6]: [shardId#870565, orderProposalId#870566L, items#870567, optimizationGroups#870568, isOptimal#870569, optimizationInsights#870571]
Arguments: [shardId#870565, orderProposalId#870566L, items#870567, optimizationGroups#870568, isOptimal#870569, optimizationInsights#870571], [isnotnull(shardId#870565), (shardId#870565 = 0_1_10000002109)]
(4) InMemoryRelation
Arguments: [shardId#870565, orderProposalId#870566L, items#870567, optimizationGroups#870568, isOptimal#870569, lastModified#870570, optimizationInsights#870571], StorageLevel(disk, memory, 2 replicas)
(5) Scan ExistingRDD [codegen id : 1]
Output [7]: [shardId#870565, orderProposalId#870566L, items#870567, optimizationGroups#870568, isOptimal#870569, lastModified#870570, optimizationInsights#870571]
Arguments: [shardId#870565, orderProposalId#870566L, items#870567, optimizationGroups#870568, isOptimal#870569, lastModified#870570, optimizationInsights#870571], MapPartitionsRDD[40891] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(6) Filter [codegen id : 1]
Input [7]: [shardId#870565, orderProposalId#870566L, items#870567, optimizationGroups#870568, isOptimal#870569, lastModified#870570, optimizationInsights#870571]
Condition : (isnotnull(shardId#870565) AND (shardId#870565 = 0_1_10000002109))
(7) Filter [codegen id : 1]
Input [6]: [shardId#870565, orderProposalId#870566L, items#870567, optimizationGroups#870568, isOptimal#870569, optimizationInsights#870571]
Condition : (isnotnull(shardId#870565) AND (shardId#870565 = 0_1_10000002109))
(8) Filter [codegen id : 1]
Input [2]: [orderProposalId#870566L, optimizationInsights#870571]
Condition : ((isnotnull(orderProposalId#870566L) AND (size(optimizationInsights#870571, true) > 0)) AND isnotnull(optimizationInsights#870571))
(9) BroadcastExchange
Input [2]: [orderProposalId#870566L, optimizationInsights#870571]
Arguments: HashedRelationBroadcastMode(List(input[0, bigint, false]),false), [plan_id=344003]
(10) InMemoryTableScan
Output [2]: [items#874870, shardId#874868]
Arguments: [items#874870, shardId#874868], [(size(items#874870.worklistShardItemId, true) > 0), isnotnull(items#874870.worklistShardItemId), (shardId#874868 = 0_1_10000002109)]
(11) InMemoryRelation
Arguments: [shardId#874868, orderProposalId#874869L, items#874870, optimizationGroups#874871, isOptimal#874872, optimizationInsights#874874], StorageLevel(disk, memory, 2 replicas)
(12) Filter [codegen id : 2]
Input [2]: [items#874870, shardId#874868]
Condition : (((size(items#874870.worklistShardItemId, true) > 0) AND isnotnull(items#874870.worklistShardItemId)) AND (shardId#874868 = 0_1_10000002109))
(13) Project [codegen id : 2]
Output [1]: [items#874870.worklistShardItemId AS _extract_worklistShardItemId#879511]
Input [2]: [items#874870, shardId#874868]
(14) Generate [codegen id : 2]
Input [1]: [_extract_worklistShardItemId#879511]
Arguments: explode(_extract_worklistShardItemId#879511), false, [item#871076L]
(15) Project [codegen id : 2]
Output [1]: [item#871076L AS worklistShardItemId#871077L]
Input [1]: [item#871076L]
(16) BroadcastExchange
Input [1]: [worklistShardItemId#871077L]
Arguments: HashedRelationBroadcastMode(List(input[0, bigint, true]),false), [plan_id=344011]
(17) Scan parquet
Output [5]: [orderProposalId#871278L, isFallbackOrderOnly#871295, worklistShardItemId#871301L, shardId#871322, sequenceId#871300]
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#871322), isnotnull(sequenceId#871300), (shardId#871322 = 0_1_10000002109), (sequenceId#871300 = 1)]
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#871278L, isFallbackOrderOnly#871295, worklistShardItemId#871301L, shardId#871322, sequenceId#871300]
(19) Filter [codegen id : 3]
Input [5]: [orderProposalId#871278L, isFallbackOrderOnly#871295, worklistShardItemId#871301L, shardId#871322, sequenceId#871300]
Condition : ((isnotnull(worklistShardItemId#871301L) AND NOT (isFallbackOrderOnly#871295 <=> true)) AND isnotnull(orderProposalId#871278L))
(20) Project [codegen id : 3]
Output [2]: [orderProposalId#871278L, worklistShardItemId#871301L]
Input [5]: [orderProposalId#871278L, isFallbackOrderOnly#871295, worklistShardItemId#871301L, shardId#871322, sequenceId#871300]
(21) Exchange
Input [2]: [orderProposalId#871278L, worklistShardItemId#871301L]
Arguments: hashpartitioning(worklistShardItemId#871301L, 20), REPARTITION_BY_NUM, [plan_id=344018]
(22) Project
Output [2]: [worklistShardItemId#871301L, orderProposalId#871278L]
Input [2]: [orderProposalId#871278L, worklistShardItemId#871301L]
(23) BroadcastHashJoin [codegen id : 4]
Left keys [1]: [worklistShardItemId#871077L]
Right keys [1]: [worklistShardItemId#871301L]
Join type: Inner
Join condition: None
(24) Project [codegen id : 4]
Output [1]: [orderProposalId#871278L]
Input [3]: [worklistShardItemId#871077L, worklistShardItemId#871301L, orderProposalId#871278L]
(25) HashAggregate [codegen id : 4]
Input [1]: [orderProposalId#871278L]
Keys [1]: [orderProposalId#871278L]
Functions: []
Aggregate Attributes: []
Results [1]: [orderProposalId#871278L]
(26) Exchange
Input [1]: [orderProposalId#871278L]
Arguments: hashpartitioning(orderProposalId#871278L, 20), ENSURE_REQUIREMENTS, [plan_id=344025]
(27) HashAggregate
Input [1]: [orderProposalId#871278L]
Keys [1]: [orderProposalId#871278L]
Functions: []
Aggregate Attributes: []
Results [1]: [orderProposalId#871278L]
(28) BroadcastHashJoin [codegen id : 5]
Left keys [1]: [orderProposalId#870566L]
Right keys [1]: [orderProposalId#871278L]
Join type: Inner
Join condition: None
(29) Project [codegen id : 5]
Output [1]: [optimizationInsights#870571]
Input [3]: [orderProposalId#870566L, optimizationInsights#870571, orderProposalId#871278L]
(30) Generate [codegen id : 5]
Input [1]: [optimizationInsights#870571]
Arguments: explode(optimizationInsights#870571), false, [insight#874876]
(31) Filter [codegen id : 5]
Input [1]: [insight#874876]
Condition : NOT insight#874876.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#874876]
(33) LocalLimit [codegen id : 5]
Input: []
Arguments: 1
(34) InMemoryTableScan
Output [3]: [isFallbackOrderOnly#875529, orderDateTime#875525, prodLocSpecificKpis#871981]
Arguments: [isFallbackOrderOnly#875529, orderDateTime#875525, prodLocSpecificKpis#871981], [NOT (isFallbackOrderOnly#875529 <=> true)]
(35) InMemoryRelation
Arguments: [shardId#875494, worklistShardItemId#875502L, quantityAfterProdPlantOptimization#875503, qty#875504, orderProposalId#875507L, originalReplenishmentRunId#875510L, supplierGroup#875517, supplier#875518, supplyingPlant#875548, productGroup#875549, product#875520, plant#875521, subrange#875519, orderDateTime#875525, deliveryDateTime#875526, availabilityDateTime#875527, nextAvailabilityDateTime#875528, constraintValues#875542, constraintOperators#875540, constraintLabels#875539, logisticUnits#875544, orderQuantityBaseUom#875530, orderQuantityBaseUomUuid#875531, splitIndicator#875512L, netPriceAmount#875535, ... 17 more fields], StorageLevel(disk, memory, 2 replicas)
(36) InMemoryTableScan
Output [2]: [shardId#870565, items#870567]
Arguments: [shardId#870565, items#870567], [(size(items#870567, true) > 0), isnotnull(items#870567)]
(37) InMemoryRelation
Arguments: [shardId#870565, orderProposalId#870566L, items#870567, optimizationGroups#870568, isOptimal#870569, optimizationInsights#870571], StorageLevel(disk, memory, 2 replicas)
(38) Filter [codegen id : 3]
Input [2]: [shardId#870565, items#870567]
Condition : ((size(items#870567, true) > 0) AND isnotnull(items#870567))
(39) Generate [codegen id : 3]
Input [2]: [shardId#870565, items#870567]
Arguments: explode(items#870567), [shardId#870565], false, [item#871076]
(40) Project [codegen id : 3]
Output [4]: [shardId#870565, item#871076.worklistShardItemId AS worklistShardItemId#871077L, item#871076.quantityAfterProdPlantOptimization AS quantityAfterProdPlantOptimization#871078, item#871076.qty AS qty#871079]
Input [2]: [shardId#870565, item#871076]
(41) Scan parquet
Output [38]: [orderProposalId#871278L, orderProposalItemId#871279, supplierGroup#871280, supplier#871281, plant#871282, deliveryDateTime#871283, subrange#871284, supplyingPlant#871285, productGroup#871286, product#871287, orderDateTime#871288, availabilityDateTime#871289, nextAvailabilityDateTime#871290, sourceOfSupplyUuid#871292, isFallbackOrderOnly#871295, splitIndicator#871297L, previousOrderProposal#871298L, worklistShardItemId#871301L, orderProposalItemGroupId#871302, externalProductId#871303, externalPlantId#871304, logisticUnits#871305, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, minimumOrderQuantity#871308, constraintLabels#871309, constraintOperators#871310, constraintValues#871311, netPriceAmount#871314, netPriceCurrencyCode#871315, netPriceQuantity#871316, netPriceQuantityUom#871317, netPriceQuantityUomUuid#871318, measurements#871319, originalReplenishmentRunId#871320L, optimizationGroups#871321, shardId#871322, sequenceId#871300]
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#871322), isnotnull(sequenceId#871300), (shardId#871322 = 0_1_10000002109), (sequenceId#871300 = 1)]
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#871278L, orderProposalItemId#871279, supplierGroup#871280, supplier#871281, plant#871282, deliveryDateTime#871283, subrange#871284, supplyingPlant#871285, productGroup#871286, product#871287, orderDateTime#871288, availabilityDateTime#871289, nextAvailabilityDateTime#871290, sourceOfSupplyUuid#871292, isFallbackOrderOnly#871295, splitIndicator#871297L, previousOrderProposal#871298L, worklistShardItemId#871301L, orderProposalItemGroupId#871302, externalProductId#871303, externalPlantId#871304, logisticUnits#871305, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, minimumOrderQuantity#871308, constraintLabels#871309, constraintOperators#871310, constraintValues#871311, netPriceAmount#871314, netPriceCurrencyCode#871315, netPriceQuantity#871316, netPriceQuantityUom#871317, netPriceQuantityUomUuid#871318, measurements#871319, originalReplenishmentRunId#871320L, optimizationGroups#871321, shardId#871322, sequenceId#871300]
(43) Filter [codegen id : 1]
Input [38]: [orderProposalId#871278L, orderProposalItemId#871279, supplierGroup#871280, supplier#871281, plant#871282, deliveryDateTime#871283, subrange#871284, supplyingPlant#871285, productGroup#871286, product#871287, orderDateTime#871288, availabilityDateTime#871289, nextAvailabilityDateTime#871290, sourceOfSupplyUuid#871292, isFallbackOrderOnly#871295, splitIndicator#871297L, previousOrderProposal#871298L, worklistShardItemId#871301L, orderProposalItemGroupId#871302, externalProductId#871303, externalPlantId#871304, logisticUnits#871305, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, minimumOrderQuantity#871308, constraintLabels#871309, constraintOperators#871310, constraintValues#871311, netPriceAmount#871314, netPriceCurrencyCode#871315, netPriceQuantity#871316, netPriceQuantityUom#871317, netPriceQuantityUomUuid#871318, measurements#871319, originalReplenishmentRunId#871320L, optimizationGroups#871321, shardId#871322, sequenceId#871300]
Condition : isnotnull(worklistShardItemId#871301L)
(44) Project [codegen id : 1]
Output [36]: [orderProposalId#871278L, orderProposalItemId#871279, supplierGroup#871280, supplier#871281, plant#871282, deliveryDateTime#871283, subrange#871284, supplyingPlant#871285, productGroup#871286, product#871287, orderDateTime#871288, availabilityDateTime#871289, nextAvailabilityDateTime#871290, sourceOfSupplyUuid#871292, isFallbackOrderOnly#871295, splitIndicator#871297L, previousOrderProposal#871298L, worklistShardItemId#871301L, orderProposalItemGroupId#871302, externalProductId#871303, externalPlantId#871304, logisticUnits#871305, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, minimumOrderQuantity#871308, constraintLabels#871309, constraintOperators#871310, constraintValues#871311, netPriceAmount#871314, netPriceCurrencyCode#871315, netPriceQuantity#871316, netPriceQuantityUom#871317, netPriceQuantityUomUuid#871318, measurements#871319, originalReplenishmentRunId#871320L, optimizationGroups#871321]
Input [38]: [orderProposalId#871278L, orderProposalItemId#871279, supplierGroup#871280, supplier#871281, plant#871282, deliveryDateTime#871283, subrange#871284, supplyingPlant#871285, productGroup#871286, product#871287, orderDateTime#871288, availabilityDateTime#871289, nextAvailabilityDateTime#871290, sourceOfSupplyUuid#871292, isFallbackOrderOnly#871295, splitIndicator#871297L, previousOrderProposal#871298L, worklistShardItemId#871301L, orderProposalItemGroupId#871302, externalProductId#871303, externalPlantId#871304, logisticUnits#871305, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, minimumOrderQuantity#871308, constraintLabels#871309, constraintOperators#871310, constraintValues#871311, netPriceAmount#871314, netPriceCurrencyCode#871315, netPriceQuantity#871316, netPriceQuantityUom#871317, netPriceQuantityUomUuid#871318, measurements#871319, originalReplenishmentRunId#871320L, optimizationGroups#871321, shardId#871322, sequenceId#871300]
(45) Exchange
Input [36]: [orderProposalId#871278L, orderProposalItemId#871279, supplierGroup#871280, supplier#871281, plant#871282, deliveryDateTime#871283, subrange#871284, supplyingPlant#871285, productGroup#871286, product#871287, orderDateTime#871288, availabilityDateTime#871289, nextAvailabilityDateTime#871290, sourceOfSupplyUuid#871292, isFallbackOrderOnly#871295, splitIndicator#871297L, previousOrderProposal#871298L, worklistShardItemId#871301L, orderProposalItemGroupId#871302, externalProductId#871303, externalPlantId#871304, logisticUnits#871305, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, minimumOrderQuantity#871308, constraintLabels#871309, constraintOperators#871310, constraintValues#871311, netPriceAmount#871314, netPriceCurrencyCode#871315, netPriceQuantity#871316, netPriceQuantityUom#871317, netPriceQuantityUomUuid#871318, measurements#871319, originalReplenishmentRunId#871320L, optimizationGroups#871321]
Arguments: hashpartitioning(worklistShardItemId#871301L, 20), REPARTITION_BY_NUM, [plan_id=342791]
(46) Project [codegen id : 2]
Output [36]: [worklistShardItemId#871301L, orderProposalId#871278L, orderProposalItemId#871279, orderProposalItemGroupId#871302, originalReplenishmentRunId#871320L, splitIndicator#871297L, previousOrderProposal#871298L, sourceOfSupplyUuid#871292, supplierGroup#871280, supplier#871281, subrange#871284, product#871287, plant#871282, orderDateTime#871288, deliveryDateTime#871283, availabilityDateTime#871289, nextAvailabilityDateTime#871290, isFallbackOrderOnly#871295, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, netPriceQuantity#871316, netPriceQuantityUom#871317, netPriceQuantityUomUuid#871318, netPriceAmount#871314, netPriceCurrencyCode#871315, measurements#871319, minimumOrderQuantity#871308, constraintLabels#871309, constraintOperators#871310, constraintValues#871311, logisticUnits#871305, optimizationGroups#871321, externalProductId#871303, externalPlantId#871304, supplyingPlant#871285, productGroup#871286]
Input [36]: [orderProposalId#871278L, orderProposalItemId#871279, supplierGroup#871280, supplier#871281, plant#871282, deliveryDateTime#871283, subrange#871284, supplyingPlant#871285, productGroup#871286, product#871287, orderDateTime#871288, availabilityDateTime#871289, nextAvailabilityDateTime#871290, sourceOfSupplyUuid#871292, isFallbackOrderOnly#871295, splitIndicator#871297L, previousOrderProposal#871298L, worklistShardItemId#871301L, orderProposalItemGroupId#871302, externalProductId#871303, externalPlantId#871304, logisticUnits#871305, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, minimumOrderQuantity#871308, constraintLabels#871309, constraintOperators#871310, constraintValues#871311, netPriceAmount#871314, netPriceCurrencyCode#871315, netPriceQuantity#871316, netPriceQuantityUom#871317, netPriceQuantityUomUuid#871318, measurements#871319, originalReplenishmentRunId#871320L, optimizationGroups#871321]
(47) BroadcastExchange
Input [36]: [worklistShardItemId#871301L, orderProposalId#871278L, orderProposalItemId#871279, orderProposalItemGroupId#871302, originalReplenishmentRunId#871320L, splitIndicator#871297L, previousOrderProposal#871298L, sourceOfSupplyUuid#871292, supplierGroup#871280, supplier#871281, subrange#871284, product#871287, plant#871282, orderDateTime#871288, deliveryDateTime#871283, availabilityDateTime#871289, nextAvailabilityDateTime#871290, isFallbackOrderOnly#871295, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, netPriceQuantity#871316, netPriceQuantityUom#871317, netPriceQuantityUomUuid#871318, netPriceAmount#871314, netPriceCurrencyCode#871315, measurements#871319, minimumOrderQuantity#871308, constraintLabels#871309, constraintOperators#871310, constraintValues#871311, logisticUnits#871305, optimizationGroups#871321, externalProductId#871303, externalPlantId#871304, supplyingPlant#871285, productGroup#871286]
Arguments: HashedRelationBroadcastMode(List(input[0, bigint, true]),false), [plan_id=342795]
(48) BroadcastHashJoin [codegen id : 3]
Left keys [1]: [worklistShardItemId#871077L]
Right keys [1]: [worklistShardItemId#871301L]
Join type: LeftOuter
Join condition: (shardId#870565 = 0_1_10000002109)
(49) Project [codegen id : 3]
Output [39]: [shardId#870565, worklistShardItemId#871077L, quantityAfterProdPlantOptimization#871078, qty#871079, orderProposalId#871278L, originalReplenishmentRunId#871320L, supplierGroup#871280, supplier#871281, supplyingPlant#871285, productGroup#871286, product#871287, plant#871282, subrange#871284, orderDateTime#871288, deliveryDateTime#871283, availabilityDateTime#871289, nextAvailabilityDateTime#871290, constraintValues#871311, constraintOperators#871310, constraintLabels#871309, logisticUnits#871305, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, splitIndicator#871297L, netPriceAmount#871314, netPriceCurrencyCode#871315, netPriceQuantity#871316, netPriceQuantityUom#871317, netPriceQuantityUomUuid#871318, sourceOfSupplyUuid#871292, minimumOrderQuantity#871308, orderProposalItemId#871279, orderProposalItemGroupId#871302, optimizationGroups#871321, measurements#871319, externalProductId#871303, externalPlantId#871304, previousOrderProposal#871298L, isFallbackOrderOnly#871295]
Input [40]: [shardId#870565, worklistShardItemId#871077L, quantityAfterProdPlantOptimization#871078, qty#871079, worklistShardItemId#871301L, orderProposalId#871278L, orderProposalItemId#871279, orderProposalItemGroupId#871302, originalReplenishmentRunId#871320L, splitIndicator#871297L, previousOrderProposal#871298L, sourceOfSupplyUuid#871292, supplierGroup#871280, supplier#871281, subrange#871284, product#871287, plant#871282, orderDateTime#871288, deliveryDateTime#871283, availabilityDateTime#871289, nextAvailabilityDateTime#871290, isFallbackOrderOnly#871295, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, netPriceQuantity#871316, netPriceQuantityUom#871317, netPriceQuantityUomUuid#871318, netPriceAmount#871314, netPriceCurrencyCode#871315, measurements#871319, minimumOrderQuantity#871308, constraintLabels#871309, constraintOperators#871310, constraintValues#871311, logisticUnits#871305, optimizationGroups#871321, externalProductId#871303, externalPlantId#871304, supplyingPlant#871285, productGroup#871286]
(50) Exchange
Input [39]: [shardId#870565, worklistShardItemId#871077L, quantityAfterProdPlantOptimization#871078, qty#871079, orderProposalId#871278L, originalReplenishmentRunId#871320L, supplierGroup#871280, supplier#871281, supplyingPlant#871285, productGroup#871286, product#871287, plant#871282, subrange#871284, orderDateTime#871288, deliveryDateTime#871283, availabilityDateTime#871289, nextAvailabilityDateTime#871290, constraintValues#871311, constraintOperators#871310, constraintLabels#871309, logisticUnits#871305, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, splitIndicator#871297L, netPriceAmount#871314, netPriceCurrencyCode#871315, netPriceQuantity#871316, netPriceQuantityUom#871317, netPriceQuantityUomUuid#871318, sourceOfSupplyUuid#871292, minimumOrderQuantity#871308, orderProposalItemId#871279, orderProposalItemGroupId#871302, optimizationGroups#871321, measurements#871319, externalProductId#871303, externalPlantId#871304, previousOrderProposal#871298L, isFallbackOrderOnly#871295]
Arguments: hashpartitioning(shardId#870565, worklistShardItemId#871077L, 20), ENSURE_REQUIREMENTS, [plan_id=342800]
(51) Sort [codegen id : 4]
Input [39]: [shardId#870565, worklistShardItemId#871077L, quantityAfterProdPlantOptimization#871078, qty#871079, orderProposalId#871278L, originalReplenishmentRunId#871320L, supplierGroup#871280, supplier#871281, supplyingPlant#871285, productGroup#871286, product#871287, plant#871282, subrange#871284, orderDateTime#871288, deliveryDateTime#871283, availabilityDateTime#871289, nextAvailabilityDateTime#871290, constraintValues#871311, constraintOperators#871310, constraintLabels#871309, logisticUnits#871305, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, splitIndicator#871297L, netPriceAmount#871314, netPriceCurrencyCode#871315, netPriceQuantity#871316, netPriceQuantityUom#871317, netPriceQuantityUomUuid#871318, sourceOfSupplyUuid#871292, minimumOrderQuantity#871308, orderProposalItemId#871279, orderProposalItemGroupId#871302, optimizationGroups#871321, measurements#871319, externalProductId#871303, externalPlantId#871304, previousOrderProposal#871298L, isFallbackOrderOnly#871295]
Arguments: [shardId#870565 ASC NULLS FIRST, worklistShardItemId#871077L ASC NULLS FIRST], false, 0
(52) Scan ExistingRDD [codegen id : 5]
Output [6]: [shardId#871974, worklistShardItemId#871975L, qty#871976, demandChannel#871977, demandStream#871978, kpis#871979]
Arguments: [shardId#871974, worklistShardItemId#871975L, qty#871976, demandChannel#871977, demandStream#871978, kpis#871979], MapPartitionsRDD[40965] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(53) Filter [codegen id : 5]
Input [6]: [shardId#871974, worklistShardItemId#871975L, qty#871976, demandChannel#871977, demandStream#871978, kpis#871979]
Condition : (((isnull(qty#871976) AND isnull(demandChannel#871977)) AND isnull(demandStream#871978)) AND (isnotnull(shardId#871974) AND isnotnull(worklistShardItemId#871975L)))
(54) Project [codegen id : 5]
Output [3]: [shardId#871974, worklistShardItemId#871975L, coalesce(kpis#871979, []) AS prodLocSpecificKpis#871980]
Input [6]: [shardId#871974, worklistShardItemId#871975L, qty#871976, demandChannel#871977, demandStream#871978, kpis#871979]
(55) Exchange
Input [3]: [shardId#871974, worklistShardItemId#871975L, prodLocSpecificKpis#871980]
Arguments: hashpartitioning(shardId#871974, worklistShardItemId#871975L, 20), ENSURE_REQUIREMENTS, [plan_id=342806]
(56) Sort [codegen id : 6]
Input [3]: [shardId#871974, worklistShardItemId#871975L, prodLocSpecificKpis#871980]
Arguments: [shardId#871974 ASC NULLS FIRST, worklistShardItemId#871975L ASC NULLS FIRST], false, 0
(57) SortMergeJoin [codegen id : 7]
Left keys [2]: [shardId#870565, worklistShardItemId#871077L]
Right keys [2]: [shardId#871974, worklistShardItemId#871975L]
Join type: LeftOuter
Join condition: None
(58) Project [codegen id : 7]
Output [40]: [shardId#870565, worklistShardItemId#871077L, quantityAfterProdPlantOptimization#871078, qty#871079, orderProposalId#871278L, originalReplenishmentRunId#871320L, supplierGroup#871280, supplier#871281, supplyingPlant#871285, productGroup#871286, product#871287, plant#871282, subrange#871284, orderDateTime#871288, deliveryDateTime#871283, availabilityDateTime#871289, nextAvailabilityDateTime#871290, constraintValues#871311, constraintOperators#871310, constraintLabels#871309, logisticUnits#871305, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, splitIndicator#871297L, netPriceAmount#871314, netPriceCurrencyCode#871315, netPriceQuantity#871316, netPriceQuantityUom#871317, netPriceQuantityUomUuid#871318, sourceOfSupplyUuid#871292, minimumOrderQuantity#871308, orderProposalItemId#871279, orderProposalItemGroupId#871302, optimizationGroups#871321, measurements#871319, externalProductId#871303, externalPlantId#871304, previousOrderProposal#871298L, isFallbackOrderOnly#871295, coalesce(prodLocSpecificKpis#871980, []) AS prodLocSpecificKpis#871981]
Input [42]: [shardId#870565, worklistShardItemId#871077L, quantityAfterProdPlantOptimization#871078, qty#871079, orderProposalId#871278L, originalReplenishmentRunId#871320L, supplierGroup#871280, supplier#871281, supplyingPlant#871285, productGroup#871286, product#871287, plant#871282, subrange#871284, orderDateTime#871288, deliveryDateTime#871283, availabilityDateTime#871289, nextAvailabilityDateTime#871290, constraintValues#871311, constraintOperators#871310, constraintLabels#871309, logisticUnits#871305, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, splitIndicator#871297L, netPriceAmount#871314, netPriceCurrencyCode#871315, netPriceQuantity#871316, netPriceQuantityUom#871317, netPriceQuantityUomUuid#871318, sourceOfSupplyUuid#871292, minimumOrderQuantity#871308, orderProposalItemId#871279, orderProposalItemGroupId#871302, optimizationGroups#871321, measurements#871319, externalProductId#871303, externalPlantId#871304, previousOrderProposal#871298L, isFallbackOrderOnly#871295, shardId#871974, worklistShardItemId#871975L, prodLocSpecificKpis#871980]
(59) Scan ExistingRDD [codegen id : 8]
Output [6]: [shardId#871990, worklistShardItemId#871991L, qty#871992, demandChannel#871993, demandStream#871994, kpis#871995]
Arguments: [shardId#871990, worklistShardItemId#871991L, qty#871992, demandChannel#871993, demandStream#871994, kpis#871995], MapPartitionsRDD[40965] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(60) Filter [codegen id : 8]
Input [6]: [shardId#871990, worklistShardItemId#871991L, qty#871992, demandChannel#871993, demandStream#871994, kpis#871995]
Condition : ((((isnull(qty#871992) AND isnotnull(demandChannel#871993)) AND isnotnull(demandStream#871994)) AND (size(kpis#871995, true) > 0)) AND (isnotnull(shardId#871990) AND isnotnull(worklistShardItemId#871991L)))
(61) Project [codegen id : 8]
Output [5]: [shardId#871990, worklistShardItemId#871991L, demandChannel#871993, demandStream#871994, kpis#871995]
Input [6]: [shardId#871990, worklistShardItemId#871991L, qty#871992, demandChannel#871993, demandStream#871994, kpis#871995]
(62) ObjectHashAggregate
Input [5]: [shardId#871990, worklistShardItemId#871991L, demandChannel#871993, demandStream#871994, kpis#871995]
Keys [2]: [shardId#871990, worklistShardItemId#871991L]
Functions [1]: [partial_collect_list(struct(demandChannel, demandChannel#871993, demandStream, demandStream#871994, kpis, kpis#871995), 0, 0)]
Aggregate Attributes [1]: [buf#872170]
Results [3]: [shardId#871990, worklistShardItemId#871991L, buf#872171]
(63) Exchange
Input [3]: [shardId#871990, worklistShardItemId#871991L, buf#872171]
Arguments: hashpartitioning(shardId#871990, worklistShardItemId#871991L, 20), ENSURE_REQUIREMENTS, [plan_id=342817]
(64) ObjectHashAggregate
Input [3]: [shardId#871990, worklistShardItemId#871991L, buf#872171]
Keys [2]: [shardId#871990, worklistShardItemId#871991L]
Functions [1]: [collect_list(struct(demandChannel, demandChannel#871993, demandStream, demandStream#871994, kpis, kpis#871995), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(demandChannel, demandChannel#871993, demandStream, demandStream#871994, kpis, kpis#871995), 0, 0)#871989]
Results [3]: [shardId#871990, worklistShardItemId#871991L, collect_list(struct(demandChannel, demandChannel#871993, demandStream, demandStream#871994, kpis, kpis#871995), 0, 0)#871989 AS channelStreamSpecificKpis#871982]
(65) Sort [codegen id : 9]
Input [3]: [shardId#871990, worklistShardItemId#871991L, channelStreamSpecificKpis#871982]
Arguments: [shardId#871990 ASC NULLS FIRST, worklistShardItemId#871991L ASC NULLS FIRST], false, 0
(66) SortMergeJoin [codegen id : 10]
Left keys [2]: [shardId#870565, worklistShardItemId#871077L]
Right keys [2]: [shardId#871990, worklistShardItemId#871991L]
Join type: LeftOuter
Join condition: None
(67) Project [codegen id : 10]
Output [41]: [shardId#870565, worklistShardItemId#871077L, quantityAfterProdPlantOptimization#871078, qty#871079, orderProposalId#871278L, originalReplenishmentRunId#871320L, supplierGroup#871280, supplier#871281, supplyingPlant#871285, productGroup#871286, product#871287, plant#871282, subrange#871284, orderDateTime#871288, deliveryDateTime#871283, availabilityDateTime#871289, nextAvailabilityDateTime#871290, constraintValues#871311, constraintOperators#871310, constraintLabels#871309, logisticUnits#871305, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, splitIndicator#871297L, netPriceAmount#871314, netPriceCurrencyCode#871315, netPriceQuantity#871316, netPriceQuantityUom#871317, netPriceQuantityUomUuid#871318, sourceOfSupplyUuid#871292, minimumOrderQuantity#871308, orderProposalItemId#871279, orderProposalItemGroupId#871302, optimizationGroups#871321, measurements#871319, externalProductId#871303, externalPlantId#871304, previousOrderProposal#871298L, isFallbackOrderOnly#871295, prodLocSpecificKpis#871981, coalesce(channelStreamSpecificKpis#871982, []) AS channelStreamSpecificKpis#871996]
Input [43]: [shardId#870565, worklistShardItemId#871077L, quantityAfterProdPlantOptimization#871078, qty#871079, orderProposalId#871278L, originalReplenishmentRunId#871320L, supplierGroup#871280, supplier#871281, supplyingPlant#871285, productGroup#871286, product#871287, plant#871282, subrange#871284, orderDateTime#871288, deliveryDateTime#871283, availabilityDateTime#871289, nextAvailabilityDateTime#871290, constraintValues#871311, constraintOperators#871310, constraintLabels#871309, logisticUnits#871305, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, splitIndicator#871297L, netPriceAmount#871314, netPriceCurrencyCode#871315, netPriceQuantity#871316, netPriceQuantityUom#871317, netPriceQuantityUomUuid#871318, sourceOfSupplyUuid#871292, minimumOrderQuantity#871308, orderProposalItemId#871279, orderProposalItemGroupId#871302, optimizationGroups#871321, measurements#871319, externalProductId#871303, externalPlantId#871304, previousOrderProposal#871298L, isFallbackOrderOnly#871295, prodLocSpecificKpis#871981, shardId#871990, worklistShardItemId#871991L, channelStreamSpecificKpis#871982]
(68) Scan ExistingRDD [codegen id : 11]
Output [6]: [shardId#872003, worklistShardItemId#872004L, qty#872005, demandChannel#872006, demandStream#872007, kpis#872008]
Arguments: [shardId#872003, worklistShardItemId#872004L, qty#872005, demandChannel#872006, demandStream#872007, kpis#872008], MapPartitionsRDD[40965] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(69) Filter [codegen id : 11]
Input [6]: [shardId#872003, worklistShardItemId#872004L, qty#872005, demandChannel#872006, demandStream#872007, kpis#872008]
Condition : ((isnotnull(qty#872005) AND isnotnull(kpis#872008)) AND (isnotnull(shardId#872003) AND isnotnull(worklistShardItemId#872004L)))
(70) Project [codegen id : 11]
Output [4]: [shardId#872003, worklistShardItemId#872004L, qty#872005, kpis#872008]
Input [6]: [shardId#872003, worklistShardItemId#872004L, qty#872005, demandChannel#872006, demandStream#872007, kpis#872008]
(71) ObjectHashAggregate
Input [4]: [shardId#872003, worklistShardItemId#872004L, qty#872005, kpis#872008]
Keys [2]: [shardId#872003, worklistShardItemId#872004L]
Functions [1]: [partial_collect_list(struct(qty, qty#872005, kpis, kpis#872008), 0, 0)]
Aggregate Attributes [1]: [buf#872172]
Results [3]: [shardId#872003, worklistShardItemId#872004L, buf#872173]
(72) Exchange
Input [3]: [shardId#872003, worklistShardItemId#872004L, buf#872173]
Arguments: hashpartitioning(shardId#872003, worklistShardItemId#872004L, 20), ENSURE_REQUIREMENTS, [plan_id=342829]
(73) ObjectHashAggregate
Input [3]: [shardId#872003, worklistShardItemId#872004L, buf#872173]
Keys [2]: [shardId#872003, worklistShardItemId#872004L]
Functions [1]: [collect_list(struct(qty, qty#872005, kpis, kpis#872008), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(qty, qty#872005, kpis, kpis#872008), 0, 0)#872002]
Results [3]: [shardId#872003, worklistShardItemId#872004L, map_from_entries(collect_list(struct(qty, qty#872005, kpis, kpis#872008), 0, 0)#872002) AS quantityKpis#871997]
(74) Sort [codegen id : 12]
Input [3]: [shardId#872003, worklistShardItemId#872004L, quantityKpis#871997]
Arguments: [shardId#872003 ASC NULLS FIRST, worklistShardItemId#872004L ASC NULLS FIRST], false, 0
(75) SortMergeJoin [codegen id : 13]
Left keys [2]: [shardId#870565, worklistShardItemId#871077L]
Right keys [2]: [shardId#872003, worklistShardItemId#872004L]
Join type: LeftOuter
Join condition: None
(76) Project [codegen id : 13]
Output [42]: [shardId#870565, worklistShardItemId#871077L, quantityAfterProdPlantOptimization#871078, qty#871079, orderProposalId#871278L, originalReplenishmentRunId#871320L, supplierGroup#871280, supplier#871281, supplyingPlant#871285, productGroup#871286, product#871287, plant#871282, subrange#871284, orderDateTime#871288, deliveryDateTime#871283, availabilityDateTime#871289, nextAvailabilityDateTime#871290, constraintValues#871311, constraintOperators#871310, constraintLabels#871309, logisticUnits#871305, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, splitIndicator#871297L, netPriceAmount#871314, netPriceCurrencyCode#871315, netPriceQuantity#871316, netPriceQuantityUom#871317, netPriceQuantityUomUuid#871318, sourceOfSupplyUuid#871292, minimumOrderQuantity#871308, orderProposalItemId#871279, orderProposalItemGroupId#871302, optimizationGroups#871321, measurements#871319, externalProductId#871303, externalPlantId#871304, previousOrderProposal#871298L, isFallbackOrderOnly#871295, prodLocSpecificKpis#871981, channelStreamSpecificKpis#871996, coalesce(quantityKpis#871997, map(keys: [], values: [])) AS quantityKpis#872009]
Input [44]: [shardId#870565, worklistShardItemId#871077L, quantityAfterProdPlantOptimization#871078, qty#871079, orderProposalId#871278L, originalReplenishmentRunId#871320L, supplierGroup#871280, supplier#871281, supplyingPlant#871285, productGroup#871286, product#871287, plant#871282, subrange#871284, orderDateTime#871288, deliveryDateTime#871283, availabilityDateTime#871289, nextAvailabilityDateTime#871290, constraintValues#871311, constraintOperators#871310, constraintLabels#871309, logisticUnits#871305, orderQuantityBaseUom#871306, orderQuantityBaseUomUuid#871307, splitIndicator#871297L, netPriceAmount#871314, netPriceCurrencyCode#871315, netPriceQuantity#871316, netPriceQuantityUom#871317, netPriceQuantityUomUuid#871318, sourceOfSupplyUuid#871292, minimumOrderQuantity#871308, orderProposalItemId#871279, orderProposalItemGroupId#871302, optimizationGroups#871321, measurements#871319, externalProductId#871303, externalPlantId#871304, previousOrderProposal#871298L, isFallbackOrderOnly#871295, prodLocSpecificKpis#871981, channelStreamSpecificKpis#871996, shardId#872003, worklistShardItemId#872004L, quantityKpis#871997]
(77) Filter [codegen id : 6]
Input [3]: [isFallbackOrderOnly#875529, orderDateTime#875525, prodLocSpecificKpis#871981]
Condition : NOT (isFallbackOrderOnly#875529 <=> true)
(78) Project [codegen id : 6]
Output [2]: [orderDateTime#875525, prodLocSpecificKpis#871981]
Input [3]: [isFallbackOrderOnly#875529, orderDateTime#875525, prodLocSpecificKpis#871981]
(79) Scan parquet
Output [2]: [insightConfigurations#875306, shardId#875307]
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#875307), (shardId#875307 = 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#875306, shardId#875307]
(81) Filter [codegen id : 7]
Input [2]: [insightConfigurations#875306, shardId#875307]
Condition : (isnotnull(insightConfigurations#875306) AND isnotnull(insightConfigurations#875306[POTENTIAL_OOS_STOCK_PERIOD]))
(82) Project [codegen id : 7]
Output [1]: [insightConfigurations#875306[POTENTIAL_OOS_STOCK_PERIOD].settings AS _extract_settings#879513]
Input [2]: [insightConfigurations#875306, shardId#875307]
(83) Exchange
Input [1]: [_extract_settings#879513]
Arguments: RoundRobinPartitioning(20), REPARTITION_BY_NUM, [plan_id=344044]
(84) BroadcastExchange
Input [1]: [_extract_settings#879513]
Arguments: IdentityBroadcastMode, [plan_id=344045]
(85) BroadcastNestedLoopJoin
Join type: Cross
Join condition: ((CASE WHEN (isnull(element_at(filter(prodLocSpecificKpis#871981, lambdafunction((lambda x_2293#875311.label = OutOfStockProbability), lambda x_2293#875311, false)), 1, None, false).value) OR isnull(cast(element_at(filter(_extract_settings#879513, lambdafunction((lambda x_2294#875312.name = OOS_PROBABILITY_THRESHOLD), lambda x_2294#875312, false)), 1, None, false).value as double))) THEN false ELSE (element_at(filter(prodLocSpecificKpis#871981, lambdafunction((lambda x_2293#875313.label = OutOfStockProbability), lambda x_2293#875313, false)), 1, None, false).value >= cast(element_at(filter(_extract_settings#879513, lambdafunction((lambda x_2294#875314.name = OOS_PROBABILITY_THRESHOLD), lambda x_2294#875314, false)), 1, None, false).value as double)) END AND CASE WHEN isnull(element_at(filter(prodLocSpecificKpis#871981, lambdafunction((lambda x_2295#875315.label = InitialStockQty), lambda x_2295#875315, false)), 1, None, false).value) THEN false ELSE (element_at(filter(prodLocSpecificKpis#871981, lambdafunction((lambda x_2295#875317.label = InitialStockQty), lambda x_2295#875317, false)), 1, None, false).value > CASE WHEN cast(element_at(filter(_extract_settings#879513, lambdafunction((lambda x_2296#875318.name = CURRENT_STOCK_ABOVE_ZERO), lambda x_2296#875318, false)), 1, None, false).value as boolean) THEN 0.0 ELSE -Infinity END) END) AND CASE WHEN (CASE WHEN isnull(orderDateTime#875525) THEN true ELSE isnull((cast((unix_timestamp(orderDateTime#875525, yyyy-MM-dd HH:mm:ss, Some(UTC), false) - 1786361563) as double) / 3600.0)) END OR isnull(cast(element_at(filter(_extract_settings#879513, lambdafunction((lambda x_2297#875319.name = OFFSET_CURRENT_ORDER_DATE), lambda x_2297#875319, false)), 1, None, false).value as double))) THEN false ELSE (CASE WHEN isnull(orderDateTime#875525) THEN null ELSE (cast((unix_timestamp(orderDateTime#875525, yyyy-MM-dd HH:mm:ss, Some(UTC), false) - 1786361563) as double) / 3600.0) END >= cast(element_at(filter(_extract_settings#879513, lambdafunction((lambda x_2297#875320.name = OFFSET_CURRENT_ORDER_DATE), lambda x_2297#875320, false)), 1, None, false).value as double)) END)
(86) Project [codegen id : 8]
Output: []
Input [3]: [orderDateTime#875525, prodLocSpecificKpis#871981, _extract_settings#879513]
(87) LocalLimit [codegen id : 8]
Input: []
Arguments: 1
(88) InMemoryTableScan
Output [3]: [isFallbackOrderOnly#875392, qty#875367, quantityKpis#875483]
Arguments: [isFallbackOrderOnly#875392, qty#875367, quantityKpis#875483], [NOT (isFallbackOrderOnly#875392 <=> true)]
(89) InMemoryRelation
Arguments: [shardId#875357, worklistShardItemId#875365L, quantityAfterProdPlantOptimization#875366, qty#875367, orderProposalId#875370L, originalReplenishmentRunId#875373L, supplierGroup#875380, supplier#875381, supplyingPlant#875411, productGroup#875412, product#875383, plant#875384, subrange#875382, orderDateTime#875388, deliveryDateTime#875389, availabilityDateTime#875390, nextAvailabilityDateTime#875391, constraintValues#875405, constraintOperators#875403, constraintLabels#875402, logisticUnits#875407, orderQuantityBaseUom#875393, orderQuantityBaseUomUuid#875394, splitIndicator#875375L, netPriceAmount#875398, ... 17 more fields], StorageLevel(disk, memory, 2 replicas)
(90) Filter [codegen id : 9]
Input [3]: [isFallbackOrderOnly#875392, qty#875367, quantityKpis#875483]
Condition : NOT (isFallbackOrderOnly#875392 <=> true)
(91) Project [codegen id : 9]
Output [2]: [qty#875367, quantityKpis#875483]
Input [3]: [isFallbackOrderOnly#875392, qty#875367, quantityKpis#875483]
(92) Scan parquet
Output [2]: [insightConfigurations#875488, shardId#875489]
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#875489), (shardId#875489 = 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#875488, shardId#875489]
(94) Filter [codegen id : 10]
Input [2]: [insightConfigurations#875488, shardId#875489]
Condition : (isnotnull(insightConfigurations#875488) AND isnotnull(insightConfigurations#875488[POTENTIAL_OOS_DEMAND_PERIOD]))
(95) Project [codegen id : 10]
Output [1]: [insightConfigurations#875488[POTENTIAL_OOS_DEMAND_PERIOD].settings AS _extract_settings#879515]
Input [2]: [insightConfigurations#875488, shardId#875489]
(96) Exchange
Input [1]: [_extract_settings#879515]
Arguments: RoundRobinPartitioning(20), REPARTITION_BY_NUM, [plan_id=344060]
(97) BroadcastExchange
Input [1]: [_extract_settings#879515]
Arguments: IdentityBroadcastMode, [plan_id=344061]
(98) BroadcastNestedLoopJoin
Join type: Cross
Join condition: CASE WHEN (isnull(element_at(filter(element_at(quantityKpis#875483, qty#875367, None, false), lambdafunction((lambda x_2299#875337.label = OutOfStockProbability), lambda x_2299#875337, false)), 1, None, false).value) OR isnull(cast(element_at(filter(_extract_settings#879515, lambdafunction((lambda x_2300#875338.name = OOS_PROBABILITY_THRESHOLD), lambda x_2300#875338, false)), 1, None, false).value as double))) THEN false ELSE (element_at(filter(element_at(quantityKpis#875483, qty#875367, None, false), lambdafunction((lambda x_2299#875339.label = OutOfStockProbability), lambda x_2299#875339, false)), 1, None, false).value >= cast(element_at(filter(_extract_settings#879515, lambdafunction((lambda x_2300#875340.name = OOS_PROBABILITY_THRESHOLD), lambda x_2300#875340, false)), 1, None, false).value as double)) END
(99) Project [codegen id : 11]
Output: []
Input [3]: [qty#875367, quantityKpis#875483, _extract_settings#879515]
(100) LocalLimit [codegen id : 11]
Input: []
Arguments: 1
(101) Union
(102) CollectLimit
Input: []
Arguments: 1