== Physical Plan ==
Execute InsertIntoHadoopFsRelationCommand (111)
+- WriteFiles (110)
+- Sort (109)
+- Project (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]: [orderProposals#16684542, shardId#16679725]
Arguments: [orderProposals#16684542, shardId#16679725]
(2) InMemoryRelation
Arguments: [shardId#16679725, orderProposals#16684542], StorageLevel(disk, memory, 2 replicas)
(3) InMemoryTableScan
Output [3]: [shardId#16679725, resultSeparationId#16684538L, orderProposals#16684542]
Arguments: [shardId#16679725, resultSeparationId#16684538L, orderProposals#16684542]
(4) InMemoryRelation
Arguments: [shardId#16679725, resultSeparationId#16684538L, orderProposals#16684542], StorageLevel(disk, memory, 2 replicas)
(5) InMemoryTableScan
Output [2]: [orderProposal#16682786, shardId#16679725]
Arguments: [orderProposal#16682786, shardId#16679725]
(6) InMemoryRelation
Arguments: [shardId#16679725, orderProposal#16682786], StorageLevel(disk, memory, 2 replicas)
(7) InMemoryTableScan
Output [39]: [availabilityDateTime#16680547, channelStreamSpecificKpis#16681889, constraintLabels#16680559, constraintOperators#16680560, constraintValues#16680562, deliveryDateTime#16680546, isFallbackOrderOnly#16680549, logisticUnits#16680564, measurements#16680557, minimumOrderQuantity#16680558, netPriceAmount#16680555, netPriceCurrencyCode#16680556, netPriceQuantity#16680552, netPriceQuantityUom#16680553, netPriceQuantityUomUuid#16680554, nextAvailabilityDateTime#16680548, optimizationGroups#16680565, orderDateTime#16680545, orderProposalId#16680527L, orderProposalItemGroupId#16680529, orderProposalItemId#16680528, orderQuantityBaseUom#16680550, orderQuantityBaseUomUuid#16680551, originalReplenishmentRunId#16680530L, plant#16680541, previousOrderProposal#16680533L, prodLocSpecificKpis#16681874, product#16680540, productGroup#16680569, qty#16680298, quantityAfterProdPlantOptimization#16680297, quantityKpis#16681902, shardId#16679725, sourceOfSupplyUuid#16680536, splitIndicator#16680532L, subrange#16680539, supplier#16680538, supplierGroup#16680537, supplyingPlant#16680568]
Arguments: [availabilityDateTime#16680547, channelStreamSpecificKpis#16681889, constraintLabels#16680559, constraintOperators#16680560, constraintValues#16680562, deliveryDateTime#16680546, isFallbackOrderOnly#16680549, logisticUnits#16680564, measurements#16680557, minimumOrderQuantity#16680558, netPriceAmount#16680555, netPriceCurrencyCode#16680556, netPriceQuantity#16680552, netPriceQuantityUom#16680553, netPriceQuantityUomUuid#16680554, nextAvailabilityDateTime#16680548, optimizationGroups#16680565, orderDateTime#16680545, orderProposalId#16680527L, orderProposalItemGroupId#16680529, orderProposalItemId#16680528, orderQuantityBaseUom#16680550, orderQuantityBaseUomUuid#16680551, originalReplenishmentRunId#16680530L, plant#16680541, ... 14 more fields], [NOT (isFallbackOrderOnly#16680549 <=> true)]
(8) InMemoryRelation
Arguments: [shardId#16679725, worklistShardItemId#16680296L, quantityAfterProdPlantOptimization#16680297, qty#16680298, orderProposalId#16680527L, originalReplenishmentRunId#16680530L, supplierGroup#16680537, supplier#16680538, supplyingPlant#16680568, productGroup#16680569, product#16680540, plant#16680541, subrange#16680539, orderDateTime#16680545, deliveryDateTime#16680546, availabilityDateTime#16680547, nextAvailabilityDateTime#16680548, constraintValues#16680562, constraintOperators#16680560, constraintLabels#16680559, logisticUnits#16680564, orderQuantityBaseUom#16680550, orderQuantityBaseUomUuid#16680551, splitIndicator#16680532L, netPriceAmount#16680555, ... 17 more fields], StorageLevel(disk, memory, 2 replicas)
(9) InMemoryTableScan
Output [2]: [shardId#16679725, items#16679727]
Arguments: [shardId#16679725, items#16679727], [(size(items#16679727, true) > 0), isnotnull(items#16679727)]
(10) InMemoryRelation
Arguments: [shardId#16679725, orderProposalId#16679726L, items#16679727, optimizationGroups#16679728, isOptimal#16679729, optimizationInsights#16679731], StorageLevel(disk, memory, 2 replicas)
(11) InMemoryTableScan
Output [6]: [shardId#16679725, orderProposalId#16679726L, items#16679727, optimizationGroups#16679728, isOptimal#16679729, optimizationInsights#16679731]
Arguments: [shardId#16679725, orderProposalId#16679726L, items#16679727, optimizationGroups#16679728, isOptimal#16679729, optimizationInsights#16679731], [isnotnull(shardId#16679725), (shardId#16679725 = 0_1_10000000548)]
(12) InMemoryRelation
Arguments: [shardId#16679725, orderProposalId#16679726L, items#16679727, optimizationGroups#16679728, isOptimal#16679729, lastModified#16679730, optimizationInsights#16679731], StorageLevel(disk, memory, 2 replicas)
(13) Scan ExistingRDD [codegen id : 1]
Output [7]: [shardId#16679725, orderProposalId#16679726L, items#16679727, optimizationGroups#16679728, isOptimal#16679729, lastModified#16679730, optimizationInsights#16679731]
Arguments: [shardId#16679725, orderProposalId#16679726L, items#16679727, optimizationGroups#16679728, isOptimal#16679729, lastModified#16679730, optimizationInsights#16679731], MapPartitionsRDD[709130] at start at FileStorageAdapterImpl.java:596, ExistingRDD, UnknownPartitioning(0)
(14) Filter [codegen id : 1]
Input [7]: [shardId#16679725, orderProposalId#16679726L, items#16679727, optimizationGroups#16679728, isOptimal#16679729, lastModified#16679730, optimizationInsights#16679731]
Condition : (isnotnull(shardId#16679725) AND (shardId#16679725 = 0_1_10000000548))
(15) Filter [codegen id : 1]
Input [6]: [shardId#16679725, orderProposalId#16679726L, items#16679727, optimizationGroups#16679728, isOptimal#16679729, optimizationInsights#16679731]
Condition : (isnotnull(shardId#16679725) AND (shardId#16679725 = 0_1_10000000548))
(16) Filter [codegen id : 1]
Input [2]: [shardId#16679725, items#16679727]
Condition : ((size(items#16679727, true) > 0) AND isnotnull(items#16679727))
(17) Generate [codegen id : 1]
Input [2]: [shardId#16679725, items#16679727]
Arguments: explode(items#16679727), [shardId#16679725], false, [item#16680295]
(18) Project [codegen id : 1]
Output [4]: [shardId#16679725, item#16680295.worklistShardItemId AS worklistShardItemId#16680296L, item#16680295.quantityAfterProdPlantOptimization AS quantityAfterProdPlantOptimization#16680297, item#16680295.qty AS qty#16680298]
Input [2]: [shardId#16679725, item#16680295]
(19) Exchange
Input [4]: [shardId#16679725, worklistShardItemId#16680296L, quantityAfterProdPlantOptimization#16680297, qty#16680298]
Arguments: hashpartitioning(worklistShardItemId#16680296L, 30), ENSURE_REQUIREMENTS, [plan_id=4960621]
(20) Sort [codegen id : 2]
Input [4]: [shardId#16679725, worklistShardItemId#16680296L, quantityAfterProdPlantOptimization#16680297, qty#16680298]
Arguments: [worklistShardItemId#16680296L ASC NULLS FIRST], false, 0
(21) Scan parquet
Output [38]: [orderProposalId#16680570L, orderProposalItemId#16680571, supplierGroup#16680572, supplier#16680573, plant#16680574, deliveryDateTime#16680575, subrange#16680576, supplyingPlant#16680577, productGroup#16680578, product#16680579, orderDateTime#16680580, availabilityDateTime#16680581, nextAvailabilityDateTime#16680582, sourceOfSupplyUuid#16680584, isFallbackOrderOnly#16680587, splitIndicator#16680589L, previousOrderProposal#16680590L, worklistShardItemId#16680593L, orderProposalItemGroupId#16680594, externalProductId#16680595, externalPlantId#16680596, logisticUnits#16680597, orderQuantityBaseUom#16680598, orderQuantityBaseUomUuid#16680599, minimumOrderQuantity#16680600, constraintLabels#16680601, constraintOperators#16680602, constraintValues#16680603, netPriceAmount#16680606, netPriceCurrencyCode#16680607, netPriceQuantity#16680608, netPriceQuantityUom#16680609, netPriceQuantityUomUuid#16680610, measurements#16680611, originalReplenishmentRunId#16680612L, optimizationGroups#16680613, shardId#16680614, sequenceId#16680592]
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/10000000548]
PartitionFilters: [isnotnull(shardId#16680614), isnotnull(sequenceId#16680592), (shardId#16680614 = 0_1_10000000548), (sequenceId#16680592 = 2)]
PushedFilters: [IsNotNull(worklistShardItemId)]
ReadSchema: struct<orderProposalId:bigint,orderProposalItemId:string,supplierGroup:string,supplier:string,plant:string,deliveryDateTime:timestamp,subrange:string,supplyingPlant:string,productGroup:string,product:string,orderDateTime:timestamp,availabilityDateTime:timestamp,nextAvailabilityDateTime:timestamp,sourceOfSupplyUuid:string,isFallbackOrderOnly:boolean,splitIndicator:bigint,previousOrderProposal:bigint,worklistShardItemId:bigint,orderProposalItemGroupId:string,externalProductId:string,externalPlantId:string,logisticUnits:array<struct<uom:string,uomUuid:string,numerator:int,denominator:int,isOrderUnit:boolean,isPreferred:boolean>>,orderQuantityBaseUom:string,orderQuantityBaseUomUuid:string,minimumOrderQuantity:double,constraintLabels:array<string>,constraintOperators:array<string>,constraintValues:array<double>,netPriceAmount:double,netPriceCurrencyCode:string,netPriceQuantity:double,netPriceQuantityUom:string,netPriceQuantityUomUuid:string,measurements:array<struct<value:double,dimensionType:int,dimensionCode:string,dimensionCodeUuid:string,isoCode:string>>,originalReplenishmentRunId:bigint,optimizationGroups:array<string>>
(22) ColumnarToRow [codegen id : 3]
Input [38]: [orderProposalId#16680570L, orderProposalItemId#16680571, supplierGroup#16680572, supplier#16680573, plant#16680574, deliveryDateTime#16680575, subrange#16680576, supplyingPlant#16680577, productGroup#16680578, product#16680579, orderDateTime#16680580, availabilityDateTime#16680581, nextAvailabilityDateTime#16680582, sourceOfSupplyUuid#16680584, isFallbackOrderOnly#16680587, splitIndicator#16680589L, previousOrderProposal#16680590L, worklistShardItemId#16680593L, orderProposalItemGroupId#16680594, externalProductId#16680595, externalPlantId#16680596, logisticUnits#16680597, orderQuantityBaseUom#16680598, orderQuantityBaseUomUuid#16680599, minimumOrderQuantity#16680600, constraintLabels#16680601, constraintOperators#16680602, constraintValues#16680603, netPriceAmount#16680606, netPriceCurrencyCode#16680607, netPriceQuantity#16680608, netPriceQuantityUom#16680609, netPriceQuantityUomUuid#16680610, measurements#16680611, originalReplenishmentRunId#16680612L, optimizationGroups#16680613, shardId#16680614, sequenceId#16680592]
(23) Filter [codegen id : 3]
Input [38]: [orderProposalId#16680570L, orderProposalItemId#16680571, supplierGroup#16680572, supplier#16680573, plant#16680574, deliveryDateTime#16680575, subrange#16680576, supplyingPlant#16680577, productGroup#16680578, product#16680579, orderDateTime#16680580, availabilityDateTime#16680581, nextAvailabilityDateTime#16680582, sourceOfSupplyUuid#16680584, isFallbackOrderOnly#16680587, splitIndicator#16680589L, previousOrderProposal#16680590L, worklistShardItemId#16680593L, orderProposalItemGroupId#16680594, externalProductId#16680595, externalPlantId#16680596, logisticUnits#16680597, orderQuantityBaseUom#16680598, orderQuantityBaseUomUuid#16680599, minimumOrderQuantity#16680600, constraintLabels#16680601, constraintOperators#16680602, constraintValues#16680603, netPriceAmount#16680606, netPriceCurrencyCode#16680607, netPriceQuantity#16680608, netPriceQuantityUom#16680609, netPriceQuantityUomUuid#16680610, measurements#16680611, originalReplenishmentRunId#16680612L, optimizationGroups#16680613, shardId#16680614, sequenceId#16680592]
Condition : isnotnull(worklistShardItemId#16680593L)
(24) Project [codegen id : 3]
Output [36]: [orderProposalId#16680570L, orderProposalItemId#16680571, supplierGroup#16680572, supplier#16680573, plant#16680574, deliveryDateTime#16680575, subrange#16680576, supplyingPlant#16680577, productGroup#16680578, product#16680579, orderDateTime#16680580, availabilityDateTime#16680581, nextAvailabilityDateTime#16680582, sourceOfSupplyUuid#16680584, isFallbackOrderOnly#16680587, splitIndicator#16680589L, previousOrderProposal#16680590L, worklistShardItemId#16680593L, orderProposalItemGroupId#16680594, externalProductId#16680595, externalPlantId#16680596, logisticUnits#16680597, orderQuantityBaseUom#16680598, orderQuantityBaseUomUuid#16680599, minimumOrderQuantity#16680600, constraintLabels#16680601, constraintOperators#16680602, constraintValues#16680603, netPriceAmount#16680606, netPriceCurrencyCode#16680607, netPriceQuantity#16680608, netPriceQuantityUom#16680609, netPriceQuantityUomUuid#16680610, measurements#16680611, originalReplenishmentRunId#16680612L, optimizationGroups#16680613]
Input [38]: [orderProposalId#16680570L, orderProposalItemId#16680571, supplierGroup#16680572, supplier#16680573, plant#16680574, deliveryDateTime#16680575, subrange#16680576, supplyingPlant#16680577, productGroup#16680578, product#16680579, orderDateTime#16680580, availabilityDateTime#16680581, nextAvailabilityDateTime#16680582, sourceOfSupplyUuid#16680584, isFallbackOrderOnly#16680587, splitIndicator#16680589L, previousOrderProposal#16680590L, worklistShardItemId#16680593L, orderProposalItemGroupId#16680594, externalProductId#16680595, externalPlantId#16680596, logisticUnits#16680597, orderQuantityBaseUom#16680598, orderQuantityBaseUomUuid#16680599, minimumOrderQuantity#16680600, constraintLabels#16680601, constraintOperators#16680602, constraintValues#16680603, netPriceAmount#16680606, netPriceCurrencyCode#16680607, netPriceQuantity#16680608, netPriceQuantityUom#16680609, netPriceQuantityUomUuid#16680610, measurements#16680611, originalReplenishmentRunId#16680612L, optimizationGroups#16680613, shardId#16680614, sequenceId#16680592]
(25) Exchange
Input [36]: [orderProposalId#16680570L, orderProposalItemId#16680571, supplierGroup#16680572, supplier#16680573, plant#16680574, deliveryDateTime#16680575, subrange#16680576, supplyingPlant#16680577, productGroup#16680578, product#16680579, orderDateTime#16680580, availabilityDateTime#16680581, nextAvailabilityDateTime#16680582, sourceOfSupplyUuid#16680584, isFallbackOrderOnly#16680587, splitIndicator#16680589L, previousOrderProposal#16680590L, worklistShardItemId#16680593L, orderProposalItemGroupId#16680594, externalProductId#16680595, externalPlantId#16680596, logisticUnits#16680597, orderQuantityBaseUom#16680598, orderQuantityBaseUomUuid#16680599, minimumOrderQuantity#16680600, constraintLabels#16680601, constraintOperators#16680602, constraintValues#16680603, netPriceAmount#16680606, netPriceCurrencyCode#16680607, netPriceQuantity#16680608, netPriceQuantityUom#16680609, netPriceQuantityUomUuid#16680610, measurements#16680611, originalReplenishmentRunId#16680612L, optimizationGroups#16680613]
Arguments: hashpartitioning(worklistShardItemId#16680593L, 30), REPARTITION_BY_NUM, [plan_id=4960631]
(26) Project [codegen id : 4]
Output [36]: [worklistShardItemId#16680593L, orderProposalId#16680570L, orderProposalItemId#16680571, orderProposalItemGroupId#16680594, originalReplenishmentRunId#16680612L, splitIndicator#16680589L, previousOrderProposal#16680590L, sourceOfSupplyUuid#16680584, supplierGroup#16680572, supplier#16680573, subrange#16680576, product#16680579, plant#16680574, orderDateTime#16680580, deliveryDateTime#16680575, availabilityDateTime#16680581, nextAvailabilityDateTime#16680582, isFallbackOrderOnly#16680587, orderQuantityBaseUom#16680598, orderQuantityBaseUomUuid#16680599, netPriceQuantity#16680608, netPriceQuantityUom#16680609, netPriceQuantityUomUuid#16680610, netPriceAmount#16680606, netPriceCurrencyCode#16680607, measurements#16680611, minimumOrderQuantity#16680600, constraintLabels#16680601, constraintOperators#16680602, constraintValues#16680603, logisticUnits#16680597, optimizationGroups#16680613, externalProductId#16680595, externalPlantId#16680596, supplyingPlant#16680577, productGroup#16680578]
Input [36]: [orderProposalId#16680570L, orderProposalItemId#16680571, supplierGroup#16680572, supplier#16680573, plant#16680574, deliveryDateTime#16680575, subrange#16680576, supplyingPlant#16680577, productGroup#16680578, product#16680579, orderDateTime#16680580, availabilityDateTime#16680581, nextAvailabilityDateTime#16680582, sourceOfSupplyUuid#16680584, isFallbackOrderOnly#16680587, splitIndicator#16680589L, previousOrderProposal#16680590L, worklistShardItemId#16680593L, orderProposalItemGroupId#16680594, externalProductId#16680595, externalPlantId#16680596, logisticUnits#16680597, orderQuantityBaseUom#16680598, orderQuantityBaseUomUuid#16680599, minimumOrderQuantity#16680600, constraintLabels#16680601, constraintOperators#16680602, constraintValues#16680603, netPriceAmount#16680606, netPriceCurrencyCode#16680607, netPriceQuantity#16680608, netPriceQuantityUom#16680609, netPriceQuantityUomUuid#16680610, measurements#16680611, originalReplenishmentRunId#16680612L, optimizationGroups#16680613]
(27) Sort [codegen id : 4]
Input [36]: [worklistShardItemId#16680593L, orderProposalId#16680570L, orderProposalItemId#16680571, orderProposalItemGroupId#16680594, originalReplenishmentRunId#16680612L, splitIndicator#16680589L, previousOrderProposal#16680590L, sourceOfSupplyUuid#16680584, supplierGroup#16680572, supplier#16680573, subrange#16680576, product#16680579, plant#16680574, orderDateTime#16680580, deliveryDateTime#16680575, availabilityDateTime#16680581, nextAvailabilityDateTime#16680582, isFallbackOrderOnly#16680587, orderQuantityBaseUom#16680598, orderQuantityBaseUomUuid#16680599, netPriceQuantity#16680608, netPriceQuantityUom#16680609, netPriceQuantityUomUuid#16680610, netPriceAmount#16680606, netPriceCurrencyCode#16680607, measurements#16680611, minimumOrderQuantity#16680600, constraintLabels#16680601, constraintOperators#16680602, constraintValues#16680603, logisticUnits#16680597, optimizationGroups#16680613, externalProductId#16680595, externalPlantId#16680596, supplyingPlant#16680577, productGroup#16680578]
Arguments: [worklistShardItemId#16680593L ASC NULLS FIRST], false, 0
(28) SortMergeJoin [codegen id : 5]
Left keys [1]: [worklistShardItemId#16680296L]
Right keys [1]: [worklistShardItemId#16680593L]
Join type: LeftOuter
Join condition: (shardId#16679725 = 0_1_10000000548)
(29) Project [codegen id : 5]
Output [39]: [shardId#16679725, worklistShardItemId#16680296L, quantityAfterProdPlantOptimization#16680297, qty#16680298, orderProposalId#16680570L, originalReplenishmentRunId#16680612L, supplierGroup#16680572, supplier#16680573, supplyingPlant#16680577, productGroup#16680578, product#16680579, plant#16680574, subrange#16680576, orderDateTime#16680580, deliveryDateTime#16680575, availabilityDateTime#16680581, nextAvailabilityDateTime#16680582, constraintValues#16680603, constraintOperators#16680602, constraintLabels#16680601, logisticUnits#16680597, orderQuantityBaseUom#16680598, orderQuantityBaseUomUuid#16680599, splitIndicator#16680589L, netPriceAmount#16680606, netPriceCurrencyCode#16680607, netPriceQuantity#16680608, netPriceQuantityUom#16680609, netPriceQuantityUomUuid#16680610, sourceOfSupplyUuid#16680584, minimumOrderQuantity#16680600, orderProposalItemId#16680571, orderProposalItemGroupId#16680594, optimizationGroups#16680613, measurements#16680611, externalProductId#16680595, externalPlantId#16680596, previousOrderProposal#16680590L, isFallbackOrderOnly#16680587]
Input [40]: [shardId#16679725, worklistShardItemId#16680296L, quantityAfterProdPlantOptimization#16680297, qty#16680298, worklistShardItemId#16680593L, orderProposalId#16680570L, orderProposalItemId#16680571, orderProposalItemGroupId#16680594, originalReplenishmentRunId#16680612L, splitIndicator#16680589L, previousOrderProposal#16680590L, sourceOfSupplyUuid#16680584, supplierGroup#16680572, supplier#16680573, subrange#16680576, product#16680579, plant#16680574, orderDateTime#16680580, deliveryDateTime#16680575, availabilityDateTime#16680581, nextAvailabilityDateTime#16680582, isFallbackOrderOnly#16680587, orderQuantityBaseUom#16680598, orderQuantityBaseUomUuid#16680599, netPriceQuantity#16680608, netPriceQuantityUom#16680609, netPriceQuantityUomUuid#16680610, netPriceAmount#16680606, netPriceCurrencyCode#16680607, measurements#16680611, minimumOrderQuantity#16680600, constraintLabels#16680601, constraintOperators#16680602, constraintValues#16680603, logisticUnits#16680597, optimizationGroups#16680613, externalProductId#16680595, externalPlantId#16680596, supplyingPlant#16680577, productGroup#16680578]
(30) Exchange
Input [39]: [shardId#16679725, worklistShardItemId#16680296L, quantityAfterProdPlantOptimization#16680297, qty#16680298, orderProposalId#16680570L, originalReplenishmentRunId#16680612L, supplierGroup#16680572, supplier#16680573, supplyingPlant#16680577, productGroup#16680578, product#16680579, plant#16680574, subrange#16680576, orderDateTime#16680580, deliveryDateTime#16680575, availabilityDateTime#16680581, nextAvailabilityDateTime#16680582, constraintValues#16680603, constraintOperators#16680602, constraintLabels#16680601, logisticUnits#16680597, orderQuantityBaseUom#16680598, orderQuantityBaseUomUuid#16680599, splitIndicator#16680589L, netPriceAmount#16680606, netPriceCurrencyCode#16680607, netPriceQuantity#16680608, netPriceQuantityUom#16680609, netPriceQuantityUomUuid#16680610, sourceOfSupplyUuid#16680584, minimumOrderQuantity#16680600, orderProposalItemId#16680571, orderProposalItemGroupId#16680594, optimizationGroups#16680613, measurements#16680611, externalProductId#16680595, externalPlantId#16680596, previousOrderProposal#16680590L, isFallbackOrderOnly#16680587]
Arguments: hashpartitioning(shardId#16679725, worklistShardItemId#16680296L, 30), ENSURE_REQUIREMENTS, [plan_id=4960640]
(31) Sort [codegen id : 6]
Input [39]: [shardId#16679725, worklistShardItemId#16680296L, quantityAfterProdPlantOptimization#16680297, qty#16680298, orderProposalId#16680570L, originalReplenishmentRunId#16680612L, supplierGroup#16680572, supplier#16680573, supplyingPlant#16680577, productGroup#16680578, product#16680579, plant#16680574, subrange#16680576, orderDateTime#16680580, deliveryDateTime#16680575, availabilityDateTime#16680581, nextAvailabilityDateTime#16680582, constraintValues#16680603, constraintOperators#16680602, constraintLabels#16680601, logisticUnits#16680597, orderQuantityBaseUom#16680598, orderQuantityBaseUomUuid#16680599, splitIndicator#16680589L, netPriceAmount#16680606, netPriceCurrencyCode#16680607, netPriceQuantity#16680608, netPriceQuantityUom#16680609, netPriceQuantityUomUuid#16680610, sourceOfSupplyUuid#16680584, minimumOrderQuantity#16680600, orderProposalItemId#16680571, orderProposalItemGroupId#16680594, optimizationGroups#16680613, measurements#16680611, externalProductId#16680595, externalPlantId#16680596, previousOrderProposal#16680590L, isFallbackOrderOnly#16680587]
Arguments: [shardId#16679725 ASC NULLS FIRST, worklistShardItemId#16680296L ASC NULLS FIRST], false, 0
(32) Scan ExistingRDD [codegen id : 7]
Output [6]: [shardId#16681867, worklistShardItemId#16681868L, qty#16681869, demandChannel#16681870, demandStream#16681871, kpis#16681872]
Arguments: [shardId#16681867, worklistShardItemId#16681868L, qty#16681869, demandChannel#16681870, demandStream#16681871, kpis#16681872], MapPartitionsRDD[709298] at start at FileStorageAdapterImpl.java:596, ExistingRDD, UnknownPartitioning(0)
(33) Filter [codegen id : 7]
Input [6]: [shardId#16681867, worklistShardItemId#16681868L, qty#16681869, demandChannel#16681870, demandStream#16681871, kpis#16681872]
Condition : (((isnull(qty#16681869) AND isnull(demandChannel#16681870)) AND isnull(demandStream#16681871)) AND (isnotnull(shardId#16681867) AND isnotnull(worklistShardItemId#16681868L)))
(34) Project [codegen id : 7]
Output [3]: [shardId#16681867, worklistShardItemId#16681868L, coalesce(kpis#16681872, []) AS prodLocSpecificKpis#16681873]
Input [6]: [shardId#16681867, worklistShardItemId#16681868L, qty#16681869, demandChannel#16681870, demandStream#16681871, kpis#16681872]
(35) Exchange
Input [3]: [shardId#16681867, worklistShardItemId#16681868L, prodLocSpecificKpis#16681873]
Arguments: hashpartitioning(shardId#16681867, worklistShardItemId#16681868L, 30), ENSURE_REQUIREMENTS, [plan_id=4960646]
(36) Sort [codegen id : 8]
Input [3]: [shardId#16681867, worklistShardItemId#16681868L, prodLocSpecificKpis#16681873]
Arguments: [shardId#16681867 ASC NULLS FIRST, worklistShardItemId#16681868L ASC NULLS FIRST], false, 0
(37) SortMergeJoin [codegen id : 9]
Left keys [2]: [shardId#16679725, worklistShardItemId#16680296L]
Right keys [2]: [shardId#16681867, worklistShardItemId#16681868L]
Join type: LeftOuter
Join condition: None
(38) Project [codegen id : 9]
Output [40]: [shardId#16679725, worklistShardItemId#16680296L, quantityAfterProdPlantOptimization#16680297, qty#16680298, orderProposalId#16680570L, originalReplenishmentRunId#16680612L, supplierGroup#16680572, supplier#16680573, supplyingPlant#16680577, productGroup#16680578, product#16680579, plant#16680574, subrange#16680576, orderDateTime#16680580, deliveryDateTime#16680575, availabilityDateTime#16680581, nextAvailabilityDateTime#16680582, constraintValues#16680603, constraintOperators#16680602, constraintLabels#16680601, logisticUnits#16680597, orderQuantityBaseUom#16680598, orderQuantityBaseUomUuid#16680599, splitIndicator#16680589L, netPriceAmount#16680606, netPriceCurrencyCode#16680607, netPriceQuantity#16680608, netPriceQuantityUom#16680609, netPriceQuantityUomUuid#16680610, sourceOfSupplyUuid#16680584, minimumOrderQuantity#16680600, orderProposalItemId#16680571, orderProposalItemGroupId#16680594, optimizationGroups#16680613, measurements#16680611, externalProductId#16680595, externalPlantId#16680596, previousOrderProposal#16680590L, isFallbackOrderOnly#16680587, coalesce(prodLocSpecificKpis#16681873, []) AS prodLocSpecificKpis#16681874]
Input [42]: [shardId#16679725, worklistShardItemId#16680296L, quantityAfterProdPlantOptimization#16680297, qty#16680298, orderProposalId#16680570L, originalReplenishmentRunId#16680612L, supplierGroup#16680572, supplier#16680573, supplyingPlant#16680577, productGroup#16680578, product#16680579, plant#16680574, subrange#16680576, orderDateTime#16680580, deliveryDateTime#16680575, availabilityDateTime#16680581, nextAvailabilityDateTime#16680582, constraintValues#16680603, constraintOperators#16680602, constraintLabels#16680601, logisticUnits#16680597, orderQuantityBaseUom#16680598, orderQuantityBaseUomUuid#16680599, splitIndicator#16680589L, netPriceAmount#16680606, netPriceCurrencyCode#16680607, netPriceQuantity#16680608, netPriceQuantityUom#16680609, netPriceQuantityUomUuid#16680610, sourceOfSupplyUuid#16680584, minimumOrderQuantity#16680600, orderProposalItemId#16680571, orderProposalItemGroupId#16680594, optimizationGroups#16680613, measurements#16680611, externalProductId#16680595, externalPlantId#16680596, previousOrderProposal#16680590L, isFallbackOrderOnly#16680587, shardId#16681867, worklistShardItemId#16681868L, prodLocSpecificKpis#16681873]
(39) Scan ExistingRDD [codegen id : 10]
Output [6]: [shardId#16681883, worklistShardItemId#16681884L, qty#16681885, demandChannel#16681886, demandStream#16681887, kpis#16681888]
Arguments: [shardId#16681883, worklistShardItemId#16681884L, qty#16681885, demandChannel#16681886, demandStream#16681887, kpis#16681888], MapPartitionsRDD[709298] at start at FileStorageAdapterImpl.java:596, ExistingRDD, UnknownPartitioning(0)
(40) Filter [codegen id : 10]
Input [6]: [shardId#16681883, worklistShardItemId#16681884L, qty#16681885, demandChannel#16681886, demandStream#16681887, kpis#16681888]
Condition : ((((isnull(qty#16681885) AND isnotnull(demandChannel#16681886)) AND isnotnull(demandStream#16681887)) AND (size(kpis#16681888, true) > 0)) AND (isnotnull(shardId#16681883) AND isnotnull(worklistShardItemId#16681884L)))
(41) Project [codegen id : 10]
Output [5]: [shardId#16681883, worklistShardItemId#16681884L, demandChannel#16681886, demandStream#16681887, kpis#16681888]
Input [6]: [shardId#16681883, worklistShardItemId#16681884L, qty#16681885, demandChannel#16681886, demandStream#16681887, kpis#16681888]
(42) ObjectHashAggregate
Input [5]: [shardId#16681883, worklistShardItemId#16681884L, demandChannel#16681886, demandStream#16681887, kpis#16681888]
Keys [2]: [shardId#16681883, worklistShardItemId#16681884L]
Functions [1]: [partial_collect_list(struct(demandChannel, demandChannel#16681886, demandStream, demandStream#16681887, kpis, kpis#16681888), 0, 0)]
Aggregate Attributes [1]: [buf#16682063]
Results [3]: [shardId#16681883, worklistShardItemId#16681884L, buf#16682064]
(43) Exchange
Input [3]: [shardId#16681883, worklistShardItemId#16681884L, buf#16682064]
Arguments: hashpartitioning(shardId#16681883, worklistShardItemId#16681884L, 30), ENSURE_REQUIREMENTS, [plan_id=4960657]
(44) ObjectHashAggregate
Input [3]: [shardId#16681883, worklistShardItemId#16681884L, buf#16682064]
Keys [2]: [shardId#16681883, worklistShardItemId#16681884L]
Functions [1]: [collect_list(struct(demandChannel, demandChannel#16681886, demandStream, demandStream#16681887, kpis, kpis#16681888), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(demandChannel, demandChannel#16681886, demandStream, demandStream#16681887, kpis, kpis#16681888), 0, 0)#16681882]
Results [3]: [shardId#16681883, worklistShardItemId#16681884L, collect_list(struct(demandChannel, demandChannel#16681886, demandStream, demandStream#16681887, kpis, kpis#16681888), 0, 0)#16681882 AS channelStreamSpecificKpis#16681875]
(45) Sort [codegen id : 11]
Input [3]: [shardId#16681883, worklistShardItemId#16681884L, channelStreamSpecificKpis#16681875]
Arguments: [shardId#16681883 ASC NULLS FIRST, worklistShardItemId#16681884L ASC NULLS FIRST], false, 0
(46) SortMergeJoin [codegen id : 12]
Left keys [2]: [shardId#16679725, worklistShardItemId#16680296L]
Right keys [2]: [shardId#16681883, worklistShardItemId#16681884L]
Join type: LeftOuter
Join condition: None
(47) Project [codegen id : 12]
Output [41]: [shardId#16679725, worklistShardItemId#16680296L, quantityAfterProdPlantOptimization#16680297, qty#16680298, orderProposalId#16680570L, originalReplenishmentRunId#16680612L, supplierGroup#16680572, supplier#16680573, supplyingPlant#16680577, productGroup#16680578, product#16680579, plant#16680574, subrange#16680576, orderDateTime#16680580, deliveryDateTime#16680575, availabilityDateTime#16680581, nextAvailabilityDateTime#16680582, constraintValues#16680603, constraintOperators#16680602, constraintLabels#16680601, logisticUnits#16680597, orderQuantityBaseUom#16680598, orderQuantityBaseUomUuid#16680599, splitIndicator#16680589L, netPriceAmount#16680606, netPriceCurrencyCode#16680607, netPriceQuantity#16680608, netPriceQuantityUom#16680609, netPriceQuantityUomUuid#16680610, sourceOfSupplyUuid#16680584, minimumOrderQuantity#16680600, orderProposalItemId#16680571, orderProposalItemGroupId#16680594, optimizationGroups#16680613, measurements#16680611, externalProductId#16680595, externalPlantId#16680596, previousOrderProposal#16680590L, isFallbackOrderOnly#16680587, prodLocSpecificKpis#16681874, coalesce(channelStreamSpecificKpis#16681875, []) AS channelStreamSpecificKpis#16681889]
Input [43]: [shardId#16679725, worklistShardItemId#16680296L, quantityAfterProdPlantOptimization#16680297, qty#16680298, orderProposalId#16680570L, originalReplenishmentRunId#16680612L, supplierGroup#16680572, supplier#16680573, supplyingPlant#16680577, productGroup#16680578, product#16680579, plant#16680574, subrange#16680576, orderDateTime#16680580, deliveryDateTime#16680575, availabilityDateTime#16680581, nextAvailabilityDateTime#16680582, constraintValues#16680603, constraintOperators#16680602, constraintLabels#16680601, logisticUnits#16680597, orderQuantityBaseUom#16680598, orderQuantityBaseUomUuid#16680599, splitIndicator#16680589L, netPriceAmount#16680606, netPriceCurrencyCode#16680607, netPriceQuantity#16680608, netPriceQuantityUom#16680609, netPriceQuantityUomUuid#16680610, sourceOfSupplyUuid#16680584, minimumOrderQuantity#16680600, orderProposalItemId#16680571, orderProposalItemGroupId#16680594, optimizationGroups#16680613, measurements#16680611, externalProductId#16680595, externalPlantId#16680596, previousOrderProposal#16680590L, isFallbackOrderOnly#16680587, prodLocSpecificKpis#16681874, shardId#16681883, worklistShardItemId#16681884L, channelStreamSpecificKpis#16681875]
(48) Scan ExistingRDD [codegen id : 13]
Output [6]: [shardId#16681896, worklistShardItemId#16681897L, qty#16681898, demandChannel#16681899, demandStream#16681900, kpis#16681901]
Arguments: [shardId#16681896, worklistShardItemId#16681897L, qty#16681898, demandChannel#16681899, demandStream#16681900, kpis#16681901], MapPartitionsRDD[709298] at start at FileStorageAdapterImpl.java:596, ExistingRDD, UnknownPartitioning(0)
(49) Filter [codegen id : 13]
Input [6]: [shardId#16681896, worklistShardItemId#16681897L, qty#16681898, demandChannel#16681899, demandStream#16681900, kpis#16681901]
Condition : ((isnotnull(qty#16681898) AND isnotnull(kpis#16681901)) AND (isnotnull(shardId#16681896) AND isnotnull(worklistShardItemId#16681897L)))
(50) Project [codegen id : 13]
Output [4]: [shardId#16681896, worklistShardItemId#16681897L, qty#16681898, kpis#16681901]
Input [6]: [shardId#16681896, worklistShardItemId#16681897L, qty#16681898, demandChannel#16681899, demandStream#16681900, kpis#16681901]
(51) ObjectHashAggregate
Input [4]: [shardId#16681896, worklistShardItemId#16681897L, qty#16681898, kpis#16681901]
Keys [2]: [shardId#16681896, worklistShardItemId#16681897L]
Functions [1]: [partial_collect_list(struct(qty, qty#16681898, kpis, kpis#16681901), 0, 0)]
Aggregate Attributes [1]: [buf#16682065]
Results [3]: [shardId#16681896, worklistShardItemId#16681897L, buf#16682066]
(52) Exchange
Input [3]: [shardId#16681896, worklistShardItemId#16681897L, buf#16682066]
Arguments: hashpartitioning(shardId#16681896, worklistShardItemId#16681897L, 30), ENSURE_REQUIREMENTS, [plan_id=4960669]
(53) ObjectHashAggregate
Input [3]: [shardId#16681896, worklistShardItemId#16681897L, buf#16682066]
Keys [2]: [shardId#16681896, worklistShardItemId#16681897L]
Functions [1]: [collect_list(struct(qty, qty#16681898, kpis, kpis#16681901), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(qty, qty#16681898, kpis, kpis#16681901), 0, 0)#16681895]
Results [3]: [shardId#16681896, worklistShardItemId#16681897L, map_from_entries(collect_list(struct(qty, qty#16681898, kpis, kpis#16681901), 0, 0)#16681895) AS quantityKpis#16681890]
(54) Sort [codegen id : 14]
Input [3]: [shardId#16681896, worklistShardItemId#16681897L, quantityKpis#16681890]
Arguments: [shardId#16681896 ASC NULLS FIRST, worklistShardItemId#16681897L ASC NULLS FIRST], false, 0
(55) SortMergeJoin [codegen id : 15]
Left keys [2]: [shardId#16679725, worklistShardItemId#16680296L]
Right keys [2]: [shardId#16681896, worklistShardItemId#16681897L]
Join type: LeftOuter
Join condition: None
(56) Project [codegen id : 15]
Output [42]: [shardId#16679725, worklistShardItemId#16680296L, quantityAfterProdPlantOptimization#16680297, qty#16680298, orderProposalId#16680570L, originalReplenishmentRunId#16680612L, supplierGroup#16680572, supplier#16680573, supplyingPlant#16680577, productGroup#16680578, product#16680579, plant#16680574, subrange#16680576, orderDateTime#16680580, deliveryDateTime#16680575, availabilityDateTime#16680581, nextAvailabilityDateTime#16680582, constraintValues#16680603, constraintOperators#16680602, constraintLabels#16680601, logisticUnits#16680597, orderQuantityBaseUom#16680598, orderQuantityBaseUomUuid#16680599, splitIndicator#16680589L, netPriceAmount#16680606, netPriceCurrencyCode#16680607, netPriceQuantity#16680608, netPriceQuantityUom#16680609, netPriceQuantityUomUuid#16680610, sourceOfSupplyUuid#16680584, minimumOrderQuantity#16680600, orderProposalItemId#16680571, orderProposalItemGroupId#16680594, optimizationGroups#16680613, measurements#16680611, externalProductId#16680595, externalPlantId#16680596, previousOrderProposal#16680590L, isFallbackOrderOnly#16680587, prodLocSpecificKpis#16681874, channelStreamSpecificKpis#16681889, coalesce(quantityKpis#16681890, map(keys: [], values: [])) AS quantityKpis#16681902]
Input [44]: [shardId#16679725, worklistShardItemId#16680296L, quantityAfterProdPlantOptimization#16680297, qty#16680298, orderProposalId#16680570L, originalReplenishmentRunId#16680612L, supplierGroup#16680572, supplier#16680573, supplyingPlant#16680577, productGroup#16680578, product#16680579, plant#16680574, subrange#16680576, orderDateTime#16680580, deliveryDateTime#16680575, availabilityDateTime#16680581, nextAvailabilityDateTime#16680582, constraintValues#16680603, constraintOperators#16680602, constraintLabels#16680601, logisticUnits#16680597, orderQuantityBaseUom#16680598, orderQuantityBaseUomUuid#16680599, splitIndicator#16680589L, netPriceAmount#16680606, netPriceCurrencyCode#16680607, netPriceQuantity#16680608, netPriceQuantityUom#16680609, netPriceQuantityUomUuid#16680610, sourceOfSupplyUuid#16680584, minimumOrderQuantity#16680600, orderProposalItemId#16680571, orderProposalItemGroupId#16680594, optimizationGroups#16680613, measurements#16680611, externalProductId#16680595, externalPlantId#16680596, previousOrderProposal#16680590L, isFallbackOrderOnly#16680587, prodLocSpecificKpis#16681874, channelStreamSpecificKpis#16681889, shardId#16681896, worklistShardItemId#16681897L, quantityKpis#16681890]
(57) Filter [codegen id : 1]
Input [39]: [availabilityDateTime#16680547, channelStreamSpecificKpis#16681889, constraintLabels#16680559, constraintOperators#16680560, constraintValues#16680562, deliveryDateTime#16680546, isFallbackOrderOnly#16680549, logisticUnits#16680564, measurements#16680557, minimumOrderQuantity#16680558, netPriceAmount#16680555, netPriceCurrencyCode#16680556, netPriceQuantity#16680552, netPriceQuantityUom#16680553, netPriceQuantityUomUuid#16680554, nextAvailabilityDateTime#16680548, optimizationGroups#16680565, orderDateTime#16680545, orderProposalId#16680527L, orderProposalItemGroupId#16680529, orderProposalItemId#16680528, orderQuantityBaseUom#16680550, orderQuantityBaseUomUuid#16680551, originalReplenishmentRunId#16680530L, plant#16680541, previousOrderProposal#16680533L, prodLocSpecificKpis#16681874, product#16680540, productGroup#16680569, qty#16680298, quantityAfterProdPlantOptimization#16680297, quantityKpis#16681902, shardId#16679725, sourceOfSupplyUuid#16680536, splitIndicator#16680532L, subrange#16680539, supplier#16680538, supplierGroup#16680537, supplyingPlant#16680568]
Condition : NOT (isFallbackOrderOnly#16680549 <=> true)
(58) Project [codegen id : 1]
Output [36]: [shardId#16679725, quantityAfterProdPlantOptimization#16680297, qty#16680298, orderProposalId#16680527L, originalReplenishmentRunId#16680530L, supplierGroup#16680537, supplier#16680538, supplyingPlant#16680568, productGroup#16680569, product#16680540, plant#16680541, subrange#16680539, orderDateTime#16680545, deliveryDateTime#16680546, availabilityDateTime#16680547, nextAvailabilityDateTime#16680548, logisticUnits#16680564, orderQuantityBaseUom#16680550, orderQuantityBaseUomUuid#16680551, splitIndicator#16680532L, netPriceAmount#16680555, netPriceCurrencyCode#16680556, netPriceQuantity#16680552, netPriceQuantityUom#16680553, netPriceQuantityUomUuid#16680554, sourceOfSupplyUuid#16680536, minimumOrderQuantity#16680558, orderProposalItemId#16680528, orderProposalItemGroupId#16680529, optimizationGroups#16680565, measurements#16680557, previousOrderProposal#16680533L, prodLocSpecificKpis#16681874, channelStreamSpecificKpis#16681889, quantityKpis#16681902, arrays_zip(constraintLabels#16680559, constraintOperators#16680560, constraintValues#16680562, constraintLabels, constraintOperators, constraintValues) AS constraintStructArray#16682316]
Input [39]: [availabilityDateTime#16680547, channelStreamSpecificKpis#16681889, constraintLabels#16680559, constraintOperators#16680560, constraintValues#16680562, deliveryDateTime#16680546, isFallbackOrderOnly#16680549, logisticUnits#16680564, measurements#16680557, minimumOrderQuantity#16680558, netPriceAmount#16680555, netPriceCurrencyCode#16680556, netPriceQuantity#16680552, netPriceQuantityUom#16680553, netPriceQuantityUomUuid#16680554, nextAvailabilityDateTime#16680548, optimizationGroups#16680565, orderDateTime#16680545, orderProposalId#16680527L, orderProposalItemGroupId#16680529, orderProposalItemId#16680528, orderQuantityBaseUom#16680550, orderQuantityBaseUomUuid#16680551, originalReplenishmentRunId#16680530L, plant#16680541, previousOrderProposal#16680533L, prodLocSpecificKpis#16681874, product#16680540, productGroup#16680569, qty#16680298, quantityAfterProdPlantOptimization#16680297, quantityKpis#16681902, shardId#16679725, sourceOfSupplyUuid#16680536, splitIndicator#16680532L, subrange#16680539, supplier#16680538, supplierGroup#16680537, supplyingPlant#16680568]
(59) Project
Output [37]: [shardId#16679725, qty#16680298, orderProposalId#16680527L, originalReplenishmentRunId#16680530L, supplierGroup#16680537, supplier#16680538, supplyingPlant#16680568, productGroup#16680569, product#16680540, plant#16680541, subrange#16680539, orderDateTime#16680545, deliveryDateTime#16680546, availabilityDateTime#16680547, nextAvailabilityDateTime#16680548, logisticUnits#16680564, orderQuantityBaseUom#16680550, orderQuantityBaseUomUuid#16680551, splitIndicator#16680532L, netPriceAmount#16680555, netPriceCurrencyCode#16680556, netPriceQuantity#16680552, netPriceQuantityUom#16680553, netPriceQuantityUomUuid#16680554, sourceOfSupplyUuid#16680536, orderProposalItemId#16680528, orderProposalItemGroupId#16680529, optimizationGroups#16680565, measurements#16680557, previousOrderProposal#16680533L, prodLocSpecificKpis#16681874, channelStreamSpecificKpis#16681889, quantityKpis#16681902, struct(minServiceLevel, array_min(filter(constraintStructArray#16682316, lambdafunction((lambda x_55135#16682323.constraintLabels = ServiceLevel), lambda x_55135#16682323, false)).constraintValues), minServiceLevelMinStock, array_min(filter(constraintStructArray#16682316, lambdafunction((lambda x_55136#16682324.constraintLabels = ServiceLevelMinimumStock), lambda x_55136#16682324, false)).constraintValues), maxServiceLevelEndOfListing, array_min(filter(constraintStructArray#16682316, lambdafunction((lambda x_55137#16682325.constraintLabels = ServiceLevelAtStartOfDelisting), lambda x_55137#16682325, false)).constraintValues), maxRoc, array_min(filter(constraintStructArray#16682316, lambdafunction((lambda x_55138#16682326.constraintLabels = RangeOfCoverage), lambda x_55138#16682326, false)).constraintValues), minimumOrderQuantity, minimumOrderQuantity#16680558, endOfListingDateTime, coalesce(filter(prodLocSpecificKpis#16681874, lambdafunction((lambda x_55139#16682327.label = NonListingStartTimestamp), lambda x_55139#16682327, false))[0].dateTime, 1970-01-01 00:00:00)) AS constraintBenchmark#16682322, CASE WHEN (qty#16680298 <=> quantityAfterProdPlantOptimization#16680297) THEN array(struct(isProposedCandidate, true, isProdlocOptimalCandidate, true, candidateOrderQuantity, coalesce((qty#16680298 * (cast(element_at(filter(logisticUnits#16680564, lambdafunction(lambda x_55140#16682395.isOrderUnit, lambda x_55140#16682395, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#16680564, lambdafunction(lambda x_55140#16682396.isOrderUnit, lambda x_55140#16682396, false)), 1, None, false).numerator as double))), qty#16680298), orderQuantityUom, coalesce(element_at(filter(logisticUnits#16680564, lambdafunction(lambda x_55140#16682397.isOrderUnit, lambda x_55140#16682397, false)), 1, None, false).uom, orderQuantityBaseUom#16680550), orderQuantityUomUuid, coalesce(element_at(filter(logisticUnits#16680564, lambdafunction(lambda x_55140#16682398.isOrderUnit, lambda x_55140#16682398, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#16680551), candidateOrderQuantityInBaseUnit, qty#16680298, orderQuantityBaseUom, orderQuantityBaseUom#16680550, orderQuantityBaseUomUuid, orderQuantityBaseUomUuid#16680551, candidateOrderQuantityInPreferredUnit, coalesce(array_min(transform(filter(logisticUnits#16680564, lambdafunction((lambda x_55142#16682399.isPreferred AND (((qty#16680298 * cast(lambda x_55142#16682399.denominator as double)) % cast(lambda x_55142#16682399.numerator as double)) = 0.0)), lambda x_55142#16682399, false)), lambdafunction(struct(inPreferredQuantity, ((qty#16680298 * cast(lambda x_55143#16682440.denominator as double)) / cast(lambda x_55143#16682440.numerator as double)), uom, lambda x_55143#16682440.uom, uomUuid, lambda x_55143#16682440.uomUuid), lambda x_55143#16682440, false))).inPreferredQuantity, coalesce((qty#16680298 * (cast(element_at(filter(logisticUnits#16680564, lambdafunction(lambda x_55141#16682400.isOrderUnit, lambda x_55141#16682400, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#16680564, lambdafunction(lambda x_55141#16682401.isOrderUnit, lambda x_55141#16682401, false)), 1, None, false).numerator as double))), qty#16680298)), orderQuantityPreferredUom, coalesce(array_min(transform(filter(logisticUnits#16680564, lambdafunction((lambda x_55142#16682402.isPreferred AND (((qty#16680298 * cast(lambda x_55142#16682402.denominator as double)) % cast(lambda x_55142#16682402.numerator as double)) = 0.0)), lambda x_55142#16682402, false)), lambdafunction(struct(inPreferredQuantity, ((qty#16680298 * cast(lambda x_55143#16682441.denominator as double)) / cast(lambda x_55143#16682441.numerator as double)), uom, lambda x_55143#16682441.uom, uomUuid, lambda x_55143#16682441.uomUuid), lambda x_55143#16682441, false))).uom, coalesce(element_at(filter(logisticUnits#16680564, lambdafunction(lambda x_55141#16682403.isOrderUnit, lambda x_55141#16682403, false)), 1, None, false).uom, orderQuantityBaseUom#16680550)), orderQuantityPreferredUomUuid, coalesce(array_min(transform(filter(logisticUnits#16680564, lambdafunction((lambda x_55142#16682404.isPreferred AND (((qty#16680298 * cast(lambda x_55142#16682404.denominator as double)) % cast(lambda x_55142#16682404.numerator as double)) = 0.0)), lambda x_55142#16682404, false)), lambdafunction(struct(inPreferredQuantity, ((qty#16680298 * cast(lambda x_55143#16682442.denominator as double)) / cast(lambda x_55143#16682442.numerator as double)), uom, lambda x_55143#16682442.uom, uomUuid, lambda x_55143#16682442.uomUuid), lambda x_55143#16682442, false))).uomUuid, coalesce(element_at(filter(logisticUnits#16680564, lambdafunction(lambda x_55141#16682405.isOrderUnit, lambda x_55141#16682405, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#16680551)), serviceLevel, coalesce(filter(element_at(quantityKpis#16681902, qty#16680298, None, false), lambdafunction((lambda x_55148#16682406.label = ServiceLevel), lambda x_55148#16682406, false))[0].value, 0.0), serviceLevelMinStock, ... 5 more fields)) ELSE array(struct(isProposedCandidate, true, isProdlocOptimalCandidate, false, candidateOrderQuantity, coalesce((qty#16680298 * (cast(element_at(filter(logisticUnits#16680564, lambdafunction(lambda x_55140#16682410.isOrderUnit, lambda x_55140#16682410, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#16680564, lambdafunction(lambda x_55140#16682411.isOrderUnit, lambda x_55140#16682411, false)), 1, None, false).numerator as double))), qty#16680298), orderQuantityUom, coalesce(element_at(filter(logisticUnits#16680564, lambdafunction(lambda x_55140#16682412.isOrderUnit, lambda x_55140#16682412, false)), 1, None, false).uom, orderQuantityBaseUom#16680550), orderQuantityUomUuid, coalesce(element_at(filter(logisticUnits#16680564, lambdafunction(lambda x_55140#16682413.isOrderUnit, lambda x_55140#16682413, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#16680551), candidateOrderQuantityInBaseUnit, qty#16680298, orderQuantityBaseUom, orderQuantityBaseUom#16680550, orderQuantityBaseUomUuid, orderQuantityBaseUomUuid#16680551, candidateOrderQuantityInPreferredUnit, coalesce(array_min(transform(filter(logisticUnits#16680564, lambdafunction((lambda x_55142#16682414.isPreferred AND (((qty#16680298 * cast(lambda x_55142#16682414.denominator as double)) % cast(lambda x_55142#16682414.numerator as double)) = 0.0)), lambda x_55142#16682414, false)), lambdafunction(struct(inPreferredQuantity, ((qty#16680298 * cast(lambda x_55143#16682443.denominator as double)) / cast(lambda x_55143#16682443.numerator as double)), uom, lambda x_55143#16682443.uom, uomUuid, lambda x_55143#16682443.uomUuid), lambda x_55143#16682443, false))).inPreferredQuantity, coalesce((qty#16680298 * (cast(element_at(filter(logisticUnits#16680564, lambdafunction(lambda x_55141#16682415.isOrderUnit, lambda x_55141#16682415, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#16680564, lambdafunction(lambda x_55141#16682416.isOrderUnit, lambda x_55141#16682416, false)), 1, None, false).numerator as double))), qty#16680298)), orderQuantityPreferredUom, coalesce(array_min(transform(filter(logisticUnits#16680564, lambdafunction((lambda x_55142#16682417.isPreferred AND (((qty#16680298 * cast(lambda x_55142#16682417.denominator as double)) % cast(lambda x_55142#16682417.numerator as double)) = 0.0)), lambda x_55142#16682417, false)), lambdafunction(struct(inPreferredQuantity, ((qty#16680298 * cast(lambda x_55143#16682444.denominator as double)) / cast(lambda x_55143#16682444.numerator as double)), uom, lambda x_55143#16682444.uom, uomUuid, lambda x_55143#16682444.uomUuid), lambda x_55143#16682444, false))).uom, coalesce(element_at(filter(logisticUnits#16680564, lambdafunction(lambda x_55141#16682418.isOrderUnit, lambda x_55141#16682418, false)), 1, None, false).uom, orderQuantityBaseUom#16680550)), orderQuantityPreferredUomUuid, coalesce(array_min(transform(filter(logisticUnits#16680564, lambdafunction((lambda x_55142#16682419.isPreferred AND (((qty#16680298 * cast(lambda x_55142#16682419.denominator as double)) % cast(lambda x_55142#16682419.numerator as double)) = 0.0)), lambda x_55142#16682419, false)), lambdafunction(struct(inPreferredQuantity, ((qty#16680298 * cast(lambda x_55143#16682445.denominator as double)) / cast(lambda x_55143#16682445.numerator as double)), uom, lambda x_55143#16682445.uom, uomUuid, lambda x_55143#16682445.uomUuid), lambda x_55143#16682445, false))).uomUuid, coalesce(element_at(filter(logisticUnits#16680564, lambdafunction(lambda x_55141#16682420.isOrderUnit, lambda x_55141#16682420, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#16680551)), serviceLevel, coalesce(filter(element_at(quantityKpis#16681902, qty#16680298, None, false), lambdafunction((lambda x_55152#16682421.label = ServiceLevel), lambda x_55152#16682421, false))[0].value, 0.0), serviceLevelMinStock, ... 5 more fields), struct(isProposedCandidate, false, isProdlocOptimalCandidate, true, candidateOrderQuantity, coalesce((quantityAfterProdPlantOptimization#16680297 * (cast(element_at(filter(logisticUnits#16680564, lambdafunction(lambda x_55144#16682425.isOrderUnit, lambda x_55144#16682425, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#16680564, lambdafunction(lambda x_55144#16682426.isOrderUnit, lambda x_55144#16682426, false)), 1, None, false).numerator as double))), quantityAfterProdPlantOptimization#16680297), orderQuantityUom, coalesce(element_at(filter(logisticUnits#16680564, lambdafunction(lambda x_55144#16682427.isOrderUnit, lambda x_55144#16682427, false)), 1, None, false).uom, orderQuantityBaseUom#16680550), orderQuantityUomUuid, coalesce(element_at(filter(logisticUnits#16680564, lambdafunction(lambda x_55144#16682428.isOrderUnit, lambda x_55144#16682428, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#16680551), candidateOrderQuantityInBaseUnit, quantityAfterProdPlantOptimization#16680297, orderQuantityBaseUom, orderQuantityBaseUom#16680550, orderQuantityBaseUomUuid, orderQuantityBaseUomUuid#16680551, candidateOrderQuantityInPreferredUnit, coalesce(array_min(transform(filter(logisticUnits#16680564, lambdafunction((lambda x_55146#16682429.isPreferred AND (((quantityAfterProdPlantOptimization#16680297 * cast(lambda x_55146#16682429.denominator as double)) % cast(lambda x_55146#16682429.numerator as double)) = 0.0)), lambda x_55146#16682429, false)), lambdafunction(struct(inPreferredQuantity, ((quantityAfterProdPlantOptimization#16680297 * cast(lambda x_55147#16682446.denominator as double)) / cast(lambda x_55147#16682446.numerator as double)), uom, lambda x_55147#16682446.uom, uomUuid, lambda x_55147#16682446.uomUuid), lambda x_55147#16682446, false))).inPreferredQuantity, coalesce((quantityAfterProdPlantOptimization#16680297 * (cast(element_at(filter(logisticUnits#16680564, lambdafunction(lambda x_55145#16682430.isOrderUnit, lambda x_55145#16682430, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#16680564, lambdafunction(lambda x_55145#16682431.isOrderUnit, lambda x_55145#16682431, false)), 1, None, false).numerator as double))), quantityAfterProdPlantOptimization#16680297)), orderQuantityPreferredUom, coalesce(array_min(transform(filter(logisticUnits#16680564, lambdafunction((lambda x_55146#16682432.isPreferred AND (((quantityAfterProdPlantOptimization#16680297 * cast(lambda x_55146#16682432.denominator as double)) % cast(lambda x_55146#16682432.numerator as double)) = 0.0)), lambda x_55146#16682432, false)), lambdafunction(struct(inPreferredQuantity, ((quantityAfterProdPlantOptimization#16680297 * cast(lambda x_55147#16682447.denominator as double)) / cast(lambda x_55147#16682447.numerator as double)), uom, lambda x_55147#16682447.uom, uomUuid, lambda x_55147#16682447.uomUuid), lambda x_55147#16682447, false))).uom, coalesce(element_at(filter(logisticUnits#16680564, lambdafunction(lambda x_55145#16682433.isOrderUnit, lambda x_55145#16682433, false)), 1, None, false).uom, orderQuantityBaseUom#16680550)), orderQuantityPreferredUomUuid, coalesce(array_min(transform(filter(logisticUnits#16680564, lambdafunction((lambda x_55146#16682434.isPreferred AND (((quantityAfterProdPlantOptimization#16680297 * cast(lambda x_55146#16682434.denominator as double)) % cast(lambda x_55146#16682434.numerator as double)) = 0.0)), lambda x_55146#16682434, false)), lambdafunction(struct(inPreferredQuantity, ((quantityAfterProdPlantOptimization#16680297 * cast(lambda x_55147#16682448.denominator as double)) / cast(lambda x_55147#16682448.numerator as double)), uom, lambda x_55147#16682448.uom, uomUuid, lambda x_55147#16682448.uomUuid), lambda x_55147#16682448, false))).uomUuid, coalesce(element_at(filter(logisticUnits#16680564, lambdafunction(lambda x_55145#16682435.isOrderUnit, lambda x_55145#16682435, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#16680551)), serviceLevel, coalesce(filter(element_at(quantityKpis#16681902, quantityAfterProdPlantOptimization#16680297, None, false), lambdafunction((lambda x_55156#16682436.label = ServiceLevel), lambda x_55156#16682436, false))[0].value, 0.0), serviceLevelMinStock, ... 5 more fields)) END AS calculationAnalysis#16682394, coalesce(filter(prodLocSpecificKpis#16681874, lambdafunction((lambda x_55160#16682450.label = InitialStockQty), lambda x_55160#16682450, false))[0].dateTime, 1970-01-01 00:00:00) AS inventoryDateTime#16682449, coalesce(filter(prodLocSpecificKpis#16681874, lambdafunction((lambda x_55161#16682452.label = DemandPeriodEndTimestamp), lambda x_55161#16682452, false))[0].dateTime, 1970-01-01 00:00:00) AS demandPeriodEndDateTime#16682451]
Input [36]: [shardId#16679725, quantityAfterProdPlantOptimization#16680297, qty#16680298, orderProposalId#16680527L, originalReplenishmentRunId#16680530L, supplierGroup#16680537, supplier#16680538, supplyingPlant#16680568, productGroup#16680569, product#16680540, plant#16680541, subrange#16680539, orderDateTime#16680545, deliveryDateTime#16680546, availabilityDateTime#16680547, nextAvailabilityDateTime#16680548, logisticUnits#16680564, orderQuantityBaseUom#16680550, orderQuantityBaseUomUuid#16680551, splitIndicator#16680532L, netPriceAmount#16680555, netPriceCurrencyCode#16680556, netPriceQuantity#16680552, netPriceQuantityUom#16680553, netPriceQuantityUomUuid#16680554, sourceOfSupplyUuid#16680536, minimumOrderQuantity#16680558, orderProposalItemId#16680528, orderProposalItemGroupId#16680529, optimizationGroups#16680565, measurements#16680557, previousOrderProposal#16680533L, prodLocSpecificKpis#16681874, channelStreamSpecificKpis#16681889, quantityKpis#16681902, constraintStructArray#16682316]
(60) Project
Output [21]: [shardId#16679725, qty#16680298, orderProposalId#16680527L, originalReplenishmentRunId#16680530L, supplierGroup#16680537, supplier#16680538, supplyingPlant#16680568, productGroup#16680569, product#16680540, plant#16680541, subrange#16680539, orderDateTime#16680545, deliveryDateTime#16680546, logisticUnits#16680564, orderQuantityBaseUom#16680550, orderQuantityBaseUomUuid#16680551, splitIndicator#16680532L, orderProposalItemId#16680528, orderProposalItemGroupId#16680529, previousOrderProposal#16680533L, struct(itemId, orderProposalItemId#16680528, itemGroupId, orderProposalItemGroupId#16680529, supplier, supplier#16680538, supplyingPlant, supplyingPlant#16680568, productGroup, productGroup#16680569, product, product#16680540, plant, plant#16680541, supplierSubRange, subrange#16680539, sourceOfSupplyUuid, sourceOfSupplyUuid#16680536, deliveryDateTime, deliveryDateTime#16680546, unitPrice, netPriceAmount#16680555, unitPriceCurrency, netPriceCurrencyCode#16680556, unitPriceQuantity, ... 37 more fields) AS parentItem#16682525]
Input [37]: [shardId#16679725, qty#16680298, orderProposalId#16680527L, originalReplenishmentRunId#16680530L, supplierGroup#16680537, supplier#16680538, supplyingPlant#16680568, productGroup#16680569, product#16680540, plant#16680541, subrange#16680539, orderDateTime#16680545, deliveryDateTime#16680546, availabilityDateTime#16680547, nextAvailabilityDateTime#16680548, logisticUnits#16680564, orderQuantityBaseUom#16680550, orderQuantityBaseUomUuid#16680551, splitIndicator#16680532L, netPriceAmount#16680555, netPriceCurrencyCode#16680556, netPriceQuantity#16680552, netPriceQuantityUom#16680553, netPriceQuantityUomUuid#16680554, sourceOfSupplyUuid#16680536, orderProposalItemId#16680528, orderProposalItemGroupId#16680529, optimizationGroups#16680565, measurements#16680557, previousOrderProposal#16680533L, prodLocSpecificKpis#16681874, channelStreamSpecificKpis#16681889, quantityKpis#16681902, constraintBenchmark#16682322, calculationAnalysis#16682394, inventoryDateTime#16682449, demandPeriodEndDateTime#16682451]
(61) Project
Output [12]: [shardId#16679725, orderProposalId#16680527L, originalReplenishmentRunId#16680530L, supplierGroup#16680537, supplier#16680538, supplyingPlant#16680568, orderDateTime#16680545, splitIndicator#16680532L, orderProposalItemGroupId#16680529, previousOrderProposal#16680533L, parentItem#16682525, struct(itemId, orderProposalItemId#16680528, supplier, supplier#16680538, supplyingPlant, supplyingPlant#16680568, productGroup, productGroup#16680569, product, product#16680540, plant, plant#16680541, supplierSubRange, subrange#16680539, deliveryDateTime, deliveryDateTime#16680546, orderQuantity, coalesce((qty#16680298 * (cast(element_at(filter(logisticUnits#16680564, lambdafunction(lambda x_55185#16682559.isOrderUnit, lambda x_55185#16682559, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#16680564, lambdafunction(lambda x_55185#16682560.isOrderUnit, lambda x_55185#16682560, false)), 1, None, false).numerator as double))), qty#16680298), orderQuantityUom, coalesce(element_at(filter(logisticUnits#16680564, lambdafunction(lambda x_55185#16682561.isOrderUnit, lambda x_55185#16682561, false)), 1, None, false).uom, orderQuantityBaseUom#16680550), orderQuantityUomUuid, coalesce(element_at(filter(logisticUnits#16680564, lambdafunction(lambda x_55185#16682562.isOrderUnit, lambda x_55185#16682562, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#16680551), orderQuantityInBaseUnit, qty#16680298, orderQuantityBaseUom, ... 13 more fields) AS item#16682556]
Input [21]: [shardId#16679725, qty#16680298, orderProposalId#16680527L, originalReplenishmentRunId#16680530L, supplierGroup#16680537, supplier#16680538, supplyingPlant#16680568, productGroup#16680569, product#16680540, plant#16680541, subrange#16680539, orderDateTime#16680545, deliveryDateTime#16680546, logisticUnits#16680564, orderQuantityBaseUom#16680550, orderQuantityBaseUomUuid#16680551, splitIndicator#16680532L, orderProposalItemId#16680528, orderProposalItemGroupId#16680529, previousOrderProposal#16680533L, parentItem#16682525]
(62) ObjectHashAggregate
Input [12]: [shardId#16679725, orderProposalId#16680527L, originalReplenishmentRunId#16680530L, supplierGroup#16680537, supplier#16680538, supplyingPlant#16680568, orderDateTime#16680545, splitIndicator#16680532L, orderProposalItemGroupId#16680529, previousOrderProposal#16680533L, parentItem#16682525, item#16682556]
Keys [4]: [shardId#16679725, orderProposalId#16680527L, splitIndicator#16680532L, orderProposalItemGroupId#16680529]
Functions [8]: [partial_max(originalReplenishmentRunId#16680530L), partial_max(supplierGroup#16680537), partial_max(supplier#16680538), partial_max(supplyingPlant#16680568), partial_max(orderDateTime#16680545), partial_collect_list(parentItem#16682525, 0, 0), partial_collect_set(previousOrderProposal#16680533L, 0, 0), partial_collect_list(item#16682556, 0, 0)]
Aggregate Attributes [8]: [max#16683809L, max#16683810, max#16683811, max#16683812, max#16683813, buf#16683814, buf#16683815, buf#16683816]
Results [12]: [shardId#16679725, orderProposalId#16680527L, splitIndicator#16680532L, orderProposalItemGroupId#16680529, max#16683817L, max#16683818, max#16683819, max#16683820, max#16683821, buf#16683822, buf#16683823, buf#16683824]
(63) Exchange
Input [12]: [shardId#16679725, orderProposalId#16680527L, splitIndicator#16680532L, orderProposalItemGroupId#16680529, max#16683817L, max#16683818, max#16683819, max#16683820, max#16683821, buf#16683822, buf#16683823, buf#16683824]
Arguments: hashpartitioning(shardId#16679725, orderProposalId#16680527L, splitIndicator#16680532L, orderProposalItemGroupId#16680529, 30), ENSURE_REQUIREMENTS, [plan_id=4960925]
(64) ObjectHashAggregate
Input [12]: [shardId#16679725, orderProposalId#16680527L, splitIndicator#16680532L, orderProposalItemGroupId#16680529, max#16683817L, max#16683818, max#16683819, max#16683820, max#16683821, buf#16683822, buf#16683823, buf#16683824]
Keys [4]: [shardId#16679725, orderProposalId#16680527L, splitIndicator#16680532L, orderProposalItemGroupId#16680529]
Functions [8]: [max(originalReplenishmentRunId#16680530L), max(supplierGroup#16680537), max(supplier#16680538), max(supplyingPlant#16680568), max(orderDateTime#16680545), collect_list(parentItem#16682525, 0, 0), collect_set(previousOrderProposal#16680533L, 0, 0), collect_list(item#16682556, 0, 0)]
Aggregate Attributes [8]: [max(originalReplenishmentRunId#16680530L)#16682625L, max(supplierGroup#16680537)#16682626, max(supplier#16680538)#16682627, max(supplyingPlant#16680568)#16682628, max(orderDateTime#16680545)#16682629, collect_list(parentItem#16682525, 0, 0)#16682630, collect_set(previousOrderProposal#16680533L, 0, 0)#16682632, collect_list(item#16682556, 0, 0)#16682631]
Results [10]: [shardId#16679725, orderProposalId#16680527L, max(originalReplenishmentRunId#16680530L)#16682625L AS originalReplenishmentRunId#16682573L, max(supplierGroup#16680537)#16682626 AS supplierGroup#16682574, max(supplier#16680538)#16682627 AS supplier#16682575, max(supplyingPlant#16680568)#16682628 AS supplyingPlant#16682576, max(orderDateTime#16680545)#16682629 AS orderDateTime#16682577, collect_list(parentItem#16682525, 0, 0)#16682630 AS parentItems#16682578, collect_set(previousOrderProposal#16680533L, 0, 0)#16682632 AS previousOrderProposals#16682580, struct(itemGroupId, orderProposalItemGroupId#16680529, items, collect_list(item#16682556, 0, 0)#16682631) AS itemGroup#16682634]
(65) ObjectHashAggregate
Input [10]: [shardId#16679725, orderProposalId#16680527L, originalReplenishmentRunId#16682573L, supplierGroup#16682574, supplier#16682575, supplyingPlant#16682576, orderDateTime#16682577, parentItems#16682578, previousOrderProposals#16682580, itemGroup#16682634]
Keys [2]: [shardId#16679725, orderProposalId#16680527L]
Functions [8]: [partial_max(originalReplenishmentRunId#16682573L), partial_max(supplierGroup#16682574), partial_max(supplier#16682575), partial_max(supplyingPlant#16682576), partial_max(orderDateTime#16682577), partial_collect_list(itemGroup#16682634, 0, 0), partial_collect_list(parentItems#16682578, 0, 0), partial_collect_set(previousOrderProposals#16682580, 0, 0)]
Aggregate Attributes [8]: [max#16683793L, max#16683794, max#16683795, max#16683796, max#16683797, buf#16683798, buf#16683799, buf#16683800]
Results [10]: [shardId#16679725, orderProposalId#16680527L, max#16683801L, max#16683802, max#16683803, max#16683804, max#16683805, buf#16683806, buf#16683807, buf#16683808]
(66) Exchange
Input [10]: [shardId#16679725, orderProposalId#16680527L, max#16683801L, max#16683802, max#16683803, max#16683804, max#16683805, buf#16683806, buf#16683807, buf#16683808]
Arguments: hashpartitioning(shardId#16679725, orderProposalId#16680527L, 30), ENSURE_REQUIREMENTS, [plan_id=4960928]
(67) ObjectHashAggregate
Input [10]: [shardId#16679725, orderProposalId#16680527L, max#16683801L, max#16683802, max#16683803, max#16683804, max#16683805, buf#16683806, buf#16683807, buf#16683808]
Keys [2]: [shardId#16679725, orderProposalId#16680527L]
Functions [8]: [max(originalReplenishmentRunId#16682573L), max(supplierGroup#16682574), max(supplier#16682575), max(supplyingPlant#16682576), max(orderDateTime#16682577), collect_list(itemGroup#16682634, 0, 0), collect_list(parentItems#16682578, 0, 0), collect_set(previousOrderProposals#16682580, 0, 0)]
Aggregate Attributes [8]: [max(originalReplenishmentRunId#16682573L)#16682656L, max(supplierGroup#16682574)#16682657, max(supplier#16682575)#16682658, max(supplyingPlant#16682576)#16682659, max(orderDateTime#16682577)#16682660, collect_list(itemGroup#16682634, 0, 0)#16682661, collect_list(parentItems#16682578, 0, 0)#16682662, collect_set(previousOrderProposals#16682580, 0, 0)#16682663]
Results [10]: [shardId#16679725, orderProposalId#16680527L, max(originalReplenishmentRunId#16682573L)#16682656L AS originalReplenishmentRunId#16682635L, max(supplierGroup#16682574)#16682657 AS supplierGroup#16682636, max(supplier#16682575)#16682658 AS supplier#16682637, max(supplyingPlant#16682576)#16682659 AS supplyingPlant#16682638, max(orderDateTime#16682577)#16682660 AS orderDateTime#16682639, collect_list(itemGroup#16682634, 0, 0)#16682661 AS itemGroups#16682640, flatten(collect_list(parentItems#16682578, 0, 0)#16682662) AS parentItems#16682641, flatten(collect_set(previousOrderProposals#16682580, 0, 0)#16682663) AS previousOrderProposals#16682642]
(68) Project
Output [2]: [shardId#16679725, struct(orderProposalId, orderProposalId#16680527L, originalReplenishmentRunId, originalReplenishmentRunId#16682635L, supplierGroup, supplierGroup#16682636, optimizationGroups, null, supplier, CASE WHEN isnull(supplierGroup#16682636) THEN supplier#16682637 END, supplyingPlant, supplyingPlant#16682638, orderDateTime, orderDateTime#16682639, itemGroups, itemGroups#16682640, previousOrderProposals, array_distinct(previousOrderProposals#16682642), parentItems, parentItems#16682641) AS orderProposal#16682667]
Input [10]: [shardId#16679725, orderProposalId#16680527L, originalReplenishmentRunId#16682635L, supplierGroup#16682636, supplier#16682637, supplyingPlant#16682638, orderDateTime#16682639, itemGroups#16682640, parentItems#16682641, previousOrderProposals#16682642]
(69) Project
Output [11]: [shardId#16679725, orderProposal#16682667.orderProposalId AS _extract_orderProposalId#16683425L, orderProposal#16682667.originalReplenishmentRunId AS _extract_originalReplenishmentRunId#16683426L, orderProposal#16682667.supplierGroup AS _extract_supplierGroup#16683427, orderProposal#16682667.supplier AS _extract_supplier#16683428, orderProposal#16682667.supplyingPlant AS _extract_supplyingPlant#16683429, orderProposal#16682667.orderDateTime AS _extract_orderDateTime#16683430, orderProposal#16682667.itemGroups AS _extract_itemGroups#16683431, orderProposal#16682667.previousOrderProposals AS _extract_previousOrderProposals#16683432, orderProposal#16682667.parentItems AS _extract_parentItems#16683433, orderProposal#16682667.orderProposalId AS _extract_orderProposalId#16683434L]
Input [2]: [shardId#16679725, orderProposal#16682667]
(70) Exchange
Input [11]: [shardId#16679725, _extract_orderProposalId#16683425L, _extract_originalReplenishmentRunId#16683426L, _extract_supplierGroup#16683427, _extract_supplier#16683428, _extract_supplyingPlant#16683429, _extract_orderDateTime#16683430, _extract_itemGroups#16683431, _extract_previousOrderProposals#16683432, _extract_parentItems#16683433, _extract_orderProposalId#16683434L]
Arguments: hashpartitioning(coalesce(shardId#16679725, ), isnull(shardId#16679725), coalesce(_extract_orderProposalId#16683434L, 0), isnull(_extract_orderProposalId#16683434L), 30), ENSURE_REQUIREMENTS, [plan_id=4960932]
(71) Sort
Input [11]: [shardId#16679725, _extract_orderProposalId#16683425L, _extract_originalReplenishmentRunId#16683426L, _extract_supplierGroup#16683427, _extract_supplier#16683428, _extract_supplyingPlant#16683429, _extract_orderDateTime#16683430, _extract_itemGroups#16683431, _extract_previousOrderProposals#16683432, _extract_parentItems#16683433, _extract_orderProposalId#16683434L]
Arguments: [coalesce(shardId#16679725, ) ASC NULLS FIRST, isnull(shardId#16679725) ASC NULLS FIRST, coalesce(_extract_orderProposalId#16683434L, 0) ASC NULLS FIRST, isnull(_extract_orderProposalId#16683434L) ASC NULLS FIRST], false, 0
(72) InMemoryTableScan
Output [3]: [shardId#16682682, orderProposalId#16682683L, optimizationGroups#16682685]
Arguments: [shardId#16682682, orderProposalId#16682683L, optimizationGroups#16682685], [isnotnull(orderProposalId#16682683L)]
(73) InMemoryRelation
Arguments: [shardId#16682682, orderProposalId#16682683L, items#16682684, optimizationGroups#16682685, isOptimal#16682686, optimizationInsights#16682688], StorageLevel(disk, memory, 2 replicas)
(74) Filter [codegen id : 2]
Input [3]: [shardId#16682682, orderProposalId#16682683L, optimizationGroups#16682685]
Condition : isnotnull(orderProposalId#16682683L)
(75) Exchange
Input [3]: [shardId#16682682, orderProposalId#16682683L, optimizationGroups#16682685]
Arguments: hashpartitioning(orderProposalId#16682683L, 30), ENSURE_REQUIREMENTS, [plan_id=4960937]
(76) Sort [codegen id : 3]
Input [3]: [shardId#16682682, orderProposalId#16682683L, optimizationGroups#16682685]
Arguments: [orderProposalId#16682683L ASC NULLS FIRST], false, 0
(77) InMemoryTableScan
Output [2]: [items#16682311, shardId#16682309]
Arguments: [items#16682311, shardId#16682309], [(size(items#16682311.worklistShardItemId, true) > 0), isnotnull(items#16682311.worklistShardItemId), (shardId#16682309 = 0_1_10000000548)]
(78) InMemoryRelation
Arguments: [shardId#16682309, orderProposalId#16682310L, items#16682311, optimizationGroups#16682312, isOptimal#16682313, optimizationInsights#16682315], StorageLevel(disk, memory, 2 replicas)
(79) Filter [codegen id : 4]
Input [2]: [items#16682311, shardId#16682309]
Condition : (((size(items#16682311.worklistShardItemId, true) > 0) AND isnotnull(items#16682311.worklistShardItemId)) AND (shardId#16682309 = 0_1_10000000548))
(80) Project [codegen id : 4]
Output [1]: [items#16682311.worklistShardItemId AS _extract_worklistShardItemId#16683330]
Input [2]: [items#16682311, shardId#16682309]
(81) Generate [codegen id : 4]
Input [1]: [_extract_worklistShardItemId#16683330]
Arguments: explode(_extract_worklistShardItemId#16683330), false, [item#16682689L]
(82) Project [codegen id : 4]
Output [1]: [item#16682689L AS worklistShardItemId#16682690L]
Input [1]: [item#16682689L]
(83) BroadcastExchange
Input [1]: [worklistShardItemId#16682690L]
Arguments: HashedRelationBroadcastMode(List(input[0, bigint, true]),false), [plan_id=4960948]
(84) Scan parquet
Output [5]: [orderProposalId#16682738L, isFallbackOrderOnly#16682755, worklistShardItemId#16682761L, shardId#16682782, sequenceId#16682760]
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/10000000548]
PartitionFilters: [isnotnull(shardId#16682782), isnotnull(sequenceId#16682760), (shardId#16682782 = 0_1_10000000548), (sequenceId#16682760 = 2)]
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#16682738L, isFallbackOrderOnly#16682755, worklistShardItemId#16682761L, shardId#16682782, sequenceId#16682760]
(86) Filter [codegen id : 5]
Input [5]: [orderProposalId#16682738L, isFallbackOrderOnly#16682755, worklistShardItemId#16682761L, shardId#16682782, sequenceId#16682760]
Condition : ((isnotnull(worklistShardItemId#16682761L) AND NOT (isFallbackOrderOnly#16682755 <=> true)) AND isnotnull(orderProposalId#16682738L))
(87) Project [codegen id : 5]
Output [2]: [orderProposalId#16682738L, worklistShardItemId#16682761L]
Input [5]: [orderProposalId#16682738L, isFallbackOrderOnly#16682755, worklistShardItemId#16682761L, shardId#16682782, sequenceId#16682760]
(88) Exchange
Input [2]: [orderProposalId#16682738L, worklistShardItemId#16682761L]
Arguments: hashpartitioning(worklistShardItemId#16682761L, 30), REPARTITION_BY_NUM, [plan_id=4960955]
(89) Project
Output [2]: [worklistShardItemId#16682761L, orderProposalId#16682738L]
Input [2]: [orderProposalId#16682738L, worklistShardItemId#16682761L]
(90) BroadcastHashJoin [codegen id : 6]
Left keys [1]: [worklistShardItemId#16682690L]
Right keys [1]: [worklistShardItemId#16682761L]
Join type: Inner
Join condition: None
(91) Project [codegen id : 6]
Output [1]: [orderProposalId#16682738L]
Input [3]: [worklistShardItemId#16682690L, worklistShardItemId#16682761L, orderProposalId#16682738L]
(92) HashAggregate [codegen id : 6]
Input [1]: [orderProposalId#16682738L]
Keys [1]: [orderProposalId#16682738L]
Functions: []
Aggregate Attributes: []
Results [1]: [orderProposalId#16682738L]
(93) Exchange
Input [1]: [orderProposalId#16682738L]
Arguments: hashpartitioning(orderProposalId#16682738L, 30), ENSURE_REQUIREMENTS, [plan_id=4960962]
(94) HashAggregate [codegen id : 7]
Input [1]: [orderProposalId#16682738L]
Keys [1]: [orderProposalId#16682738L]
Functions: []
Aggregate Attributes: []
Results [1]: [orderProposalId#16682738L]
(95) Sort [codegen id : 7]
Input [1]: [orderProposalId#16682738L]
Arguments: [orderProposalId#16682738L ASC NULLS FIRST], false, 0
(96) SortMergeJoin [codegen id : 8]
Left keys [1]: [orderProposalId#16682683L]
Right keys [1]: [orderProposalId#16682738L]
Join type: Inner
Join condition: None
(97) Project
Output [3]: [orderProposalId#16682683L, shardId#16682682, coalesce(transform(optimizationGroups#16682685, lambdafunction(struct(optGroupId, lambda x_55189#16682680.optGroupId, minOrderProfile, lambda x_55189#16682680.minOrderProfile, assignmentDetails, lambda x_55189#16682680.assignmentDetails, minOrdBenchmark, struct(dimensionType, lambda x_55189#16682680.minOrderGoal.dimensionType, unit, lambda x_55189#16682680.minOrderGoal.unit, unitUuid, lambda x_55189#16682680.minOrderGoal.unitUuid, goalValue, lambda x_55189#16682680.minOrderGoal.minOrderValue, calcValue, lambda x_55189#16682680.minOrderGoal.calculatedOrderValue), transportLoadProfile, null, transportLoadGoal, null), lambda x_55189#16682680, false)), []) AS optimizationGroups#16682679]
Input [4]: [shardId#16682682, orderProposalId#16682683L, optimizationGroups#16682685, orderProposalId#16682738L]
(98) Exchange
Input [3]: [orderProposalId#16682683L, shardId#16682682, optimizationGroups#16682679]
Arguments: hashpartitioning(coalesce(shardId#16682682, ), isnull(shardId#16682682), coalesce(orderProposalId#16682683L, 0), isnull(orderProposalId#16682683L), 30), ENSURE_REQUIREMENTS, [plan_id=4960971]
(99) Sort [codegen id : 9]
Input [3]: [orderProposalId#16682683L, shardId#16682682, optimizationGroups#16682679]
Arguments: [coalesce(shardId#16682682, ) ASC NULLS FIRST, isnull(shardId#16682682) ASC NULLS FIRST, coalesce(orderProposalId#16682683L, 0) ASC NULLS FIRST, isnull(orderProposalId#16682683L) ASC NULLS FIRST], false, 0
(100) SortMergeJoin
Left keys [4]: [coalesce(shardId#16679725, ), isnull(shardId#16679725), coalesce(_extract_orderProposalId#16683434L, 0), isnull(_extract_orderProposalId#16683434L)]
Right keys [4]: [coalesce(shardId#16682682, ), isnull(shardId#16682682), coalesce(orderProposalId#16682683L, 0), isnull(orderProposalId#16682683L)]
Join type: LeftOuter
Join condition: None
(101) Project
Output [2]: [shardId#16679725, named_struct(orderProposalId, _extract_orderProposalId#16683434L, originalReplenishmentRunId, _extract_originalReplenishmentRunId#16683426L, supplierGroup, _extract_supplierGroup#16683427, optimizationGroups, coalesce(optimizationGroups#16682679, []), supplier, _extract_supplier#16683428, supplyingPlant, _extract_supplyingPlant#16683429, orderDateTime, _extract_orderDateTime#16683430, itemGroups, _extract_itemGroups#16683431, previousOrderProposals, _extract_previousOrderProposals#16683432, parentItems, _extract_parentItems#16683433) AS orderProposal#16682786]
Input [14]: [shardId#16679725, _extract_orderProposalId#16683425L, _extract_originalReplenishmentRunId#16683426L, _extract_supplierGroup#16683427, _extract_supplier#16683428, _extract_supplyingPlant#16683429, _extract_orderDateTime#16683430, _extract_itemGroups#16683431, _extract_previousOrderProposals#16683432, _extract_parentItems#16683433, _extract_orderProposalId#16683434L, orderProposalId#16682683L, shardId#16682682, optimizationGroups#16682679]
(102) Project
Output [3]: [shardId#16679725, orderProposal#16682786, CASE WHEN (size(orderProposal#16682786.parentItems, true) > 2000) THEN xxhash64(orderProposal#16682786.orderProposalId, 42) ELSE xxhash64(pmod(cast(orderProposal#16682786.orderProposalId as decimal(20,0)), 51), 42) END AS resultSeparationId#16684538L]
Input [2]: [orderProposal#16682786, shardId#16679725]
(103) ObjectHashAggregate
Input [3]: [shardId#16679725, orderProposal#16682786, resultSeparationId#16684538L]
Keys [2]: [shardId#16679725, resultSeparationId#16684538L]
Functions [1]: [partial_collect_list(orderProposal#16682786, 0, 0)]
Aggregate Attributes [1]: [buf#16684577]
Results [3]: [shardId#16679725, resultSeparationId#16684538L, buf#16684578]
(104) Exchange
Input [3]: [shardId#16679725, resultSeparationId#16684538L, buf#16684578]
Arguments: hashpartitioning(shardId#16679725, resultSeparationId#16684538L, 30), ENSURE_REQUIREMENTS, [plan_id=4961127]
(105) ObjectHashAggregate
Input [3]: [shardId#16679725, resultSeparationId#16684538L, buf#16684578]
Keys [2]: [shardId#16679725, resultSeparationId#16684538L]
Functions [1]: [collect_list(orderProposal#16682786, 0, 0)]
Aggregate Attributes [1]: [collect_list(orderProposal#16682786, 0, 0)#16684546]
Results [3]: [shardId#16679725, resultSeparationId#16684538L, collect_list(orderProposal#16682786, 0, 0)#16684546 AS orderProposals#16684542]
(106) Exchange
Input [3]: [shardId#16679725, resultSeparationId#16684538L, orderProposals#16684542]
Arguments: rangepartitioning(shardId#16679725 ASC NULLS FIRST, resultSeparationId#16684538L ASC NULLS FIRST, 51), REPARTITION_BY_NUM, [plan_id=4961170]
(107) Project
Output [2]: [shardId#16679725, orderProposals#16684542]
Input [3]: [shardId#16679725, resultSeparationId#16684538L, orderProposals#16684542]
(108) Project
Output [2]: [empty2null(shardId#16679725) AS shardId#16691961, orderProposals#16684542]
Input [2]: [orderProposals#16684542, shardId#16679725]
(109) Sort
Input [2]: [shardId#16691961, orderProposals#16684542]
Arguments: [shardId#16691961 ASC NULLS FIRST], false, 0
(110) WriteFiles
Input [2]: [shardId#16691961, orderProposals#16684542]
(111) Execute InsertIntoHadoopFsRelationCommand
Input: []
Arguments: hdlfs://7da5304c-1f57-47fa-b75a-0f0b4349c280.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-qty-opt-service/out/order-proposal-result/10000000548, false, [shardId#16691961], JSON, [__partition_columns=["shardId"], path=hdlfs://7da5304c-1f57-47fa-b75a-0f0b4349c280.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-qty-opt-service/out/order-proposal-result/10000000548], Append, [shardId, orderProposals]