== Physical Plan ==
CollectLimit (108)
+- InMemoryTableScan (1)
+- InMemoryRelation (2)
+- Project (107)
+- Exchange (106)
+- InMemoryTableScan (3)
+- InMemoryRelation (4)
+- ObjectHashAggregate (105)
+- Exchange (104)
+- ObjectHashAggregate (103)
+- Project (102)
+- InMemoryTableScan (5)
+- InMemoryRelation (6)
+- Project (101)
+- SortMergeJoin LeftOuter (100)
:- Sort (71)
: +- Exchange (70)
: +- Project (69)
: +- Project (68)
: +- ObjectHashAggregate (67)
: +- Exchange (66)
: +- ObjectHashAggregate (65)
: +- ObjectHashAggregate (64)
: +- Exchange (63)
: +- ObjectHashAggregate (62)
: +- Project (61)
: +- Project (60)
: +- Project (59)
: +- * Project (58)
: +- * Filter (57)
: +- InMemoryTableScan (7)
: +- InMemoryRelation (8)
: +- * Project (56)
: +- * SortMergeJoin LeftOuter (55)
: :- * Project (47)
: : +- * SortMergeJoin LeftOuter (46)
: : :- * Project (38)
: : : +- * SortMergeJoin LeftOuter (37)
: : : :- * Sort (31)
: : : : +- Exchange (30)
: : : : +- * Project (29)
: : : : +- * SortMergeJoin LeftOuter (28)
: : : : :- * Sort (20)
: : : : : +- Exchange (19)
: : : : : +- * Project (18)
: : : : : +- * Generate (17)
: : : : : +- * Filter (16)
: : : : : +- InMemoryTableScan (9)
: : : : : +- InMemoryRelation (10)
: : : : : +- * Filter (15)
: : : : : +- InMemoryTableScan (11)
: : : : : +- InMemoryRelation (12)
: : : : : +- * Filter (14)
: : : : : +- * Scan ExistingRDD (13)
: : : : +- * Sort (27)
: : : : +- * Project (26)
: : : : +- Exchange (25)
: : : : +- * Project (24)
: : : : +- * Filter (23)
: : : : +- * ColumnarToRow (22)
: : : : +- Scan parquet (21)
: : : +- * Sort (36)
: : : +- Exchange (35)
: : : +- * Project (34)
: : : +- * Filter (33)
: : : +- * Scan ExistingRDD (32)
: : +- * Sort (45)
: : +- ObjectHashAggregate (44)
: : +- Exchange (43)
: : +- ObjectHashAggregate (42)
: : +- * Project (41)
: : +- * Filter (40)
: : +- * Scan ExistingRDD (39)
: +- * Sort (54)
: +- ObjectHashAggregate (53)
: +- Exchange (52)
: +- ObjectHashAggregate (51)
: +- * Project (50)
: +- * Filter (49)
: +- * Scan ExistingRDD (48)
+- * Sort (99)
+- Exchange (98)
+- Project (97)
+- * SortMergeJoin Inner (96)
:- * Sort (76)
: +- Exchange (75)
: +- * Filter (74)
: +- InMemoryTableScan (72)
: +- InMemoryRelation (73)
: +- * Filter (15)
: +- InMemoryTableScan (11)
: +- InMemoryRelation (12)
: +- * Filter (14)
: +- * Scan ExistingRDD (13)
+- * Sort (95)
+- * HashAggregate (94)
+- Exchange (93)
+- * HashAggregate (92)
+- * Project (91)
+- * BroadcastHashJoin Inner BuildLeft (90)
:- BroadcastExchange (83)
: +- * Project (82)
: +- * Generate (81)
: +- * Project (80)
: +- * Filter (79)
: +- InMemoryTableScan (77)
: +- InMemoryRelation (78)
: +- * Filter (15)
: +- InMemoryTableScan (11)
: +- InMemoryRelation (12)
: +- * Filter (14)
: +- * Scan ExistingRDD (13)
+- * Project (89)
+- Exchange (88)
+- * Project (87)
+- * Filter (86)
+- * ColumnarToRow (85)
+- Scan parquet (84)
(1) InMemoryTableScan
Output: []
(2) InMemoryRelation
Arguments: [shardId#3538856, orderProposals#3555235], StorageLevel(disk, memory, 2 replicas)
(3) InMemoryTableScan
Output [3]: [shardId#3538856, resultSeparationId#3555231L, orderProposals#3555235]
Arguments: [shardId#3538856, resultSeparationId#3555231L, orderProposals#3555235]
(4) InMemoryRelation
Arguments: [shardId#3538856, resultSeparationId#3555231L, orderProposals#3555235], StorageLevel(disk, memory, 2 replicas)
(5) InMemoryTableScan
Output [2]: [orderProposal#3552242, shardId#3538856]
Arguments: [orderProposal#3552242, shardId#3538856]
(6) InMemoryRelation
Arguments: [shardId#3538856, orderProposal#3552242], StorageLevel(disk, memory, 2 replicas)
(7) InMemoryTableScan
Output [39]: [availabilityDateTime#3540446, channelStreamSpecificKpis#3551345, constraintLabels#3540458, constraintOperators#3540459, constraintValues#3540461, deliveryDateTime#3540445, isFallbackOrderOnly#3540448, logisticUnits#3540463, measurements#3540456, minimumOrderQuantity#3540457, netPriceAmount#3540454, netPriceCurrencyCode#3540455, netPriceQuantity#3540451, netPriceQuantityUom#3540452, netPriceQuantityUomUuid#3540453, nextAvailabilityDateTime#3540447, optimizationGroups#3540464, orderDateTime#3540444, orderProposalId#3540426L, orderProposalItemGroupId#3540428, orderProposalItemId#3540427, orderQuantityBaseUom#3540449, orderQuantityBaseUomUuid#3540450, originalReplenishmentRunId#3540429L, plant#3540440, previousOrderProposal#3540432L, prodLocSpecificKpis#3551330, product#3540439, productGroup#3540468, qty#3540270, quantityAfterProdPlantOptimization#3540269, quantityKpis#3551358, shardId#3538856, sourceOfSupplyUuid#3540435, splitIndicator#3540431L, subrange#3540438, supplier#3540437, supplierGroup#3540436, supplyingPlant#3540467]
Arguments: [availabilityDateTime#3540446, channelStreamSpecificKpis#3551345, constraintLabels#3540458, constraintOperators#3540459, constraintValues#3540461, deliveryDateTime#3540445, isFallbackOrderOnly#3540448, logisticUnits#3540463, measurements#3540456, minimumOrderQuantity#3540457, netPriceAmount#3540454, netPriceCurrencyCode#3540455, netPriceQuantity#3540451, netPriceQuantityUom#3540452, netPriceQuantityUomUuid#3540453, nextAvailabilityDateTime#3540447, optimizationGroups#3540464, orderDateTime#3540444, orderProposalId#3540426L, orderProposalItemGroupId#3540428, orderProposalItemId#3540427, orderQuantityBaseUom#3540449, orderQuantityBaseUomUuid#3540450, originalReplenishmentRunId#3540429L, plant#3540440, ... 14 more fields], [NOT (isFallbackOrderOnly#3540448 <=> true)]
(8) InMemoryRelation
Arguments: [shardId#3538856, worklistShardItemId#3540268L, quantityAfterProdPlantOptimization#3540269, qty#3540270, orderProposalId#3540426L, originalReplenishmentRunId#3540429L, supplierGroup#3540436, supplier#3540437, supplyingPlant#3540467, productGroup#3540468, product#3540439, plant#3540440, subrange#3540438, orderDateTime#3540444, deliveryDateTime#3540445, availabilityDateTime#3540446, nextAvailabilityDateTime#3540447, constraintValues#3540461, constraintOperators#3540459, constraintLabels#3540458, logisticUnits#3540463, orderQuantityBaseUom#3540449, orderQuantityBaseUomUuid#3540450, splitIndicator#3540431L, netPriceAmount#3540454, ... 17 more fields], StorageLevel(disk, memory, 2 replicas)
(9) InMemoryTableScan
Output [2]: [shardId#3538856, items#3538858]
Arguments: [shardId#3538856, items#3538858], [(size(items#3538858, true) > 0), isnotnull(items#3538858)]
(10) InMemoryRelation
Arguments: [shardId#3538856, orderProposalId#3538857L, items#3538858, optimizationGroups#3538859, isOptimal#3538860, optimizationInsights#3538862], StorageLevel(disk, memory, 2 replicas)
(11) InMemoryTableScan
Output [6]: [shardId#3538856, orderProposalId#3538857L, items#3538858, optimizationGroups#3538859, isOptimal#3538860, optimizationInsights#3538862]
Arguments: [shardId#3538856, orderProposalId#3538857L, items#3538858, optimizationGroups#3538859, isOptimal#3538860, optimizationInsights#3538862], [isnotnull(shardId#3538856), (shardId#3538856 = 0_2_10000000532)]
(12) InMemoryRelation
Arguments: [shardId#3538856, orderProposalId#3538857L, items#3538858, optimizationGroups#3538859, isOptimal#3538860, lastModified#3538861, optimizationInsights#3538862], StorageLevel(disk, memory, 2 replicas)
(13) Scan ExistingRDD [codegen id : 1]
Output [7]: [shardId#3538856, orderProposalId#3538857L, items#3538858, optimizationGroups#3538859, isOptimal#3538860, lastModified#3538861, optimizationInsights#3538862]
Arguments: [shardId#3538856, orderProposalId#3538857L, items#3538858, optimizationGroups#3538859, isOptimal#3538860, lastModified#3538861, optimizationInsights#3538862], MapPartitionsRDD[150396] at start at FileStorageAdapterImpl.java:596, ExistingRDD, UnknownPartitioning(0)
(14) Filter [codegen id : 1]
Input [7]: [shardId#3538856, orderProposalId#3538857L, items#3538858, optimizationGroups#3538859, isOptimal#3538860, lastModified#3538861, optimizationInsights#3538862]
Condition : (isnotnull(shardId#3538856) AND (shardId#3538856 = 0_2_10000000532))
(15) Filter [codegen id : 1]
Input [6]: [shardId#3538856, orderProposalId#3538857L, items#3538858, optimizationGroups#3538859, isOptimal#3538860, optimizationInsights#3538862]
Condition : (isnotnull(shardId#3538856) AND (shardId#3538856 = 0_2_10000000532))
(16) Filter [codegen id : 1]
Input [2]: [shardId#3538856, items#3538858]
Condition : ((size(items#3538858, true) > 0) AND isnotnull(items#3538858))
(17) Generate [codegen id : 1]
Input [2]: [shardId#3538856, items#3538858]
Arguments: explode(items#3538858), [shardId#3538856], false, [item#3540267]
(18) Project [codegen id : 1]
Output [4]: [shardId#3538856, item#3540267.worklistShardItemId AS worklistShardItemId#3540268L, item#3540267.quantityAfterProdPlantOptimization AS quantityAfterProdPlantOptimization#3540269, item#3540267.qty AS qty#3540270]
Input [2]: [shardId#3538856, item#3540267]
(19) Exchange
Input [4]: [shardId#3538856, worklistShardItemId#3540268L, quantityAfterProdPlantOptimization#3540269, qty#3540270]
Arguments: hashpartitioning(worklistShardItemId#3540268L, 30), ENSURE_REQUIREMENTS, [plan_id=1017404]
(20) Sort [codegen id : 2]
Input [4]: [shardId#3538856, worklistShardItemId#3540268L, quantityAfterProdPlantOptimization#3540269, qty#3540270]
Arguments: [worklistShardItemId#3540268L ASC NULLS FIRST], false, 0
(21) Scan parquet
Output [38]: [orderProposalId#3540469L, orderProposalItemId#3540470, supplierGroup#3540471, supplier#3540472, plant#3540473, deliveryDateTime#3540474, subrange#3540475, supplyingPlant#3540476, productGroup#3540477, product#3540478, orderDateTime#3540479, availabilityDateTime#3540480, nextAvailabilityDateTime#3540481, sourceOfSupplyUuid#3540483, isFallbackOrderOnly#3540486, splitIndicator#3540488L, previousOrderProposal#3540489L, worklistShardItemId#3540492L, orderProposalItemGroupId#3540493, externalProductId#3540494, externalPlantId#3540495, logisticUnits#3540496, orderQuantityBaseUom#3540497, orderQuantityBaseUomUuid#3540498, minimumOrderQuantity#3540499, constraintLabels#3540500, constraintOperators#3540501, constraintValues#3540502, netPriceAmount#3540505, netPriceCurrencyCode#3540506, netPriceQuantity#3540507, netPriceQuantityUom#3540508, netPriceQuantityUomUuid#3540509, measurements#3540510, originalReplenishmentRunId#3540511L, optimizationGroups#3540512, shardId#3540513, sequenceId#3540491]
Batched: true
Location: PreparedDeltaFileIndex [hdlfs://7da5304c-1f57-47fa-b75a-0f0b4349c280.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-qty-opt-service/internal/prod-plant-snapshot/10000000532]
PartitionFilters: [isnotnull(shardId#3540513), isnotnull(sequenceId#3540491), (shardId#3540513 = 0_2_10000000532), (sequenceId#3540491 = 6)]
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>>
(22) ColumnarToRow [codegen id : 3]
Input [38]: [orderProposalId#3540469L, orderProposalItemId#3540470, supplierGroup#3540471, supplier#3540472, plant#3540473, deliveryDateTime#3540474, subrange#3540475, supplyingPlant#3540476, productGroup#3540477, product#3540478, orderDateTime#3540479, availabilityDateTime#3540480, nextAvailabilityDateTime#3540481, sourceOfSupplyUuid#3540483, isFallbackOrderOnly#3540486, splitIndicator#3540488L, previousOrderProposal#3540489L, worklistShardItemId#3540492L, orderProposalItemGroupId#3540493, externalProductId#3540494, externalPlantId#3540495, logisticUnits#3540496, orderQuantityBaseUom#3540497, orderQuantityBaseUomUuid#3540498, minimumOrderQuantity#3540499, constraintLabels#3540500, constraintOperators#3540501, constraintValues#3540502, netPriceAmount#3540505, netPriceCurrencyCode#3540506, netPriceQuantity#3540507, netPriceQuantityUom#3540508, netPriceQuantityUomUuid#3540509, measurements#3540510, originalReplenishmentRunId#3540511L, optimizationGroups#3540512, shardId#3540513, sequenceId#3540491]
(23) Filter [codegen id : 3]
Input [38]: [orderProposalId#3540469L, orderProposalItemId#3540470, supplierGroup#3540471, supplier#3540472, plant#3540473, deliveryDateTime#3540474, subrange#3540475, supplyingPlant#3540476, productGroup#3540477, product#3540478, orderDateTime#3540479, availabilityDateTime#3540480, nextAvailabilityDateTime#3540481, sourceOfSupplyUuid#3540483, isFallbackOrderOnly#3540486, splitIndicator#3540488L, previousOrderProposal#3540489L, worklistShardItemId#3540492L, orderProposalItemGroupId#3540493, externalProductId#3540494, externalPlantId#3540495, logisticUnits#3540496, orderQuantityBaseUom#3540497, orderQuantityBaseUomUuid#3540498, minimumOrderQuantity#3540499, constraintLabels#3540500, constraintOperators#3540501, constraintValues#3540502, netPriceAmount#3540505, netPriceCurrencyCode#3540506, netPriceQuantity#3540507, netPriceQuantityUom#3540508, netPriceQuantityUomUuid#3540509, measurements#3540510, originalReplenishmentRunId#3540511L, optimizationGroups#3540512, shardId#3540513, sequenceId#3540491]
Condition : isnotnull(worklistShardItemId#3540492L)
(24) Project [codegen id : 3]
Output [36]: [orderProposalId#3540469L, orderProposalItemId#3540470, supplierGroup#3540471, supplier#3540472, plant#3540473, deliveryDateTime#3540474, subrange#3540475, supplyingPlant#3540476, productGroup#3540477, product#3540478, orderDateTime#3540479, availabilityDateTime#3540480, nextAvailabilityDateTime#3540481, sourceOfSupplyUuid#3540483, isFallbackOrderOnly#3540486, splitIndicator#3540488L, previousOrderProposal#3540489L, worklistShardItemId#3540492L, orderProposalItemGroupId#3540493, externalProductId#3540494, externalPlantId#3540495, logisticUnits#3540496, orderQuantityBaseUom#3540497, orderQuantityBaseUomUuid#3540498, minimumOrderQuantity#3540499, constraintLabels#3540500, constraintOperators#3540501, constraintValues#3540502, netPriceAmount#3540505, netPriceCurrencyCode#3540506, netPriceQuantity#3540507, netPriceQuantityUom#3540508, netPriceQuantityUomUuid#3540509, measurements#3540510, originalReplenishmentRunId#3540511L, optimizationGroups#3540512]
Input [38]: [orderProposalId#3540469L, orderProposalItemId#3540470, supplierGroup#3540471, supplier#3540472, plant#3540473, deliveryDateTime#3540474, subrange#3540475, supplyingPlant#3540476, productGroup#3540477, product#3540478, orderDateTime#3540479, availabilityDateTime#3540480, nextAvailabilityDateTime#3540481, sourceOfSupplyUuid#3540483, isFallbackOrderOnly#3540486, splitIndicator#3540488L, previousOrderProposal#3540489L, worklistShardItemId#3540492L, orderProposalItemGroupId#3540493, externalProductId#3540494, externalPlantId#3540495, logisticUnits#3540496, orderQuantityBaseUom#3540497, orderQuantityBaseUomUuid#3540498, minimumOrderQuantity#3540499, constraintLabels#3540500, constraintOperators#3540501, constraintValues#3540502, netPriceAmount#3540505, netPriceCurrencyCode#3540506, netPriceQuantity#3540507, netPriceQuantityUom#3540508, netPriceQuantityUomUuid#3540509, measurements#3540510, originalReplenishmentRunId#3540511L, optimizationGroups#3540512, shardId#3540513, sequenceId#3540491]
(25) Exchange
Input [36]: [orderProposalId#3540469L, orderProposalItemId#3540470, supplierGroup#3540471, supplier#3540472, plant#3540473, deliveryDateTime#3540474, subrange#3540475, supplyingPlant#3540476, productGroup#3540477, product#3540478, orderDateTime#3540479, availabilityDateTime#3540480, nextAvailabilityDateTime#3540481, sourceOfSupplyUuid#3540483, isFallbackOrderOnly#3540486, splitIndicator#3540488L, previousOrderProposal#3540489L, worklistShardItemId#3540492L, orderProposalItemGroupId#3540493, externalProductId#3540494, externalPlantId#3540495, logisticUnits#3540496, orderQuantityBaseUom#3540497, orderQuantityBaseUomUuid#3540498, minimumOrderQuantity#3540499, constraintLabels#3540500, constraintOperators#3540501, constraintValues#3540502, netPriceAmount#3540505, netPriceCurrencyCode#3540506, netPriceQuantity#3540507, netPriceQuantityUom#3540508, netPriceQuantityUomUuid#3540509, measurements#3540510, originalReplenishmentRunId#3540511L, optimizationGroups#3540512]
Arguments: hashpartitioning(worklistShardItemId#3540492L, 30), REPARTITION_BY_NUM, [plan_id=1017414]
(26) Project [codegen id : 4]
Output [36]: [worklistShardItemId#3540492L, orderProposalId#3540469L, orderProposalItemId#3540470, orderProposalItemGroupId#3540493, originalReplenishmentRunId#3540511L, splitIndicator#3540488L, previousOrderProposal#3540489L, sourceOfSupplyUuid#3540483, supplierGroup#3540471, supplier#3540472, subrange#3540475, product#3540478, plant#3540473, orderDateTime#3540479, deliveryDateTime#3540474, availabilityDateTime#3540480, nextAvailabilityDateTime#3540481, isFallbackOrderOnly#3540486, orderQuantityBaseUom#3540497, orderQuantityBaseUomUuid#3540498, netPriceQuantity#3540507, netPriceQuantityUom#3540508, netPriceQuantityUomUuid#3540509, netPriceAmount#3540505, netPriceCurrencyCode#3540506, measurements#3540510, minimumOrderQuantity#3540499, constraintLabels#3540500, constraintOperators#3540501, constraintValues#3540502, logisticUnits#3540496, optimizationGroups#3540512, externalProductId#3540494, externalPlantId#3540495, supplyingPlant#3540476, productGroup#3540477]
Input [36]: [orderProposalId#3540469L, orderProposalItemId#3540470, supplierGroup#3540471, supplier#3540472, plant#3540473, deliveryDateTime#3540474, subrange#3540475, supplyingPlant#3540476, productGroup#3540477, product#3540478, orderDateTime#3540479, availabilityDateTime#3540480, nextAvailabilityDateTime#3540481, sourceOfSupplyUuid#3540483, isFallbackOrderOnly#3540486, splitIndicator#3540488L, previousOrderProposal#3540489L, worklistShardItemId#3540492L, orderProposalItemGroupId#3540493, externalProductId#3540494, externalPlantId#3540495, logisticUnits#3540496, orderQuantityBaseUom#3540497, orderQuantityBaseUomUuid#3540498, minimumOrderQuantity#3540499, constraintLabels#3540500, constraintOperators#3540501, constraintValues#3540502, netPriceAmount#3540505, netPriceCurrencyCode#3540506, netPriceQuantity#3540507, netPriceQuantityUom#3540508, netPriceQuantityUomUuid#3540509, measurements#3540510, originalReplenishmentRunId#3540511L, optimizationGroups#3540512]
(27) Sort [codegen id : 4]
Input [36]: [worklistShardItemId#3540492L, orderProposalId#3540469L, orderProposalItemId#3540470, orderProposalItemGroupId#3540493, originalReplenishmentRunId#3540511L, splitIndicator#3540488L, previousOrderProposal#3540489L, sourceOfSupplyUuid#3540483, supplierGroup#3540471, supplier#3540472, subrange#3540475, product#3540478, plant#3540473, orderDateTime#3540479, deliveryDateTime#3540474, availabilityDateTime#3540480, nextAvailabilityDateTime#3540481, isFallbackOrderOnly#3540486, orderQuantityBaseUom#3540497, orderQuantityBaseUomUuid#3540498, netPriceQuantity#3540507, netPriceQuantityUom#3540508, netPriceQuantityUomUuid#3540509, netPriceAmount#3540505, netPriceCurrencyCode#3540506, measurements#3540510, minimumOrderQuantity#3540499, constraintLabels#3540500, constraintOperators#3540501, constraintValues#3540502, logisticUnits#3540496, optimizationGroups#3540512, externalProductId#3540494, externalPlantId#3540495, supplyingPlant#3540476, productGroup#3540477]
Arguments: [worklistShardItemId#3540492L ASC NULLS FIRST], false, 0
(28) SortMergeJoin [codegen id : 5]
Left keys [1]: [worklistShardItemId#3540268L]
Right keys [1]: [worklistShardItemId#3540492L]
Join type: LeftOuter
Join condition: (shardId#3538856 = 0_2_10000000532)
(29) Project [codegen id : 5]
Output [39]: [shardId#3538856, worklistShardItemId#3540268L, quantityAfterProdPlantOptimization#3540269, qty#3540270, orderProposalId#3540469L, originalReplenishmentRunId#3540511L, supplierGroup#3540471, supplier#3540472, supplyingPlant#3540476, productGroup#3540477, product#3540478, plant#3540473, subrange#3540475, orderDateTime#3540479, deliveryDateTime#3540474, availabilityDateTime#3540480, nextAvailabilityDateTime#3540481, constraintValues#3540502, constraintOperators#3540501, constraintLabels#3540500, logisticUnits#3540496, orderQuantityBaseUom#3540497, orderQuantityBaseUomUuid#3540498, splitIndicator#3540488L, netPriceAmount#3540505, netPriceCurrencyCode#3540506, netPriceQuantity#3540507, netPriceQuantityUom#3540508, netPriceQuantityUomUuid#3540509, sourceOfSupplyUuid#3540483, minimumOrderQuantity#3540499, orderProposalItemId#3540470, orderProposalItemGroupId#3540493, optimizationGroups#3540512, measurements#3540510, externalProductId#3540494, externalPlantId#3540495, previousOrderProposal#3540489L, isFallbackOrderOnly#3540486]
Input [40]: [shardId#3538856, worklistShardItemId#3540268L, quantityAfterProdPlantOptimization#3540269, qty#3540270, worklistShardItemId#3540492L, orderProposalId#3540469L, orderProposalItemId#3540470, orderProposalItemGroupId#3540493, originalReplenishmentRunId#3540511L, splitIndicator#3540488L, previousOrderProposal#3540489L, sourceOfSupplyUuid#3540483, supplierGroup#3540471, supplier#3540472, subrange#3540475, product#3540478, plant#3540473, orderDateTime#3540479, deliveryDateTime#3540474, availabilityDateTime#3540480, nextAvailabilityDateTime#3540481, isFallbackOrderOnly#3540486, orderQuantityBaseUom#3540497, orderQuantityBaseUomUuid#3540498, netPriceQuantity#3540507, netPriceQuantityUom#3540508, netPriceQuantityUomUuid#3540509, netPriceAmount#3540505, netPriceCurrencyCode#3540506, measurements#3540510, minimumOrderQuantity#3540499, constraintLabels#3540500, constraintOperators#3540501, constraintValues#3540502, logisticUnits#3540496, optimizationGroups#3540512, externalProductId#3540494, externalPlantId#3540495, supplyingPlant#3540476, productGroup#3540477]
(30) Exchange
Input [39]: [shardId#3538856, worklistShardItemId#3540268L, quantityAfterProdPlantOptimization#3540269, qty#3540270, orderProposalId#3540469L, originalReplenishmentRunId#3540511L, supplierGroup#3540471, supplier#3540472, supplyingPlant#3540476, productGroup#3540477, product#3540478, plant#3540473, subrange#3540475, orderDateTime#3540479, deliveryDateTime#3540474, availabilityDateTime#3540480, nextAvailabilityDateTime#3540481, constraintValues#3540502, constraintOperators#3540501, constraintLabels#3540500, logisticUnits#3540496, orderQuantityBaseUom#3540497, orderQuantityBaseUomUuid#3540498, splitIndicator#3540488L, netPriceAmount#3540505, netPriceCurrencyCode#3540506, netPriceQuantity#3540507, netPriceQuantityUom#3540508, netPriceQuantityUomUuid#3540509, sourceOfSupplyUuid#3540483, minimumOrderQuantity#3540499, orderProposalItemId#3540470, orderProposalItemGroupId#3540493, optimizationGroups#3540512, measurements#3540510, externalProductId#3540494, externalPlantId#3540495, previousOrderProposal#3540489L, isFallbackOrderOnly#3540486]
Arguments: hashpartitioning(shardId#3538856, worklistShardItemId#3540268L, 30), ENSURE_REQUIREMENTS, [plan_id=1017423]
(31) Sort [codegen id : 6]
Input [39]: [shardId#3538856, worklistShardItemId#3540268L, quantityAfterProdPlantOptimization#3540269, qty#3540270, orderProposalId#3540469L, originalReplenishmentRunId#3540511L, supplierGroup#3540471, supplier#3540472, supplyingPlant#3540476, productGroup#3540477, product#3540478, plant#3540473, subrange#3540475, orderDateTime#3540479, deliveryDateTime#3540474, availabilityDateTime#3540480, nextAvailabilityDateTime#3540481, constraintValues#3540502, constraintOperators#3540501, constraintLabels#3540500, logisticUnits#3540496, orderQuantityBaseUom#3540497, orderQuantityBaseUomUuid#3540498, splitIndicator#3540488L, netPriceAmount#3540505, netPriceCurrencyCode#3540506, netPriceQuantity#3540507, netPriceQuantityUom#3540508, netPriceQuantityUomUuid#3540509, sourceOfSupplyUuid#3540483, minimumOrderQuantity#3540499, orderProposalItemId#3540470, orderProposalItemGroupId#3540493, optimizationGroups#3540512, measurements#3540510, externalProductId#3540494, externalPlantId#3540495, previousOrderProposal#3540489L, isFallbackOrderOnly#3540486]
Arguments: [shardId#3538856 ASC NULLS FIRST, worklistShardItemId#3540268L ASC NULLS FIRST], false, 0
(32) Scan ExistingRDD [codegen id : 7]
Output [6]: [shardId#3551323, worklistShardItemId#3551324L, qty#3551325, demandChannel#3551326, demandStream#3551327, kpis#3551328]
Arguments: [shardId#3551323, worklistShardItemId#3551324L, qty#3551325, demandChannel#3551326, demandStream#3551327, kpis#3551328], MapPartitionsRDD[150870] at start at FileStorageAdapterImpl.java:596, ExistingRDD, UnknownPartitioning(0)
(33) Filter [codegen id : 7]
Input [6]: [shardId#3551323, worklistShardItemId#3551324L, qty#3551325, demandChannel#3551326, demandStream#3551327, kpis#3551328]
Condition : (((isnull(qty#3551325) AND isnull(demandChannel#3551326)) AND isnull(demandStream#3551327)) AND (isnotnull(shardId#3551323) AND isnotnull(worklistShardItemId#3551324L)))
(34) Project [codegen id : 7]
Output [3]: [shardId#3551323, worklistShardItemId#3551324L, coalesce(kpis#3551328, []) AS prodLocSpecificKpis#3551329]
Input [6]: [shardId#3551323, worklistShardItemId#3551324L, qty#3551325, demandChannel#3551326, demandStream#3551327, kpis#3551328]
(35) Exchange
Input [3]: [shardId#3551323, worklistShardItemId#3551324L, prodLocSpecificKpis#3551329]
Arguments: hashpartitioning(shardId#3551323, worklistShardItemId#3551324L, 30), ENSURE_REQUIREMENTS, [plan_id=1017429]
(36) Sort [codegen id : 8]
Input [3]: [shardId#3551323, worklistShardItemId#3551324L, prodLocSpecificKpis#3551329]
Arguments: [shardId#3551323 ASC NULLS FIRST, worklistShardItemId#3551324L ASC NULLS FIRST], false, 0
(37) SortMergeJoin [codegen id : 9]
Left keys [2]: [shardId#3538856, worklistShardItemId#3540268L]
Right keys [2]: [shardId#3551323, worklistShardItemId#3551324L]
Join type: LeftOuter
Join condition: None
(38) Project [codegen id : 9]
Output [40]: [shardId#3538856, worklistShardItemId#3540268L, quantityAfterProdPlantOptimization#3540269, qty#3540270, orderProposalId#3540469L, originalReplenishmentRunId#3540511L, supplierGroup#3540471, supplier#3540472, supplyingPlant#3540476, productGroup#3540477, product#3540478, plant#3540473, subrange#3540475, orderDateTime#3540479, deliveryDateTime#3540474, availabilityDateTime#3540480, nextAvailabilityDateTime#3540481, constraintValues#3540502, constraintOperators#3540501, constraintLabels#3540500, logisticUnits#3540496, orderQuantityBaseUom#3540497, orderQuantityBaseUomUuid#3540498, splitIndicator#3540488L, netPriceAmount#3540505, netPriceCurrencyCode#3540506, netPriceQuantity#3540507, netPriceQuantityUom#3540508, netPriceQuantityUomUuid#3540509, sourceOfSupplyUuid#3540483, minimumOrderQuantity#3540499, orderProposalItemId#3540470, orderProposalItemGroupId#3540493, optimizationGroups#3540512, measurements#3540510, externalProductId#3540494, externalPlantId#3540495, previousOrderProposal#3540489L, isFallbackOrderOnly#3540486, coalesce(prodLocSpecificKpis#3551329, []) AS prodLocSpecificKpis#3551330]
Input [42]: [shardId#3538856, worklistShardItemId#3540268L, quantityAfterProdPlantOptimization#3540269, qty#3540270, orderProposalId#3540469L, originalReplenishmentRunId#3540511L, supplierGroup#3540471, supplier#3540472, supplyingPlant#3540476, productGroup#3540477, product#3540478, plant#3540473, subrange#3540475, orderDateTime#3540479, deliveryDateTime#3540474, availabilityDateTime#3540480, nextAvailabilityDateTime#3540481, constraintValues#3540502, constraintOperators#3540501, constraintLabels#3540500, logisticUnits#3540496, orderQuantityBaseUom#3540497, orderQuantityBaseUomUuid#3540498, splitIndicator#3540488L, netPriceAmount#3540505, netPriceCurrencyCode#3540506, netPriceQuantity#3540507, netPriceQuantityUom#3540508, netPriceQuantityUomUuid#3540509, sourceOfSupplyUuid#3540483, minimumOrderQuantity#3540499, orderProposalItemId#3540470, orderProposalItemGroupId#3540493, optimizationGroups#3540512, measurements#3540510, externalProductId#3540494, externalPlantId#3540495, previousOrderProposal#3540489L, isFallbackOrderOnly#3540486, shardId#3551323, worklistShardItemId#3551324L, prodLocSpecificKpis#3551329]
(39) Scan ExistingRDD [codegen id : 10]
Output [6]: [shardId#3551339, worklistShardItemId#3551340L, qty#3551341, demandChannel#3551342, demandStream#3551343, kpis#3551344]
Arguments: [shardId#3551339, worklistShardItemId#3551340L, qty#3551341, demandChannel#3551342, demandStream#3551343, kpis#3551344], MapPartitionsRDD[150870] at start at FileStorageAdapterImpl.java:596, ExistingRDD, UnknownPartitioning(0)
(40) Filter [codegen id : 10]
Input [6]: [shardId#3551339, worklistShardItemId#3551340L, qty#3551341, demandChannel#3551342, demandStream#3551343, kpis#3551344]
Condition : ((((isnull(qty#3551341) AND isnotnull(demandChannel#3551342)) AND isnotnull(demandStream#3551343)) AND (size(kpis#3551344, true) > 0)) AND (isnotnull(shardId#3551339) AND isnotnull(worklistShardItemId#3551340L)))
(41) Project [codegen id : 10]
Output [5]: [shardId#3551339, worklistShardItemId#3551340L, demandChannel#3551342, demandStream#3551343, kpis#3551344]
Input [6]: [shardId#3551339, worklistShardItemId#3551340L, qty#3551341, demandChannel#3551342, demandStream#3551343, kpis#3551344]
(42) ObjectHashAggregate
Input [5]: [shardId#3551339, worklistShardItemId#3551340L, demandChannel#3551342, demandStream#3551343, kpis#3551344]
Keys [2]: [shardId#3551339, worklistShardItemId#3551340L]
Functions [1]: [partial_collect_list(struct(demandChannel, demandChannel#3551342, demandStream, demandStream#3551343, kpis, kpis#3551344), 0, 0)]
Aggregate Attributes [1]: [buf#3551519]
Results [3]: [shardId#3551339, worklistShardItemId#3551340L, buf#3551520]
(43) Exchange
Input [3]: [shardId#3551339, worklistShardItemId#3551340L, buf#3551520]
Arguments: hashpartitioning(shardId#3551339, worklistShardItemId#3551340L, 30), ENSURE_REQUIREMENTS, [plan_id=1017440]
(44) ObjectHashAggregate
Input [3]: [shardId#3551339, worklistShardItemId#3551340L, buf#3551520]
Keys [2]: [shardId#3551339, worklistShardItemId#3551340L]
Functions [1]: [collect_list(struct(demandChannel, demandChannel#3551342, demandStream, demandStream#3551343, kpis, kpis#3551344), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(demandChannel, demandChannel#3551342, demandStream, demandStream#3551343, kpis, kpis#3551344), 0, 0)#3551338]
Results [3]: [shardId#3551339, worklistShardItemId#3551340L, collect_list(struct(demandChannel, demandChannel#3551342, demandStream, demandStream#3551343, kpis, kpis#3551344), 0, 0)#3551338 AS channelStreamSpecificKpis#3551331]
(45) Sort [codegen id : 11]
Input [3]: [shardId#3551339, worklistShardItemId#3551340L, channelStreamSpecificKpis#3551331]
Arguments: [shardId#3551339 ASC NULLS FIRST, worklistShardItemId#3551340L ASC NULLS FIRST], false, 0
(46) SortMergeJoin [codegen id : 12]
Left keys [2]: [shardId#3538856, worklistShardItemId#3540268L]
Right keys [2]: [shardId#3551339, worklistShardItemId#3551340L]
Join type: LeftOuter
Join condition: None
(47) Project [codegen id : 12]
Output [41]: [shardId#3538856, worklistShardItemId#3540268L, quantityAfterProdPlantOptimization#3540269, qty#3540270, orderProposalId#3540469L, originalReplenishmentRunId#3540511L, supplierGroup#3540471, supplier#3540472, supplyingPlant#3540476, productGroup#3540477, product#3540478, plant#3540473, subrange#3540475, orderDateTime#3540479, deliveryDateTime#3540474, availabilityDateTime#3540480, nextAvailabilityDateTime#3540481, constraintValues#3540502, constraintOperators#3540501, constraintLabels#3540500, logisticUnits#3540496, orderQuantityBaseUom#3540497, orderQuantityBaseUomUuid#3540498, splitIndicator#3540488L, netPriceAmount#3540505, netPriceCurrencyCode#3540506, netPriceQuantity#3540507, netPriceQuantityUom#3540508, netPriceQuantityUomUuid#3540509, sourceOfSupplyUuid#3540483, minimumOrderQuantity#3540499, orderProposalItemId#3540470, orderProposalItemGroupId#3540493, optimizationGroups#3540512, measurements#3540510, externalProductId#3540494, externalPlantId#3540495, previousOrderProposal#3540489L, isFallbackOrderOnly#3540486, prodLocSpecificKpis#3551330, coalesce(channelStreamSpecificKpis#3551331, []) AS channelStreamSpecificKpis#3551345]
Input [43]: [shardId#3538856, worklistShardItemId#3540268L, quantityAfterProdPlantOptimization#3540269, qty#3540270, orderProposalId#3540469L, originalReplenishmentRunId#3540511L, supplierGroup#3540471, supplier#3540472, supplyingPlant#3540476, productGroup#3540477, product#3540478, plant#3540473, subrange#3540475, orderDateTime#3540479, deliveryDateTime#3540474, availabilityDateTime#3540480, nextAvailabilityDateTime#3540481, constraintValues#3540502, constraintOperators#3540501, constraintLabels#3540500, logisticUnits#3540496, orderQuantityBaseUom#3540497, orderQuantityBaseUomUuid#3540498, splitIndicator#3540488L, netPriceAmount#3540505, netPriceCurrencyCode#3540506, netPriceQuantity#3540507, netPriceQuantityUom#3540508, netPriceQuantityUomUuid#3540509, sourceOfSupplyUuid#3540483, minimumOrderQuantity#3540499, orderProposalItemId#3540470, orderProposalItemGroupId#3540493, optimizationGroups#3540512, measurements#3540510, externalProductId#3540494, externalPlantId#3540495, previousOrderProposal#3540489L, isFallbackOrderOnly#3540486, prodLocSpecificKpis#3551330, shardId#3551339, worklistShardItemId#3551340L, channelStreamSpecificKpis#3551331]
(48) Scan ExistingRDD [codegen id : 13]
Output [6]: [shardId#3551352, worklistShardItemId#3551353L, qty#3551354, demandChannel#3551355, demandStream#3551356, kpis#3551357]
Arguments: [shardId#3551352, worklistShardItemId#3551353L, qty#3551354, demandChannel#3551355, demandStream#3551356, kpis#3551357], MapPartitionsRDD[150870] at start at FileStorageAdapterImpl.java:596, ExistingRDD, UnknownPartitioning(0)
(49) Filter [codegen id : 13]
Input [6]: [shardId#3551352, worklistShardItemId#3551353L, qty#3551354, demandChannel#3551355, demandStream#3551356, kpis#3551357]
Condition : ((isnotnull(qty#3551354) AND isnotnull(kpis#3551357)) AND (isnotnull(shardId#3551352) AND isnotnull(worklistShardItemId#3551353L)))
(50) Project [codegen id : 13]
Output [4]: [shardId#3551352, worklistShardItemId#3551353L, qty#3551354, kpis#3551357]
Input [6]: [shardId#3551352, worklistShardItemId#3551353L, qty#3551354, demandChannel#3551355, demandStream#3551356, kpis#3551357]
(51) ObjectHashAggregate
Input [4]: [shardId#3551352, worklistShardItemId#3551353L, qty#3551354, kpis#3551357]
Keys [2]: [shardId#3551352, worklistShardItemId#3551353L]
Functions [1]: [partial_collect_list(struct(qty, qty#3551354, kpis, kpis#3551357), 0, 0)]
Aggregate Attributes [1]: [buf#3551521]
Results [3]: [shardId#3551352, worklistShardItemId#3551353L, buf#3551522]
(52) Exchange
Input [3]: [shardId#3551352, worklistShardItemId#3551353L, buf#3551522]
Arguments: hashpartitioning(shardId#3551352, worklistShardItemId#3551353L, 30), ENSURE_REQUIREMENTS, [plan_id=1017452]
(53) ObjectHashAggregate
Input [3]: [shardId#3551352, worklistShardItemId#3551353L, buf#3551522]
Keys [2]: [shardId#3551352, worklistShardItemId#3551353L]
Functions [1]: [collect_list(struct(qty, qty#3551354, kpis, kpis#3551357), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(qty, qty#3551354, kpis, kpis#3551357), 0, 0)#3551351]
Results [3]: [shardId#3551352, worklistShardItemId#3551353L, map_from_entries(collect_list(struct(qty, qty#3551354, kpis, kpis#3551357), 0, 0)#3551351) AS quantityKpis#3551346]
(54) Sort [codegen id : 14]
Input [3]: [shardId#3551352, worklistShardItemId#3551353L, quantityKpis#3551346]
Arguments: [shardId#3551352 ASC NULLS FIRST, worklistShardItemId#3551353L ASC NULLS FIRST], false, 0
(55) SortMergeJoin [codegen id : 15]
Left keys [2]: [shardId#3538856, worklistShardItemId#3540268L]
Right keys [2]: [shardId#3551352, worklistShardItemId#3551353L]
Join type: LeftOuter
Join condition: None
(56) Project [codegen id : 15]
Output [42]: [shardId#3538856, worklistShardItemId#3540268L, quantityAfterProdPlantOptimization#3540269, qty#3540270, orderProposalId#3540469L, originalReplenishmentRunId#3540511L, supplierGroup#3540471, supplier#3540472, supplyingPlant#3540476, productGroup#3540477, product#3540478, plant#3540473, subrange#3540475, orderDateTime#3540479, deliveryDateTime#3540474, availabilityDateTime#3540480, nextAvailabilityDateTime#3540481, constraintValues#3540502, constraintOperators#3540501, constraintLabels#3540500, logisticUnits#3540496, orderQuantityBaseUom#3540497, orderQuantityBaseUomUuid#3540498, splitIndicator#3540488L, netPriceAmount#3540505, netPriceCurrencyCode#3540506, netPriceQuantity#3540507, netPriceQuantityUom#3540508, netPriceQuantityUomUuid#3540509, sourceOfSupplyUuid#3540483, minimumOrderQuantity#3540499, orderProposalItemId#3540470, orderProposalItemGroupId#3540493, optimizationGroups#3540512, measurements#3540510, externalProductId#3540494, externalPlantId#3540495, previousOrderProposal#3540489L, isFallbackOrderOnly#3540486, prodLocSpecificKpis#3551330, channelStreamSpecificKpis#3551345, coalesce(quantityKpis#3551346, map(keys: [], values: [])) AS quantityKpis#3551358]
Input [44]: [shardId#3538856, worklistShardItemId#3540268L, quantityAfterProdPlantOptimization#3540269, qty#3540270, orderProposalId#3540469L, originalReplenishmentRunId#3540511L, supplierGroup#3540471, supplier#3540472, supplyingPlant#3540476, productGroup#3540477, product#3540478, plant#3540473, subrange#3540475, orderDateTime#3540479, deliveryDateTime#3540474, availabilityDateTime#3540480, nextAvailabilityDateTime#3540481, constraintValues#3540502, constraintOperators#3540501, constraintLabels#3540500, logisticUnits#3540496, orderQuantityBaseUom#3540497, orderQuantityBaseUomUuid#3540498, splitIndicator#3540488L, netPriceAmount#3540505, netPriceCurrencyCode#3540506, netPriceQuantity#3540507, netPriceQuantityUom#3540508, netPriceQuantityUomUuid#3540509, sourceOfSupplyUuid#3540483, minimumOrderQuantity#3540499, orderProposalItemId#3540470, orderProposalItemGroupId#3540493, optimizationGroups#3540512, measurements#3540510, externalProductId#3540494, externalPlantId#3540495, previousOrderProposal#3540489L, isFallbackOrderOnly#3540486, prodLocSpecificKpis#3551330, channelStreamSpecificKpis#3551345, shardId#3551352, worklistShardItemId#3551353L, quantityKpis#3551346]
(57) Filter [codegen id : 1]
Input [39]: [availabilityDateTime#3540446, channelStreamSpecificKpis#3551345, constraintLabels#3540458, constraintOperators#3540459, constraintValues#3540461, deliveryDateTime#3540445, isFallbackOrderOnly#3540448, logisticUnits#3540463, measurements#3540456, minimumOrderQuantity#3540457, netPriceAmount#3540454, netPriceCurrencyCode#3540455, netPriceQuantity#3540451, netPriceQuantityUom#3540452, netPriceQuantityUomUuid#3540453, nextAvailabilityDateTime#3540447, optimizationGroups#3540464, orderDateTime#3540444, orderProposalId#3540426L, orderProposalItemGroupId#3540428, orderProposalItemId#3540427, orderQuantityBaseUom#3540449, orderQuantityBaseUomUuid#3540450, originalReplenishmentRunId#3540429L, plant#3540440, previousOrderProposal#3540432L, prodLocSpecificKpis#3551330, product#3540439, productGroup#3540468, qty#3540270, quantityAfterProdPlantOptimization#3540269, quantityKpis#3551358, shardId#3538856, sourceOfSupplyUuid#3540435, splitIndicator#3540431L, subrange#3540438, supplier#3540437, supplierGroup#3540436, supplyingPlant#3540467]
Condition : NOT (isFallbackOrderOnly#3540448 <=> true)
(58) Project [codegen id : 1]
Output [36]: [shardId#3538856, quantityAfterProdPlantOptimization#3540269, qty#3540270, orderProposalId#3540426L, originalReplenishmentRunId#3540429L, supplierGroup#3540436, supplier#3540437, supplyingPlant#3540467, productGroup#3540468, product#3540439, plant#3540440, subrange#3540438, orderDateTime#3540444, deliveryDateTime#3540445, availabilityDateTime#3540446, nextAvailabilityDateTime#3540447, logisticUnits#3540463, orderQuantityBaseUom#3540449, orderQuantityBaseUomUuid#3540450, splitIndicator#3540431L, netPriceAmount#3540454, netPriceCurrencyCode#3540455, netPriceQuantity#3540451, netPriceQuantityUom#3540452, netPriceQuantityUomUuid#3540453, sourceOfSupplyUuid#3540435, minimumOrderQuantity#3540457, orderProposalItemId#3540427, orderProposalItemGroupId#3540428, optimizationGroups#3540464, measurements#3540456, previousOrderProposal#3540432L, prodLocSpecificKpis#3551330, channelStreamSpecificKpis#3551345, quantityKpis#3551358, arrays_zip(constraintLabels#3540458, constraintOperators#3540459, constraintValues#3540461, constraintLabels, constraintOperators, constraintValues) AS constraintStructArray#3551772]
Input [39]: [availabilityDateTime#3540446, channelStreamSpecificKpis#3551345, constraintLabels#3540458, constraintOperators#3540459, constraintValues#3540461, deliveryDateTime#3540445, isFallbackOrderOnly#3540448, logisticUnits#3540463, measurements#3540456, minimumOrderQuantity#3540457, netPriceAmount#3540454, netPriceCurrencyCode#3540455, netPriceQuantity#3540451, netPriceQuantityUom#3540452, netPriceQuantityUomUuid#3540453, nextAvailabilityDateTime#3540447, optimizationGroups#3540464, orderDateTime#3540444, orderProposalId#3540426L, orderProposalItemGroupId#3540428, orderProposalItemId#3540427, orderQuantityBaseUom#3540449, orderQuantityBaseUomUuid#3540450, originalReplenishmentRunId#3540429L, plant#3540440, previousOrderProposal#3540432L, prodLocSpecificKpis#3551330, product#3540439, productGroup#3540468, qty#3540270, quantityAfterProdPlantOptimization#3540269, quantityKpis#3551358, shardId#3538856, sourceOfSupplyUuid#3540435, splitIndicator#3540431L, subrange#3540438, supplier#3540437, supplierGroup#3540436, supplyingPlant#3540467]
(59) Project
Output [37]: [shardId#3538856, qty#3540270, orderProposalId#3540426L, originalReplenishmentRunId#3540429L, supplierGroup#3540436, supplier#3540437, supplyingPlant#3540467, productGroup#3540468, product#3540439, plant#3540440, subrange#3540438, orderDateTime#3540444, deliveryDateTime#3540445, availabilityDateTime#3540446, nextAvailabilityDateTime#3540447, logisticUnits#3540463, orderQuantityBaseUom#3540449, orderQuantityBaseUomUuid#3540450, splitIndicator#3540431L, netPriceAmount#3540454, netPriceCurrencyCode#3540455, netPriceQuantity#3540451, netPriceQuantityUom#3540452, netPriceQuantityUomUuid#3540453, sourceOfSupplyUuid#3540435, orderProposalItemId#3540427, orderProposalItemGroupId#3540428, optimizationGroups#3540464, measurements#3540456, previousOrderProposal#3540432L, prodLocSpecificKpis#3551330, channelStreamSpecificKpis#3551345, quantityKpis#3551358, struct(minServiceLevel, array_min(filter(constraintStructArray#3551772, lambdafunction((lambda x_11756#3551779.constraintLabels = ServiceLevel), lambda x_11756#3551779, false)).constraintValues), minServiceLevelMinStock, array_min(filter(constraintStructArray#3551772, lambdafunction((lambda x_11757#3551780.constraintLabels = ServiceLevelMinimumStock), lambda x_11757#3551780, false)).constraintValues), maxServiceLevelEndOfListing, array_min(filter(constraintStructArray#3551772, lambdafunction((lambda x_11758#3551781.constraintLabels = ServiceLevelAtStartOfDelisting), lambda x_11758#3551781, false)).constraintValues), maxRoc, array_min(filter(constraintStructArray#3551772, lambdafunction((lambda x_11759#3551782.constraintLabels = RangeOfCoverage), lambda x_11759#3551782, false)).constraintValues), minimumOrderQuantity, minimumOrderQuantity#3540457, endOfListingDateTime, coalesce(filter(prodLocSpecificKpis#3551330, lambdafunction((lambda x_11760#3551783.label = NonListingStartTimestamp), lambda x_11760#3551783, false))[0].dateTime, 1970-01-01 00:00:00)) AS constraintBenchmark#3551778, CASE WHEN (qty#3540270 <=> quantityAfterProdPlantOptimization#3540269) THEN array(struct(isProposedCandidate, true, isProdlocOptimalCandidate, true, candidateOrderQuantity, coalesce((qty#3540270 * (cast(element_at(filter(logisticUnits#3540463, lambdafunction(lambda x_11761#3551851.isOrderUnit, lambda x_11761#3551851, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#3540463, lambdafunction(lambda x_11761#3551852.isOrderUnit, lambda x_11761#3551852, false)), 1, None, false).numerator as double))), qty#3540270), orderQuantityUom, coalesce(element_at(filter(logisticUnits#3540463, lambdafunction(lambda x_11761#3551853.isOrderUnit, lambda x_11761#3551853, false)), 1, None, false).uom, orderQuantityBaseUom#3540449), orderQuantityUomUuid, coalesce(element_at(filter(logisticUnits#3540463, lambdafunction(lambda x_11761#3551854.isOrderUnit, lambda x_11761#3551854, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#3540450), candidateOrderQuantityInBaseUnit, qty#3540270, orderQuantityBaseUom, orderQuantityBaseUom#3540449, orderQuantityBaseUomUuid, orderQuantityBaseUomUuid#3540450, candidateOrderQuantityInPreferredUnit, coalesce(array_min(transform(filter(logisticUnits#3540463, lambdafunction((lambda x_11763#3551855.isPreferred AND (((qty#3540270 * cast(lambda x_11763#3551855.denominator as double)) % cast(lambda x_11763#3551855.numerator as double)) = 0.0)), lambda x_11763#3551855, false)), lambdafunction(struct(inPreferredQuantity, ((qty#3540270 * cast(lambda x_11764#3551896.denominator as double)) / cast(lambda x_11764#3551896.numerator as double)), uom, lambda x_11764#3551896.uom, uomUuid, lambda x_11764#3551896.uomUuid), lambda x_11764#3551896, false))).inPreferredQuantity, coalesce((qty#3540270 * (cast(element_at(filter(logisticUnits#3540463, lambdafunction(lambda x_11762#3551856.isOrderUnit, lambda x_11762#3551856, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#3540463, lambdafunction(lambda x_11762#3551857.isOrderUnit, lambda x_11762#3551857, false)), 1, None, false).numerator as double))), qty#3540270)), orderQuantityPreferredUom, coalesce(array_min(transform(filter(logisticUnits#3540463, lambdafunction((lambda x_11763#3551858.isPreferred AND (((qty#3540270 * cast(lambda x_11763#3551858.denominator as double)) % cast(lambda x_11763#3551858.numerator as double)) = 0.0)), lambda x_11763#3551858, false)), lambdafunction(struct(inPreferredQuantity, ((qty#3540270 * cast(lambda x_11764#3551897.denominator as double)) / cast(lambda x_11764#3551897.numerator as double)), uom, lambda x_11764#3551897.uom, uomUuid, lambda x_11764#3551897.uomUuid), lambda x_11764#3551897, false))).uom, coalesce(element_at(filter(logisticUnits#3540463, lambdafunction(lambda x_11762#3551859.isOrderUnit, lambda x_11762#3551859, false)), 1, None, false).uom, orderQuantityBaseUom#3540449)), orderQuantityPreferredUomUuid, coalesce(array_min(transform(filter(logisticUnits#3540463, lambdafunction((lambda x_11763#3551860.isPreferred AND (((qty#3540270 * cast(lambda x_11763#3551860.denominator as double)) % cast(lambda x_11763#3551860.numerator as double)) = 0.0)), lambda x_11763#3551860, false)), lambdafunction(struct(inPreferredQuantity, ((qty#3540270 * cast(lambda x_11764#3551898.denominator as double)) / cast(lambda x_11764#3551898.numerator as double)), uom, lambda x_11764#3551898.uom, uomUuid, lambda x_11764#3551898.uomUuid), lambda x_11764#3551898, false))).uomUuid, coalesce(element_at(filter(logisticUnits#3540463, lambdafunction(lambda x_11762#3551861.isOrderUnit, lambda x_11762#3551861, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#3540450)), serviceLevel, coalesce(filter(element_at(quantityKpis#3551358, qty#3540270, None, false), lambdafunction((lambda x_11769#3551862.label = ServiceLevel), lambda x_11769#3551862, false))[0].value, 0.0), serviceLevelMinStock, ... 5 more fields)) ELSE array(struct(isProposedCandidate, true, isProdlocOptimalCandidate, false, candidateOrderQuantity, coalesce((qty#3540270 * (cast(element_at(filter(logisticUnits#3540463, lambdafunction(lambda x_11761#3551866.isOrderUnit, lambda x_11761#3551866, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#3540463, lambdafunction(lambda x_11761#3551867.isOrderUnit, lambda x_11761#3551867, false)), 1, None, false).numerator as double))), qty#3540270), orderQuantityUom, coalesce(element_at(filter(logisticUnits#3540463, lambdafunction(lambda x_11761#3551868.isOrderUnit, lambda x_11761#3551868, false)), 1, None, false).uom, orderQuantityBaseUom#3540449), orderQuantityUomUuid, coalesce(element_at(filter(logisticUnits#3540463, lambdafunction(lambda x_11761#3551869.isOrderUnit, lambda x_11761#3551869, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#3540450), candidateOrderQuantityInBaseUnit, qty#3540270, orderQuantityBaseUom, orderQuantityBaseUom#3540449, orderQuantityBaseUomUuid, orderQuantityBaseUomUuid#3540450, candidateOrderQuantityInPreferredUnit, coalesce(array_min(transform(filter(logisticUnits#3540463, lambdafunction((lambda x_11763#3551870.isPreferred AND (((qty#3540270 * cast(lambda x_11763#3551870.denominator as double)) % cast(lambda x_11763#3551870.numerator as double)) = 0.0)), lambda x_11763#3551870, false)), lambdafunction(struct(inPreferredQuantity, ((qty#3540270 * cast(lambda x_11764#3551899.denominator as double)) / cast(lambda x_11764#3551899.numerator as double)), uom, lambda x_11764#3551899.uom, uomUuid, lambda x_11764#3551899.uomUuid), lambda x_11764#3551899, false))).inPreferredQuantity, coalesce((qty#3540270 * (cast(element_at(filter(logisticUnits#3540463, lambdafunction(lambda x_11762#3551871.isOrderUnit, lambda x_11762#3551871, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#3540463, lambdafunction(lambda x_11762#3551872.isOrderUnit, lambda x_11762#3551872, false)), 1, None, false).numerator as double))), qty#3540270)), orderQuantityPreferredUom, coalesce(array_min(transform(filter(logisticUnits#3540463, lambdafunction((lambda x_11763#3551873.isPreferred AND (((qty#3540270 * cast(lambda x_11763#3551873.denominator as double)) % cast(lambda x_11763#3551873.numerator as double)) = 0.0)), lambda x_11763#3551873, false)), lambdafunction(struct(inPreferredQuantity, ((qty#3540270 * cast(lambda x_11764#3551900.denominator as double)) / cast(lambda x_11764#3551900.numerator as double)), uom, lambda x_11764#3551900.uom, uomUuid, lambda x_11764#3551900.uomUuid), lambda x_11764#3551900, false))).uom, coalesce(element_at(filter(logisticUnits#3540463, lambdafunction(lambda x_11762#3551874.isOrderUnit, lambda x_11762#3551874, false)), 1, None, false).uom, orderQuantityBaseUom#3540449)), orderQuantityPreferredUomUuid, coalesce(array_min(transform(filter(logisticUnits#3540463, lambdafunction((lambda x_11763#3551875.isPreferred AND (((qty#3540270 * cast(lambda x_11763#3551875.denominator as double)) % cast(lambda x_11763#3551875.numerator as double)) = 0.0)), lambda x_11763#3551875, false)), lambdafunction(struct(inPreferredQuantity, ((qty#3540270 * cast(lambda x_11764#3551901.denominator as double)) / cast(lambda x_11764#3551901.numerator as double)), uom, lambda x_11764#3551901.uom, uomUuid, lambda x_11764#3551901.uomUuid), lambda x_11764#3551901, false))).uomUuid, coalesce(element_at(filter(logisticUnits#3540463, lambdafunction(lambda x_11762#3551876.isOrderUnit, lambda x_11762#3551876, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#3540450)), serviceLevel, coalesce(filter(element_at(quantityKpis#3551358, qty#3540270, None, false), lambdafunction((lambda x_11773#3551877.label = ServiceLevel), lambda x_11773#3551877, false))[0].value, 0.0), serviceLevelMinStock, ... 5 more fields), struct(isProposedCandidate, false, isProdlocOptimalCandidate, true, candidateOrderQuantity, coalesce((quantityAfterProdPlantOptimization#3540269 * (cast(element_at(filter(logisticUnits#3540463, lambdafunction(lambda x_11765#3551881.isOrderUnit, lambda x_11765#3551881, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#3540463, lambdafunction(lambda x_11765#3551882.isOrderUnit, lambda x_11765#3551882, false)), 1, None, false).numerator as double))), quantityAfterProdPlantOptimization#3540269), orderQuantityUom, coalesce(element_at(filter(logisticUnits#3540463, lambdafunction(lambda x_11765#3551883.isOrderUnit, lambda x_11765#3551883, false)), 1, None, false).uom, orderQuantityBaseUom#3540449), orderQuantityUomUuid, coalesce(element_at(filter(logisticUnits#3540463, lambdafunction(lambda x_11765#3551884.isOrderUnit, lambda x_11765#3551884, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#3540450), candidateOrderQuantityInBaseUnit, quantityAfterProdPlantOptimization#3540269, orderQuantityBaseUom, orderQuantityBaseUom#3540449, orderQuantityBaseUomUuid, orderQuantityBaseUomUuid#3540450, candidateOrderQuantityInPreferredUnit, coalesce(array_min(transform(filter(logisticUnits#3540463, lambdafunction((lambda x_11767#3551885.isPreferred AND (((quantityAfterProdPlantOptimization#3540269 * cast(lambda x_11767#3551885.denominator as double)) % cast(lambda x_11767#3551885.numerator as double)) = 0.0)), lambda x_11767#3551885, false)), lambdafunction(struct(inPreferredQuantity, ((quantityAfterProdPlantOptimization#3540269 * cast(lambda x_11768#3551902.denominator as double)) / cast(lambda x_11768#3551902.numerator as double)), uom, lambda x_11768#3551902.uom, uomUuid, lambda x_11768#3551902.uomUuid), lambda x_11768#3551902, false))).inPreferredQuantity, coalesce((quantityAfterProdPlantOptimization#3540269 * (cast(element_at(filter(logisticUnits#3540463, lambdafunction(lambda x_11766#3551886.isOrderUnit, lambda x_11766#3551886, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#3540463, lambdafunction(lambda x_11766#3551887.isOrderUnit, lambda x_11766#3551887, false)), 1, None, false).numerator as double))), quantityAfterProdPlantOptimization#3540269)), orderQuantityPreferredUom, coalesce(array_min(transform(filter(logisticUnits#3540463, lambdafunction((lambda x_11767#3551888.isPreferred AND (((quantityAfterProdPlantOptimization#3540269 * cast(lambda x_11767#3551888.denominator as double)) % cast(lambda x_11767#3551888.numerator as double)) = 0.0)), lambda x_11767#3551888, false)), lambdafunction(struct(inPreferredQuantity, ((quantityAfterProdPlantOptimization#3540269 * cast(lambda x_11768#3551903.denominator as double)) / cast(lambda x_11768#3551903.numerator as double)), uom, lambda x_11768#3551903.uom, uomUuid, lambda x_11768#3551903.uomUuid), lambda x_11768#3551903, false))).uom, coalesce(element_at(filter(logisticUnits#3540463, lambdafunction(lambda x_11766#3551889.isOrderUnit, lambda x_11766#3551889, false)), 1, None, false).uom, orderQuantityBaseUom#3540449)), orderQuantityPreferredUomUuid, coalesce(array_min(transform(filter(logisticUnits#3540463, lambdafunction((lambda x_11767#3551890.isPreferred AND (((quantityAfterProdPlantOptimization#3540269 * cast(lambda x_11767#3551890.denominator as double)) % cast(lambda x_11767#3551890.numerator as double)) = 0.0)), lambda x_11767#3551890, false)), lambdafunction(struct(inPreferredQuantity, ((quantityAfterProdPlantOptimization#3540269 * cast(lambda x_11768#3551904.denominator as double)) / cast(lambda x_11768#3551904.numerator as double)), uom, lambda x_11768#3551904.uom, uomUuid, lambda x_11768#3551904.uomUuid), lambda x_11768#3551904, false))).uomUuid, coalesce(element_at(filter(logisticUnits#3540463, lambdafunction(lambda x_11766#3551891.isOrderUnit, lambda x_11766#3551891, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#3540450)), serviceLevel, coalesce(filter(element_at(quantityKpis#3551358, quantityAfterProdPlantOptimization#3540269, None, false), lambdafunction((lambda x_11777#3551892.label = ServiceLevel), lambda x_11777#3551892, false))[0].value, 0.0), serviceLevelMinStock, ... 5 more fields)) END AS calculationAnalysis#3551850, coalesce(filter(prodLocSpecificKpis#3551330, lambdafunction((lambda x_11781#3551906.label = InitialStockQty), lambda x_11781#3551906, false))[0].dateTime, 1970-01-01 00:00:00) AS inventoryDateTime#3551905, coalesce(filter(prodLocSpecificKpis#3551330, lambdafunction((lambda x_11782#3551908.label = DemandPeriodEndTimestamp), lambda x_11782#3551908, false))[0].dateTime, 1970-01-01 00:00:00) AS demandPeriodEndDateTime#3551907]
Input [36]: [shardId#3538856, quantityAfterProdPlantOptimization#3540269, qty#3540270, orderProposalId#3540426L, originalReplenishmentRunId#3540429L, supplierGroup#3540436, supplier#3540437, supplyingPlant#3540467, productGroup#3540468, product#3540439, plant#3540440, subrange#3540438, orderDateTime#3540444, deliveryDateTime#3540445, availabilityDateTime#3540446, nextAvailabilityDateTime#3540447, logisticUnits#3540463, orderQuantityBaseUom#3540449, orderQuantityBaseUomUuid#3540450, splitIndicator#3540431L, netPriceAmount#3540454, netPriceCurrencyCode#3540455, netPriceQuantity#3540451, netPriceQuantityUom#3540452, netPriceQuantityUomUuid#3540453, sourceOfSupplyUuid#3540435, minimumOrderQuantity#3540457, orderProposalItemId#3540427, orderProposalItemGroupId#3540428, optimizationGroups#3540464, measurements#3540456, previousOrderProposal#3540432L, prodLocSpecificKpis#3551330, channelStreamSpecificKpis#3551345, quantityKpis#3551358, constraintStructArray#3551772]
(60) Project
Output [21]: [shardId#3538856, qty#3540270, orderProposalId#3540426L, originalReplenishmentRunId#3540429L, supplierGroup#3540436, supplier#3540437, supplyingPlant#3540467, productGroup#3540468, product#3540439, plant#3540440, subrange#3540438, orderDateTime#3540444, deliveryDateTime#3540445, logisticUnits#3540463, orderQuantityBaseUom#3540449, orderQuantityBaseUomUuid#3540450, splitIndicator#3540431L, orderProposalItemId#3540427, orderProposalItemGroupId#3540428, previousOrderProposal#3540432L, struct(itemId, orderProposalItemId#3540427, itemGroupId, orderProposalItemGroupId#3540428, supplier, supplier#3540437, supplyingPlant, supplyingPlant#3540467, productGroup, productGroup#3540468, product, product#3540439, plant, plant#3540440, supplierSubRange, subrange#3540438, sourceOfSupplyUuid, sourceOfSupplyUuid#3540435, deliveryDateTime, deliveryDateTime#3540445, unitPrice, netPriceAmount#3540454, unitPriceCurrency, netPriceCurrencyCode#3540455, unitPriceQuantity, ... 37 more fields) AS parentItem#3551981]
Input [37]: [shardId#3538856, qty#3540270, orderProposalId#3540426L, originalReplenishmentRunId#3540429L, supplierGroup#3540436, supplier#3540437, supplyingPlant#3540467, productGroup#3540468, product#3540439, plant#3540440, subrange#3540438, orderDateTime#3540444, deliveryDateTime#3540445, availabilityDateTime#3540446, nextAvailabilityDateTime#3540447, logisticUnits#3540463, orderQuantityBaseUom#3540449, orderQuantityBaseUomUuid#3540450, splitIndicator#3540431L, netPriceAmount#3540454, netPriceCurrencyCode#3540455, netPriceQuantity#3540451, netPriceQuantityUom#3540452, netPriceQuantityUomUuid#3540453, sourceOfSupplyUuid#3540435, orderProposalItemId#3540427, orderProposalItemGroupId#3540428, optimizationGroups#3540464, measurements#3540456, previousOrderProposal#3540432L, prodLocSpecificKpis#3551330, channelStreamSpecificKpis#3551345, quantityKpis#3551358, constraintBenchmark#3551778, calculationAnalysis#3551850, inventoryDateTime#3551905, demandPeriodEndDateTime#3551907]
(61) Project
Output [12]: [shardId#3538856, orderProposalId#3540426L, originalReplenishmentRunId#3540429L, supplierGroup#3540436, supplier#3540437, supplyingPlant#3540467, orderDateTime#3540444, splitIndicator#3540431L, orderProposalItemGroupId#3540428, previousOrderProposal#3540432L, parentItem#3551981, struct(itemId, orderProposalItemId#3540427, supplier, supplier#3540437, supplyingPlant, supplyingPlant#3540467, productGroup, productGroup#3540468, product, product#3540439, plant, plant#3540440, supplierSubRange, subrange#3540438, deliveryDateTime, deliveryDateTime#3540445, orderQuantity, coalesce((qty#3540270 * (cast(element_at(filter(logisticUnits#3540463, lambdafunction(lambda x_11806#3552015.isOrderUnit, lambda x_11806#3552015, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#3540463, lambdafunction(lambda x_11806#3552016.isOrderUnit, lambda x_11806#3552016, false)), 1, None, false).numerator as double))), qty#3540270), orderQuantityUom, coalesce(element_at(filter(logisticUnits#3540463, lambdafunction(lambda x_11806#3552017.isOrderUnit, lambda x_11806#3552017, false)), 1, None, false).uom, orderQuantityBaseUom#3540449), orderQuantityUomUuid, coalesce(element_at(filter(logisticUnits#3540463, lambdafunction(lambda x_11806#3552018.isOrderUnit, lambda x_11806#3552018, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#3540450), orderQuantityInBaseUnit, qty#3540270, orderQuantityBaseUom, ... 13 more fields) AS item#3552012]
Input [21]: [shardId#3538856, qty#3540270, orderProposalId#3540426L, originalReplenishmentRunId#3540429L, supplierGroup#3540436, supplier#3540437, supplyingPlant#3540467, productGroup#3540468, product#3540439, plant#3540440, subrange#3540438, orderDateTime#3540444, deliveryDateTime#3540445, logisticUnits#3540463, orderQuantityBaseUom#3540449, orderQuantityBaseUomUuid#3540450, splitIndicator#3540431L, orderProposalItemId#3540427, orderProposalItemGroupId#3540428, previousOrderProposal#3540432L, parentItem#3551981]
(62) ObjectHashAggregate
Input [12]: [shardId#3538856, orderProposalId#3540426L, originalReplenishmentRunId#3540429L, supplierGroup#3540436, supplier#3540437, supplyingPlant#3540467, orderDateTime#3540444, splitIndicator#3540431L, orderProposalItemGroupId#3540428, previousOrderProposal#3540432L, parentItem#3551981, item#3552012]
Keys [4]: [shardId#3538856, orderProposalId#3540426L, splitIndicator#3540431L, orderProposalItemGroupId#3540428]
Functions [8]: [partial_max(originalReplenishmentRunId#3540429L), partial_max(supplierGroup#3540436), partial_max(supplier#3540437), partial_max(supplyingPlant#3540467), partial_max(orderDateTime#3540444), partial_collect_list(parentItem#3551981, 0, 0), partial_collect_set(previousOrderProposal#3540432L, 0, 0), partial_collect_list(item#3552012, 0, 0)]
Aggregate Attributes [8]: [max#3553265L, max#3553266, max#3553267, max#3553268, max#3553269, buf#3553270, buf#3553271, buf#3553272]
Results [12]: [shardId#3538856, orderProposalId#3540426L, splitIndicator#3540431L, orderProposalItemGroupId#3540428, max#3553273L, max#3553274, max#3553275, max#3553276, max#3553277, buf#3553278, buf#3553279, buf#3553280]
(63) Exchange
Input [12]: [shardId#3538856, orderProposalId#3540426L, splitIndicator#3540431L, orderProposalItemGroupId#3540428, max#3553273L, max#3553274, max#3553275, max#3553276, max#3553277, buf#3553278, buf#3553279, buf#3553280]
Arguments: hashpartitioning(shardId#3538856, orderProposalId#3540426L, splitIndicator#3540431L, orderProposalItemGroupId#3540428, 30), ENSURE_REQUIREMENTS, [plan_id=1017708]
(64) ObjectHashAggregate
Input [12]: [shardId#3538856, orderProposalId#3540426L, splitIndicator#3540431L, orderProposalItemGroupId#3540428, max#3553273L, max#3553274, max#3553275, max#3553276, max#3553277, buf#3553278, buf#3553279, buf#3553280]
Keys [4]: [shardId#3538856, orderProposalId#3540426L, splitIndicator#3540431L, orderProposalItemGroupId#3540428]
Functions [8]: [max(originalReplenishmentRunId#3540429L), max(supplierGroup#3540436), max(supplier#3540437), max(supplyingPlant#3540467), max(orderDateTime#3540444), collect_list(parentItem#3551981, 0, 0), collect_set(previousOrderProposal#3540432L, 0, 0), collect_list(item#3552012, 0, 0)]
Aggregate Attributes [8]: [max(originalReplenishmentRunId#3540429L)#3552081L, max(supplierGroup#3540436)#3552082, max(supplier#3540437)#3552083, max(supplyingPlant#3540467)#3552084, max(orderDateTime#3540444)#3552085, collect_list(parentItem#3551981, 0, 0)#3552086, collect_set(previousOrderProposal#3540432L, 0, 0)#3552088, collect_list(item#3552012, 0, 0)#3552087]
Results [10]: [shardId#3538856, orderProposalId#3540426L, max(originalReplenishmentRunId#3540429L)#3552081L AS originalReplenishmentRunId#3552029L, max(supplierGroup#3540436)#3552082 AS supplierGroup#3552030, max(supplier#3540437)#3552083 AS supplier#3552031, max(supplyingPlant#3540467)#3552084 AS supplyingPlant#3552032, max(orderDateTime#3540444)#3552085 AS orderDateTime#3552033, collect_list(parentItem#3551981, 0, 0)#3552086 AS parentItems#3552034, collect_set(previousOrderProposal#3540432L, 0, 0)#3552088 AS previousOrderProposals#3552036, struct(itemGroupId, orderProposalItemGroupId#3540428, items, collect_list(item#3552012, 0, 0)#3552087) AS itemGroup#3552090]
(65) ObjectHashAggregate
Input [10]: [shardId#3538856, orderProposalId#3540426L, originalReplenishmentRunId#3552029L, supplierGroup#3552030, supplier#3552031, supplyingPlant#3552032, orderDateTime#3552033, parentItems#3552034, previousOrderProposals#3552036, itemGroup#3552090]
Keys [2]: [shardId#3538856, orderProposalId#3540426L]
Functions [8]: [partial_max(originalReplenishmentRunId#3552029L), partial_max(supplierGroup#3552030), partial_max(supplier#3552031), partial_max(supplyingPlant#3552032), partial_max(orderDateTime#3552033), partial_collect_list(itemGroup#3552090, 0, 0), partial_collect_list(parentItems#3552034, 0, 0), partial_collect_set(previousOrderProposals#3552036, 0, 0)]
Aggregate Attributes [8]: [max#3553249L, max#3553250, max#3553251, max#3553252, max#3553253, buf#3553254, buf#3553255, buf#3553256]
Results [10]: [shardId#3538856, orderProposalId#3540426L, max#3553257L, max#3553258, max#3553259, max#3553260, max#3553261, buf#3553262, buf#3553263, buf#3553264]
(66) Exchange
Input [10]: [shardId#3538856, orderProposalId#3540426L, max#3553257L, max#3553258, max#3553259, max#3553260, max#3553261, buf#3553262, buf#3553263, buf#3553264]
Arguments: hashpartitioning(shardId#3538856, orderProposalId#3540426L, 30), ENSURE_REQUIREMENTS, [plan_id=1017711]
(67) ObjectHashAggregate
Input [10]: [shardId#3538856, orderProposalId#3540426L, max#3553257L, max#3553258, max#3553259, max#3553260, max#3553261, buf#3553262, buf#3553263, buf#3553264]
Keys [2]: [shardId#3538856, orderProposalId#3540426L]
Functions [8]: [max(originalReplenishmentRunId#3552029L), max(supplierGroup#3552030), max(supplier#3552031), max(supplyingPlant#3552032), max(orderDateTime#3552033), collect_list(itemGroup#3552090, 0, 0), collect_list(parentItems#3552034, 0, 0), collect_set(previousOrderProposals#3552036, 0, 0)]
Aggregate Attributes [8]: [max(originalReplenishmentRunId#3552029L)#3552112L, max(supplierGroup#3552030)#3552113, max(supplier#3552031)#3552114, max(supplyingPlant#3552032)#3552115, max(orderDateTime#3552033)#3552116, collect_list(itemGroup#3552090, 0, 0)#3552117, collect_list(parentItems#3552034, 0, 0)#3552118, collect_set(previousOrderProposals#3552036, 0, 0)#3552119]
Results [10]: [shardId#3538856, orderProposalId#3540426L, max(originalReplenishmentRunId#3552029L)#3552112L AS originalReplenishmentRunId#3552091L, max(supplierGroup#3552030)#3552113 AS supplierGroup#3552092, max(supplier#3552031)#3552114 AS supplier#3552093, max(supplyingPlant#3552032)#3552115 AS supplyingPlant#3552094, max(orderDateTime#3552033)#3552116 AS orderDateTime#3552095, collect_list(itemGroup#3552090, 0, 0)#3552117 AS itemGroups#3552096, flatten(collect_list(parentItems#3552034, 0, 0)#3552118) AS parentItems#3552097, flatten(collect_set(previousOrderProposals#3552036, 0, 0)#3552119) AS previousOrderProposals#3552098]
(68) Project
Output [2]: [shardId#3538856, struct(orderProposalId, orderProposalId#3540426L, originalReplenishmentRunId, originalReplenishmentRunId#3552091L, supplierGroup, supplierGroup#3552092, optimizationGroups, null, supplier, CASE WHEN isnull(supplierGroup#3552092) THEN supplier#3552093 END, supplyingPlant, supplyingPlant#3552094, orderDateTime, orderDateTime#3552095, itemGroups, itemGroups#3552096, previousOrderProposals, array_distinct(previousOrderProposals#3552098), parentItems, parentItems#3552097) AS orderProposal#3552123]
Input [10]: [shardId#3538856, orderProposalId#3540426L, originalReplenishmentRunId#3552091L, supplierGroup#3552092, supplier#3552093, supplyingPlant#3552094, orderDateTime#3552095, itemGroups#3552096, parentItems#3552097, previousOrderProposals#3552098]
(69) Project
Output [11]: [shardId#3538856, orderProposal#3552123.orderProposalId AS _extract_orderProposalId#3552881L, orderProposal#3552123.originalReplenishmentRunId AS _extract_originalReplenishmentRunId#3552882L, orderProposal#3552123.supplierGroup AS _extract_supplierGroup#3552883, orderProposal#3552123.supplier AS _extract_supplier#3552884, orderProposal#3552123.supplyingPlant AS _extract_supplyingPlant#3552885, orderProposal#3552123.orderDateTime AS _extract_orderDateTime#3552886, orderProposal#3552123.itemGroups AS _extract_itemGroups#3552887, orderProposal#3552123.previousOrderProposals AS _extract_previousOrderProposals#3552888, orderProposal#3552123.parentItems AS _extract_parentItems#3552889, orderProposal#3552123.orderProposalId AS _extract_orderProposalId#3552890L]
Input [2]: [shardId#3538856, orderProposal#3552123]
(70) Exchange
Input [11]: [shardId#3538856, _extract_orderProposalId#3552881L, _extract_originalReplenishmentRunId#3552882L, _extract_supplierGroup#3552883, _extract_supplier#3552884, _extract_supplyingPlant#3552885, _extract_orderDateTime#3552886, _extract_itemGroups#3552887, _extract_previousOrderProposals#3552888, _extract_parentItems#3552889, _extract_orderProposalId#3552890L]
Arguments: hashpartitioning(coalesce(shardId#3538856, ), isnull(shardId#3538856), coalesce(_extract_orderProposalId#3552890L, 0), isnull(_extract_orderProposalId#3552890L), 30), ENSURE_REQUIREMENTS, [plan_id=1017715]
(71) Sort
Input [11]: [shardId#3538856, _extract_orderProposalId#3552881L, _extract_originalReplenishmentRunId#3552882L, _extract_supplierGroup#3552883, _extract_supplier#3552884, _extract_supplyingPlant#3552885, _extract_orderDateTime#3552886, _extract_itemGroups#3552887, _extract_previousOrderProposals#3552888, _extract_parentItems#3552889, _extract_orderProposalId#3552890L]
Arguments: [coalesce(shardId#3538856, ) ASC NULLS FIRST, isnull(shardId#3538856) ASC NULLS FIRST, coalesce(_extract_orderProposalId#3552890L, 0) ASC NULLS FIRST, isnull(_extract_orderProposalId#3552890L) ASC NULLS FIRST], false, 0
(72) InMemoryTableScan
Output [3]: [shardId#3552138, orderProposalId#3552139L, optimizationGroups#3552141]
Arguments: [shardId#3552138, orderProposalId#3552139L, optimizationGroups#3552141], [isnotnull(orderProposalId#3552139L)]
(73) InMemoryRelation
Arguments: [shardId#3552138, orderProposalId#3552139L, items#3552140, optimizationGroups#3552141, isOptimal#3552142, optimizationInsights#3552144], StorageLevel(disk, memory, 2 replicas)
(74) Filter [codegen id : 2]
Input [3]: [shardId#3552138, orderProposalId#3552139L, optimizationGroups#3552141]
Condition : isnotnull(orderProposalId#3552139L)
(75) Exchange
Input [3]: [shardId#3552138, orderProposalId#3552139L, optimizationGroups#3552141]
Arguments: hashpartitioning(orderProposalId#3552139L, 30), ENSURE_REQUIREMENTS, [plan_id=1017720]
(76) Sort [codegen id : 3]
Input [3]: [shardId#3552138, orderProposalId#3552139L, optimizationGroups#3552141]
Arguments: [orderProposalId#3552139L ASC NULLS FIRST], false, 0
(77) InMemoryTableScan
Output [2]: [items#3551767, shardId#3551765]
Arguments: [items#3551767, shardId#3551765], [(size(items#3551767.worklistShardItemId, true) > 0), isnotnull(items#3551767.worklistShardItemId), (shardId#3551765 = 0_2_10000000532)]
(78) InMemoryRelation
Arguments: [shardId#3551765, orderProposalId#3551766L, items#3551767, optimizationGroups#3551768, isOptimal#3551769, optimizationInsights#3551771], StorageLevel(disk, memory, 2 replicas)
(79) Filter [codegen id : 4]
Input [2]: [items#3551767, shardId#3551765]
Condition : (((size(items#3551767.worklistShardItemId, true) > 0) AND isnotnull(items#3551767.worklistShardItemId)) AND (shardId#3551765 = 0_2_10000000532))
(80) Project [codegen id : 4]
Output [1]: [items#3551767.worklistShardItemId AS _extract_worklistShardItemId#3552786]
Input [2]: [items#3551767, shardId#3551765]
(81) Generate [codegen id : 4]
Input [1]: [_extract_worklistShardItemId#3552786]
Arguments: explode(_extract_worklistShardItemId#3552786), false, [item#3552145L]
(82) Project [codegen id : 4]
Output [1]: [item#3552145L AS worklistShardItemId#3552146L]
Input [1]: [item#3552145L]
(83) BroadcastExchange
Input [1]: [worklistShardItemId#3552146L]
Arguments: HashedRelationBroadcastMode(List(input[0, bigint, true]),false), [plan_id=1017731]
(84) Scan parquet
Output [5]: [orderProposalId#3552194L, isFallbackOrderOnly#3552211, worklistShardItemId#3552217L, shardId#3552238, sequenceId#3552216]
Batched: true
Location: PreparedDeltaFileIndex [hdlfs://7da5304c-1f57-47fa-b75a-0f0b4349c280.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-qty-opt-service/internal/prod-plant-snapshot/10000000532]
PartitionFilters: [isnotnull(shardId#3552238), isnotnull(sequenceId#3552216), (shardId#3552238 = 0_2_10000000532), (sequenceId#3552216 = 6)]
PushedFilters: [IsNotNull(worklistShardItemId), Not(EqualNullSafe(isFallbackOrderOnly,true)), IsNotNull(orderProposalId)]
ReadSchema: struct<orderProposalId:bigint,isFallbackOrderOnly:boolean,worklistShardItemId:bigint>
(85) ColumnarToRow [codegen id : 5]
Input [5]: [orderProposalId#3552194L, isFallbackOrderOnly#3552211, worklistShardItemId#3552217L, shardId#3552238, sequenceId#3552216]
(86) Filter [codegen id : 5]
Input [5]: [orderProposalId#3552194L, isFallbackOrderOnly#3552211, worklistShardItemId#3552217L, shardId#3552238, sequenceId#3552216]
Condition : ((isnotnull(worklistShardItemId#3552217L) AND NOT (isFallbackOrderOnly#3552211 <=> true)) AND isnotnull(orderProposalId#3552194L))
(87) Project [codegen id : 5]
Output [2]: [orderProposalId#3552194L, worklistShardItemId#3552217L]
Input [5]: [orderProposalId#3552194L, isFallbackOrderOnly#3552211, worklistShardItemId#3552217L, shardId#3552238, sequenceId#3552216]
(88) Exchange
Input [2]: [orderProposalId#3552194L, worklistShardItemId#3552217L]
Arguments: hashpartitioning(worklistShardItemId#3552217L, 30), REPARTITION_BY_NUM, [plan_id=1017738]
(89) Project
Output [2]: [worklistShardItemId#3552217L, orderProposalId#3552194L]
Input [2]: [orderProposalId#3552194L, worklistShardItemId#3552217L]
(90) BroadcastHashJoin [codegen id : 6]
Left keys [1]: [worklistShardItemId#3552146L]
Right keys [1]: [worklistShardItemId#3552217L]
Join type: Inner
Join condition: None
(91) Project [codegen id : 6]
Output [1]: [orderProposalId#3552194L]
Input [3]: [worklistShardItemId#3552146L, worklistShardItemId#3552217L, orderProposalId#3552194L]
(92) HashAggregate [codegen id : 6]
Input [1]: [orderProposalId#3552194L]
Keys [1]: [orderProposalId#3552194L]
Functions: []
Aggregate Attributes: []
Results [1]: [orderProposalId#3552194L]
(93) Exchange
Input [1]: [orderProposalId#3552194L]
Arguments: hashpartitioning(orderProposalId#3552194L, 30), ENSURE_REQUIREMENTS, [plan_id=1017745]
(94) HashAggregate [codegen id : 7]
Input [1]: [orderProposalId#3552194L]
Keys [1]: [orderProposalId#3552194L]
Functions: []
Aggregate Attributes: []
Results [1]: [orderProposalId#3552194L]
(95) Sort [codegen id : 7]
Input [1]: [orderProposalId#3552194L]
Arguments: [orderProposalId#3552194L ASC NULLS FIRST], false, 0
(96) SortMergeJoin [codegen id : 8]
Left keys [1]: [orderProposalId#3552139L]
Right keys [1]: [orderProposalId#3552194L]
Join type: Inner
Join condition: None
(97) Project
Output [3]: [orderProposalId#3552139L, shardId#3552138, coalesce(transform(optimizationGroups#3552141, lambdafunction(struct(optGroupId, lambda x_11810#3552136.optGroupId, minOrderProfile, lambda x_11810#3552136.minOrderProfile, assignmentDetails, lambda x_11810#3552136.assignmentDetails, minOrdBenchmark, struct(dimensionType, lambda x_11810#3552136.minOrderGoal.dimensionType, unit, lambda x_11810#3552136.minOrderGoal.unit, unitUuid, lambda x_11810#3552136.minOrderGoal.unitUuid, goalValue, lambda x_11810#3552136.minOrderGoal.minOrderValue, calcValue, lambda x_11810#3552136.minOrderGoal.calculatedOrderValue), transportLoadProfile, null, transportLoadGoal, null), lambda x_11810#3552136, false)), []) AS optimizationGroups#3552135]
Input [4]: [shardId#3552138, orderProposalId#3552139L, optimizationGroups#3552141, orderProposalId#3552194L]
(98) Exchange
Input [3]: [orderProposalId#3552139L, shardId#3552138, optimizationGroups#3552135]
Arguments: hashpartitioning(coalesce(shardId#3552138, ), isnull(shardId#3552138), coalesce(orderProposalId#3552139L, 0), isnull(orderProposalId#3552139L), 30), ENSURE_REQUIREMENTS, [plan_id=1017754]
(99) Sort [codegen id : 9]
Input [3]: [orderProposalId#3552139L, shardId#3552138, optimizationGroups#3552135]
Arguments: [coalesce(shardId#3552138, ) ASC NULLS FIRST, isnull(shardId#3552138) ASC NULLS FIRST, coalesce(orderProposalId#3552139L, 0) ASC NULLS FIRST, isnull(orderProposalId#3552139L) ASC NULLS FIRST], false, 0
(100) SortMergeJoin
Left keys [4]: [coalesce(shardId#3538856, ), isnull(shardId#3538856), coalesce(_extract_orderProposalId#3552890L, 0), isnull(_extract_orderProposalId#3552890L)]
Right keys [4]: [coalesce(shardId#3552138, ), isnull(shardId#3552138), coalesce(orderProposalId#3552139L, 0), isnull(orderProposalId#3552139L)]
Join type: LeftOuter
Join condition: None
(101) Project
Output [2]: [shardId#3538856, named_struct(orderProposalId, _extract_orderProposalId#3552890L, originalReplenishmentRunId, _extract_originalReplenishmentRunId#3552882L, supplierGroup, _extract_supplierGroup#3552883, optimizationGroups, coalesce(optimizationGroups#3552135, []), supplier, _extract_supplier#3552884, supplyingPlant, _extract_supplyingPlant#3552885, orderDateTime, _extract_orderDateTime#3552886, itemGroups, _extract_itemGroups#3552887, previousOrderProposals, _extract_previousOrderProposals#3552888, parentItems, _extract_parentItems#3552889) AS orderProposal#3552242]
Input [14]: [shardId#3538856, _extract_orderProposalId#3552881L, _extract_originalReplenishmentRunId#3552882L, _extract_supplierGroup#3552883, _extract_supplier#3552884, _extract_supplyingPlant#3552885, _extract_orderDateTime#3552886, _extract_itemGroups#3552887, _extract_previousOrderProposals#3552888, _extract_parentItems#3552889, _extract_orderProposalId#3552890L, orderProposalId#3552139L, shardId#3552138, optimizationGroups#3552135]
(102) Project
Output [3]: [shardId#3538856, orderProposal#3552242, CASE WHEN (size(orderProposal#3552242.parentItems, true) > 2000) THEN xxhash64(orderProposal#3552242.orderProposalId, 42) ELSE xxhash64(pmod(cast(orderProposal#3552242.orderProposalId as decimal(20,0)), 56), 42) END AS resultSeparationId#3555231L]
Input [2]: [orderProposal#3552242, shardId#3538856]
(103) ObjectHashAggregate
Input [3]: [shardId#3538856, orderProposal#3552242, resultSeparationId#3555231L]
Keys [2]: [shardId#3538856, resultSeparationId#3555231L]
Functions [1]: [partial_collect_list(orderProposal#3552242, 0, 0)]
Aggregate Attributes [1]: [buf#3555270]
Results [3]: [shardId#3538856, resultSeparationId#3555231L, buf#3555271]
(104) Exchange
Input [3]: [shardId#3538856, resultSeparationId#3555231L, buf#3555271]
Arguments: hashpartitioning(shardId#3538856, resultSeparationId#3555231L, 30), ENSURE_REQUIREMENTS, [plan_id=1018120]
(105) ObjectHashAggregate
Input [3]: [shardId#3538856, resultSeparationId#3555231L, buf#3555271]
Keys [2]: [shardId#3538856, resultSeparationId#3555231L]
Functions [1]: [collect_list(orderProposal#3552242, 0, 0)]
Aggregate Attributes [1]: [collect_list(orderProposal#3552242, 0, 0)#3555239]
Results [3]: [shardId#3538856, resultSeparationId#3555231L, collect_list(orderProposal#3552242, 0, 0)#3555239 AS orderProposals#3555235]
(106) Exchange
Input [3]: [shardId#3538856, resultSeparationId#3555231L, orderProposals#3555235]
Arguments: rangepartitioning(shardId#3538856 ASC NULLS FIRST, resultSeparationId#3555231L ASC NULLS FIRST, 56), REPARTITION_BY_NUM, [plan_id=1018174]
(107) Project
Output [2]: [shardId#3538856, orderProposals#3555235]
Input [3]: [shardId#3538856, resultSeparationId#3555231L, orderProposals#3555235]
(108) CollectLimit
Input: []
Arguments: 1