== 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#3483106, orderProposals#3487250], StorageLevel(disk, memory, 2 replicas)
(3) InMemoryTableScan
Output [3]: [shardId#3483106, resultSeparationId#3487246L, orderProposals#3487250]
Arguments: [shardId#3483106, resultSeparationId#3487246L, orderProposals#3487250]
(4) InMemoryRelation
Arguments: [shardId#3483106, resultSeparationId#3487246L, orderProposals#3487250], StorageLevel(disk, memory, 2 replicas)
(5) InMemoryTableScan
Output [2]: [orderProposal#3485494, shardId#3483106]
Arguments: [orderProposal#3485494, shardId#3483106]
(6) InMemoryRelation
Arguments: [shardId#3483106, orderProposal#3485494], StorageLevel(disk, memory, 2 replicas)
(7) InMemoryTableScan
Output [39]: [availabilityDateTime#3483796, channelStreamSpecificKpis#3484597, constraintLabels#3483808, constraintOperators#3483809, constraintValues#3483811, deliveryDateTime#3483795, isFallbackOrderOnly#3483798, logisticUnits#3483813, measurements#3483806, minimumOrderQuantity#3483807, netPriceAmount#3483804, netPriceCurrencyCode#3483805, netPriceQuantity#3483801, netPriceQuantityUom#3483802, netPriceQuantityUomUuid#3483803, nextAvailabilityDateTime#3483797, optimizationGroups#3483814, orderDateTime#3483794, orderProposalId#3483776L, orderProposalItemGroupId#3483778, orderProposalItemId#3483777, orderQuantityBaseUom#3483799, orderQuantityBaseUomUuid#3483800, originalReplenishmentRunId#3483779L, plant#3483790, previousOrderProposal#3483782L, prodLocSpecificKpis#3484582, product#3483789, productGroup#3483818, qty#3483620, quantityAfterProdPlantOptimization#3483619, quantityKpis#3484610, shardId#3483106, sourceOfSupplyUuid#3483785, splitIndicator#3483781L, subrange#3483788, supplier#3483787, supplierGroup#3483786, supplyingPlant#3483817]
Arguments: [availabilityDateTime#3483796, channelStreamSpecificKpis#3484597, constraintLabels#3483808, constraintOperators#3483809, constraintValues#3483811, deliveryDateTime#3483795, isFallbackOrderOnly#3483798, logisticUnits#3483813, measurements#3483806, minimumOrderQuantity#3483807, netPriceAmount#3483804, netPriceCurrencyCode#3483805, netPriceQuantity#3483801, netPriceQuantityUom#3483802, netPriceQuantityUomUuid#3483803, nextAvailabilityDateTime#3483797, optimizationGroups#3483814, orderDateTime#3483794, orderProposalId#3483776L, orderProposalItemGroupId#3483778, orderProposalItemId#3483777, orderQuantityBaseUom#3483799, orderQuantityBaseUomUuid#3483800, originalReplenishmentRunId#3483779L, plant#3483790, ... 14 more fields], [NOT (isFallbackOrderOnly#3483798 <=> true)]
(8) InMemoryRelation
Arguments: [shardId#3483106, worklistShardItemId#3483618L, quantityAfterProdPlantOptimization#3483619, qty#3483620, orderProposalId#3483776L, originalReplenishmentRunId#3483779L, supplierGroup#3483786, supplier#3483787, supplyingPlant#3483817, productGroup#3483818, product#3483789, plant#3483790, subrange#3483788, orderDateTime#3483794, deliveryDateTime#3483795, availabilityDateTime#3483796, nextAvailabilityDateTime#3483797, constraintValues#3483811, constraintOperators#3483809, constraintLabels#3483808, logisticUnits#3483813, orderQuantityBaseUom#3483799, orderQuantityBaseUomUuid#3483800, splitIndicator#3483781L, netPriceAmount#3483804, ... 17 more fields], StorageLevel(disk, memory, 2 replicas)
(9) InMemoryTableScan
Output [2]: [shardId#3483106, items#3483108]
Arguments: [shardId#3483106, items#3483108], [(size(items#3483108, true) > 0), isnotnull(items#3483108)]
(10) InMemoryRelation
Arguments: [shardId#3483106, orderProposalId#3483107L, items#3483108, optimizationGroups#3483109, isOptimal#3483110, optimizationInsights#3483112], StorageLevel(disk, memory, 2 replicas)
(11) InMemoryTableScan
Output [6]: [shardId#3483106, orderProposalId#3483107L, items#3483108, optimizationGroups#3483109, isOptimal#3483110, optimizationInsights#3483112]
Arguments: [shardId#3483106, orderProposalId#3483107L, items#3483108, optimizationGroups#3483109, isOptimal#3483110, optimizationInsights#3483112], [isnotnull(shardId#3483106), (shardId#3483106 = 0_5_10000000532)]
(12) InMemoryRelation
Arguments: [shardId#3483106, orderProposalId#3483107L, items#3483108, optimizationGroups#3483109, isOptimal#3483110, lastModified#3483111, optimizationInsights#3483112], StorageLevel(disk, memory, 2 replicas)
(13) Scan ExistingRDD [codegen id : 1]
Output [7]: [shardId#3483106, orderProposalId#3483107L, items#3483108, optimizationGroups#3483109, isOptimal#3483110, lastModified#3483111, optimizationInsights#3483112]
Arguments: [shardId#3483106, orderProposalId#3483107L, items#3483108, optimizationGroups#3483109, isOptimal#3483110, lastModified#3483111, optimizationInsights#3483112], MapPartitionsRDD[148141] at start at FileStorageAdapterImpl.java:596, ExistingRDD, UnknownPartitioning(0)
(14) Filter [codegen id : 1]
Input [7]: [shardId#3483106, orderProposalId#3483107L, items#3483108, optimizationGroups#3483109, isOptimal#3483110, lastModified#3483111, optimizationInsights#3483112]
Condition : (isnotnull(shardId#3483106) AND (shardId#3483106 = 0_5_10000000532))
(15) Filter [codegen id : 1]
Input [6]: [shardId#3483106, orderProposalId#3483107L, items#3483108, optimizationGroups#3483109, isOptimal#3483110, optimizationInsights#3483112]
Condition : (isnotnull(shardId#3483106) AND (shardId#3483106 = 0_5_10000000532))
(16) Filter [codegen id : 1]
Input [2]: [shardId#3483106, items#3483108]
Condition : ((size(items#3483108, true) > 0) AND isnotnull(items#3483108))
(17) Generate [codegen id : 1]
Input [2]: [shardId#3483106, items#3483108]
Arguments: explode(items#3483108), [shardId#3483106], false, [item#3483617]
(18) Project [codegen id : 1]
Output [4]: [shardId#3483106, item#3483617.worklistShardItemId AS worklistShardItemId#3483618L, item#3483617.quantityAfterProdPlantOptimization AS quantityAfterProdPlantOptimization#3483619, item#3483617.qty AS qty#3483620]
Input [2]: [shardId#3483106, item#3483617]
(19) Exchange
Input [4]: [shardId#3483106, worklistShardItemId#3483618L, quantityAfterProdPlantOptimization#3483619, qty#3483620]
Arguments: hashpartitioning(worklistShardItemId#3483618L, 30), ENSURE_REQUIREMENTS, [plan_id=1000477]
(20) Sort [codegen id : 2]
Input [4]: [shardId#3483106, worklistShardItemId#3483618L, quantityAfterProdPlantOptimization#3483619, qty#3483620]
Arguments: [worklistShardItemId#3483618L ASC NULLS FIRST], false, 0
(21) Scan parquet
Output [38]: [orderProposalId#3483819L, orderProposalItemId#3483820, supplierGroup#3483821, supplier#3483822, plant#3483823, deliveryDateTime#3483824, subrange#3483825, supplyingPlant#3483826, productGroup#3483827, product#3483828, orderDateTime#3483829, availabilityDateTime#3483830, nextAvailabilityDateTime#3483831, sourceOfSupplyUuid#3483833, isFallbackOrderOnly#3483836, splitIndicator#3483838L, previousOrderProposal#3483839L, worklistShardItemId#3483842L, orderProposalItemGroupId#3483843, externalProductId#3483844, externalPlantId#3483845, logisticUnits#3483846, orderQuantityBaseUom#3483847, orderQuantityBaseUomUuid#3483848, minimumOrderQuantity#3483849, constraintLabels#3483850, constraintOperators#3483851, constraintValues#3483852, netPriceAmount#3483855, netPriceCurrencyCode#3483856, netPriceQuantity#3483857, netPriceQuantityUom#3483858, netPriceQuantityUomUuid#3483859, measurements#3483860, originalReplenishmentRunId#3483861L, optimizationGroups#3483862, shardId#3483863, sequenceId#3483841]
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#3483863), isnotnull(sequenceId#3483841), (shardId#3483863 = 0_5_10000000532), (sequenceId#3483841 = 5)]
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#3483819L, orderProposalItemId#3483820, supplierGroup#3483821, supplier#3483822, plant#3483823, deliveryDateTime#3483824, subrange#3483825, supplyingPlant#3483826, productGroup#3483827, product#3483828, orderDateTime#3483829, availabilityDateTime#3483830, nextAvailabilityDateTime#3483831, sourceOfSupplyUuid#3483833, isFallbackOrderOnly#3483836, splitIndicator#3483838L, previousOrderProposal#3483839L, worklistShardItemId#3483842L, orderProposalItemGroupId#3483843, externalProductId#3483844, externalPlantId#3483845, logisticUnits#3483846, orderQuantityBaseUom#3483847, orderQuantityBaseUomUuid#3483848, minimumOrderQuantity#3483849, constraintLabels#3483850, constraintOperators#3483851, constraintValues#3483852, netPriceAmount#3483855, netPriceCurrencyCode#3483856, netPriceQuantity#3483857, netPriceQuantityUom#3483858, netPriceQuantityUomUuid#3483859, measurements#3483860, originalReplenishmentRunId#3483861L, optimizationGroups#3483862, shardId#3483863, sequenceId#3483841]
(23) Filter [codegen id : 3]
Input [38]: [orderProposalId#3483819L, orderProposalItemId#3483820, supplierGroup#3483821, supplier#3483822, plant#3483823, deliveryDateTime#3483824, subrange#3483825, supplyingPlant#3483826, productGroup#3483827, product#3483828, orderDateTime#3483829, availabilityDateTime#3483830, nextAvailabilityDateTime#3483831, sourceOfSupplyUuid#3483833, isFallbackOrderOnly#3483836, splitIndicator#3483838L, previousOrderProposal#3483839L, worklistShardItemId#3483842L, orderProposalItemGroupId#3483843, externalProductId#3483844, externalPlantId#3483845, logisticUnits#3483846, orderQuantityBaseUom#3483847, orderQuantityBaseUomUuid#3483848, minimumOrderQuantity#3483849, constraintLabels#3483850, constraintOperators#3483851, constraintValues#3483852, netPriceAmount#3483855, netPriceCurrencyCode#3483856, netPriceQuantity#3483857, netPriceQuantityUom#3483858, netPriceQuantityUomUuid#3483859, measurements#3483860, originalReplenishmentRunId#3483861L, optimizationGroups#3483862, shardId#3483863, sequenceId#3483841]
Condition : isnotnull(worklistShardItemId#3483842L)
(24) Project [codegen id : 3]
Output [36]: [orderProposalId#3483819L, orderProposalItemId#3483820, supplierGroup#3483821, supplier#3483822, plant#3483823, deliveryDateTime#3483824, subrange#3483825, supplyingPlant#3483826, productGroup#3483827, product#3483828, orderDateTime#3483829, availabilityDateTime#3483830, nextAvailabilityDateTime#3483831, sourceOfSupplyUuid#3483833, isFallbackOrderOnly#3483836, splitIndicator#3483838L, previousOrderProposal#3483839L, worklistShardItemId#3483842L, orderProposalItemGroupId#3483843, externalProductId#3483844, externalPlantId#3483845, logisticUnits#3483846, orderQuantityBaseUom#3483847, orderQuantityBaseUomUuid#3483848, minimumOrderQuantity#3483849, constraintLabels#3483850, constraintOperators#3483851, constraintValues#3483852, netPriceAmount#3483855, netPriceCurrencyCode#3483856, netPriceQuantity#3483857, netPriceQuantityUom#3483858, netPriceQuantityUomUuid#3483859, measurements#3483860, originalReplenishmentRunId#3483861L, optimizationGroups#3483862]
Input [38]: [orderProposalId#3483819L, orderProposalItemId#3483820, supplierGroup#3483821, supplier#3483822, plant#3483823, deliveryDateTime#3483824, subrange#3483825, supplyingPlant#3483826, productGroup#3483827, product#3483828, orderDateTime#3483829, availabilityDateTime#3483830, nextAvailabilityDateTime#3483831, sourceOfSupplyUuid#3483833, isFallbackOrderOnly#3483836, splitIndicator#3483838L, previousOrderProposal#3483839L, worklistShardItemId#3483842L, orderProposalItemGroupId#3483843, externalProductId#3483844, externalPlantId#3483845, logisticUnits#3483846, orderQuantityBaseUom#3483847, orderQuantityBaseUomUuid#3483848, minimumOrderQuantity#3483849, constraintLabels#3483850, constraintOperators#3483851, constraintValues#3483852, netPriceAmount#3483855, netPriceCurrencyCode#3483856, netPriceQuantity#3483857, netPriceQuantityUom#3483858, netPriceQuantityUomUuid#3483859, measurements#3483860, originalReplenishmentRunId#3483861L, optimizationGroups#3483862, shardId#3483863, sequenceId#3483841]
(25) Exchange
Input [36]: [orderProposalId#3483819L, orderProposalItemId#3483820, supplierGroup#3483821, supplier#3483822, plant#3483823, deliveryDateTime#3483824, subrange#3483825, supplyingPlant#3483826, productGroup#3483827, product#3483828, orderDateTime#3483829, availabilityDateTime#3483830, nextAvailabilityDateTime#3483831, sourceOfSupplyUuid#3483833, isFallbackOrderOnly#3483836, splitIndicator#3483838L, previousOrderProposal#3483839L, worklistShardItemId#3483842L, orderProposalItemGroupId#3483843, externalProductId#3483844, externalPlantId#3483845, logisticUnits#3483846, orderQuantityBaseUom#3483847, orderQuantityBaseUomUuid#3483848, minimumOrderQuantity#3483849, constraintLabels#3483850, constraintOperators#3483851, constraintValues#3483852, netPriceAmount#3483855, netPriceCurrencyCode#3483856, netPriceQuantity#3483857, netPriceQuantityUom#3483858, netPriceQuantityUomUuid#3483859, measurements#3483860, originalReplenishmentRunId#3483861L, optimizationGroups#3483862]
Arguments: hashpartitioning(worklistShardItemId#3483842L, 30), REPARTITION_BY_NUM, [plan_id=1000487]
(26) Project [codegen id : 4]
Output [36]: [worklistShardItemId#3483842L, orderProposalId#3483819L, orderProposalItemId#3483820, orderProposalItemGroupId#3483843, originalReplenishmentRunId#3483861L, splitIndicator#3483838L, previousOrderProposal#3483839L, sourceOfSupplyUuid#3483833, supplierGroup#3483821, supplier#3483822, subrange#3483825, product#3483828, plant#3483823, orderDateTime#3483829, deliveryDateTime#3483824, availabilityDateTime#3483830, nextAvailabilityDateTime#3483831, isFallbackOrderOnly#3483836, orderQuantityBaseUom#3483847, orderQuantityBaseUomUuid#3483848, netPriceQuantity#3483857, netPriceQuantityUom#3483858, netPriceQuantityUomUuid#3483859, netPriceAmount#3483855, netPriceCurrencyCode#3483856, measurements#3483860, minimumOrderQuantity#3483849, constraintLabels#3483850, constraintOperators#3483851, constraintValues#3483852, logisticUnits#3483846, optimizationGroups#3483862, externalProductId#3483844, externalPlantId#3483845, supplyingPlant#3483826, productGroup#3483827]
Input [36]: [orderProposalId#3483819L, orderProposalItemId#3483820, supplierGroup#3483821, supplier#3483822, plant#3483823, deliveryDateTime#3483824, subrange#3483825, supplyingPlant#3483826, productGroup#3483827, product#3483828, orderDateTime#3483829, availabilityDateTime#3483830, nextAvailabilityDateTime#3483831, sourceOfSupplyUuid#3483833, isFallbackOrderOnly#3483836, splitIndicator#3483838L, previousOrderProposal#3483839L, worklistShardItemId#3483842L, orderProposalItemGroupId#3483843, externalProductId#3483844, externalPlantId#3483845, logisticUnits#3483846, orderQuantityBaseUom#3483847, orderQuantityBaseUomUuid#3483848, minimumOrderQuantity#3483849, constraintLabels#3483850, constraintOperators#3483851, constraintValues#3483852, netPriceAmount#3483855, netPriceCurrencyCode#3483856, netPriceQuantity#3483857, netPriceQuantityUom#3483858, netPriceQuantityUomUuid#3483859, measurements#3483860, originalReplenishmentRunId#3483861L, optimizationGroups#3483862]
(27) Sort [codegen id : 4]
Input [36]: [worklistShardItemId#3483842L, orderProposalId#3483819L, orderProposalItemId#3483820, orderProposalItemGroupId#3483843, originalReplenishmentRunId#3483861L, splitIndicator#3483838L, previousOrderProposal#3483839L, sourceOfSupplyUuid#3483833, supplierGroup#3483821, supplier#3483822, subrange#3483825, product#3483828, plant#3483823, orderDateTime#3483829, deliveryDateTime#3483824, availabilityDateTime#3483830, nextAvailabilityDateTime#3483831, isFallbackOrderOnly#3483836, orderQuantityBaseUom#3483847, orderQuantityBaseUomUuid#3483848, netPriceQuantity#3483857, netPriceQuantityUom#3483858, netPriceQuantityUomUuid#3483859, netPriceAmount#3483855, netPriceCurrencyCode#3483856, measurements#3483860, minimumOrderQuantity#3483849, constraintLabels#3483850, constraintOperators#3483851, constraintValues#3483852, logisticUnits#3483846, optimizationGroups#3483862, externalProductId#3483844, externalPlantId#3483845, supplyingPlant#3483826, productGroup#3483827]
Arguments: [worklistShardItemId#3483842L ASC NULLS FIRST], false, 0
(28) SortMergeJoin [codegen id : 5]
Left keys [1]: [worklistShardItemId#3483618L]
Right keys [1]: [worklistShardItemId#3483842L]
Join type: LeftOuter
Join condition: (shardId#3483106 = 0_5_10000000532)
(29) Project [codegen id : 5]
Output [39]: [shardId#3483106, worklistShardItemId#3483618L, quantityAfterProdPlantOptimization#3483619, qty#3483620, orderProposalId#3483819L, originalReplenishmentRunId#3483861L, supplierGroup#3483821, supplier#3483822, supplyingPlant#3483826, productGroup#3483827, product#3483828, plant#3483823, subrange#3483825, orderDateTime#3483829, deliveryDateTime#3483824, availabilityDateTime#3483830, nextAvailabilityDateTime#3483831, constraintValues#3483852, constraintOperators#3483851, constraintLabels#3483850, logisticUnits#3483846, orderQuantityBaseUom#3483847, orderQuantityBaseUomUuid#3483848, splitIndicator#3483838L, netPriceAmount#3483855, netPriceCurrencyCode#3483856, netPriceQuantity#3483857, netPriceQuantityUom#3483858, netPriceQuantityUomUuid#3483859, sourceOfSupplyUuid#3483833, minimumOrderQuantity#3483849, orderProposalItemId#3483820, orderProposalItemGroupId#3483843, optimizationGroups#3483862, measurements#3483860, externalProductId#3483844, externalPlantId#3483845, previousOrderProposal#3483839L, isFallbackOrderOnly#3483836]
Input [40]: [shardId#3483106, worklistShardItemId#3483618L, quantityAfterProdPlantOptimization#3483619, qty#3483620, worklistShardItemId#3483842L, orderProposalId#3483819L, orderProposalItemId#3483820, orderProposalItemGroupId#3483843, originalReplenishmentRunId#3483861L, splitIndicator#3483838L, previousOrderProposal#3483839L, sourceOfSupplyUuid#3483833, supplierGroup#3483821, supplier#3483822, subrange#3483825, product#3483828, plant#3483823, orderDateTime#3483829, deliveryDateTime#3483824, availabilityDateTime#3483830, nextAvailabilityDateTime#3483831, isFallbackOrderOnly#3483836, orderQuantityBaseUom#3483847, orderQuantityBaseUomUuid#3483848, netPriceQuantity#3483857, netPriceQuantityUom#3483858, netPriceQuantityUomUuid#3483859, netPriceAmount#3483855, netPriceCurrencyCode#3483856, measurements#3483860, minimumOrderQuantity#3483849, constraintLabels#3483850, constraintOperators#3483851, constraintValues#3483852, logisticUnits#3483846, optimizationGroups#3483862, externalProductId#3483844, externalPlantId#3483845, supplyingPlant#3483826, productGroup#3483827]
(30) Exchange
Input [39]: [shardId#3483106, worklistShardItemId#3483618L, quantityAfterProdPlantOptimization#3483619, qty#3483620, orderProposalId#3483819L, originalReplenishmentRunId#3483861L, supplierGroup#3483821, supplier#3483822, supplyingPlant#3483826, productGroup#3483827, product#3483828, plant#3483823, subrange#3483825, orderDateTime#3483829, deliveryDateTime#3483824, availabilityDateTime#3483830, nextAvailabilityDateTime#3483831, constraintValues#3483852, constraintOperators#3483851, constraintLabels#3483850, logisticUnits#3483846, orderQuantityBaseUom#3483847, orderQuantityBaseUomUuid#3483848, splitIndicator#3483838L, netPriceAmount#3483855, netPriceCurrencyCode#3483856, netPriceQuantity#3483857, netPriceQuantityUom#3483858, netPriceQuantityUomUuid#3483859, sourceOfSupplyUuid#3483833, minimumOrderQuantity#3483849, orderProposalItemId#3483820, orderProposalItemGroupId#3483843, optimizationGroups#3483862, measurements#3483860, externalProductId#3483844, externalPlantId#3483845, previousOrderProposal#3483839L, isFallbackOrderOnly#3483836]
Arguments: hashpartitioning(shardId#3483106, worklistShardItemId#3483618L, 30), ENSURE_REQUIREMENTS, [plan_id=1000496]
(31) Sort [codegen id : 6]
Input [39]: [shardId#3483106, worklistShardItemId#3483618L, quantityAfterProdPlantOptimization#3483619, qty#3483620, orderProposalId#3483819L, originalReplenishmentRunId#3483861L, supplierGroup#3483821, supplier#3483822, supplyingPlant#3483826, productGroup#3483827, product#3483828, plant#3483823, subrange#3483825, orderDateTime#3483829, deliveryDateTime#3483824, availabilityDateTime#3483830, nextAvailabilityDateTime#3483831, constraintValues#3483852, constraintOperators#3483851, constraintLabels#3483850, logisticUnits#3483846, orderQuantityBaseUom#3483847, orderQuantityBaseUomUuid#3483848, splitIndicator#3483838L, netPriceAmount#3483855, netPriceCurrencyCode#3483856, netPriceQuantity#3483857, netPriceQuantityUom#3483858, netPriceQuantityUomUuid#3483859, sourceOfSupplyUuid#3483833, minimumOrderQuantity#3483849, orderProposalItemId#3483820, orderProposalItemGroupId#3483843, optimizationGroups#3483862, measurements#3483860, externalProductId#3483844, externalPlantId#3483845, previousOrderProposal#3483839L, isFallbackOrderOnly#3483836]
Arguments: [shardId#3483106 ASC NULLS FIRST, worklistShardItemId#3483618L ASC NULLS FIRST], false, 0
(32) Scan ExistingRDD [codegen id : 7]
Output [6]: [shardId#3484575, worklistShardItemId#3484576L, qty#3484577, demandChannel#3484578, demandStream#3484579, kpis#3484580]
Arguments: [shardId#3484575, worklistShardItemId#3484576L, qty#3484577, demandChannel#3484578, demandStream#3484579, kpis#3484580], MapPartitionsRDD[148223] at start at FileStorageAdapterImpl.java:596, ExistingRDD, UnknownPartitioning(0)
(33) Filter [codegen id : 7]
Input [6]: [shardId#3484575, worklistShardItemId#3484576L, qty#3484577, demandChannel#3484578, demandStream#3484579, kpis#3484580]
Condition : (((isnull(qty#3484577) AND isnull(demandChannel#3484578)) AND isnull(demandStream#3484579)) AND (isnotnull(shardId#3484575) AND isnotnull(worklistShardItemId#3484576L)))
(34) Project [codegen id : 7]
Output [3]: [shardId#3484575, worklistShardItemId#3484576L, coalesce(kpis#3484580, []) AS prodLocSpecificKpis#3484581]
Input [6]: [shardId#3484575, worklistShardItemId#3484576L, qty#3484577, demandChannel#3484578, demandStream#3484579, kpis#3484580]
(35) Exchange
Input [3]: [shardId#3484575, worklistShardItemId#3484576L, prodLocSpecificKpis#3484581]
Arguments: hashpartitioning(shardId#3484575, worklistShardItemId#3484576L, 30), ENSURE_REQUIREMENTS, [plan_id=1000502]
(36) Sort [codegen id : 8]
Input [3]: [shardId#3484575, worklistShardItemId#3484576L, prodLocSpecificKpis#3484581]
Arguments: [shardId#3484575 ASC NULLS FIRST, worklistShardItemId#3484576L ASC NULLS FIRST], false, 0
(37) SortMergeJoin [codegen id : 9]
Left keys [2]: [shardId#3483106, worklistShardItemId#3483618L]
Right keys [2]: [shardId#3484575, worklistShardItemId#3484576L]
Join type: LeftOuter
Join condition: None
(38) Project [codegen id : 9]
Output [40]: [shardId#3483106, worklistShardItemId#3483618L, quantityAfterProdPlantOptimization#3483619, qty#3483620, orderProposalId#3483819L, originalReplenishmentRunId#3483861L, supplierGroup#3483821, supplier#3483822, supplyingPlant#3483826, productGroup#3483827, product#3483828, plant#3483823, subrange#3483825, orderDateTime#3483829, deliveryDateTime#3483824, availabilityDateTime#3483830, nextAvailabilityDateTime#3483831, constraintValues#3483852, constraintOperators#3483851, constraintLabels#3483850, logisticUnits#3483846, orderQuantityBaseUom#3483847, orderQuantityBaseUomUuid#3483848, splitIndicator#3483838L, netPriceAmount#3483855, netPriceCurrencyCode#3483856, netPriceQuantity#3483857, netPriceQuantityUom#3483858, netPriceQuantityUomUuid#3483859, sourceOfSupplyUuid#3483833, minimumOrderQuantity#3483849, orderProposalItemId#3483820, orderProposalItemGroupId#3483843, optimizationGroups#3483862, measurements#3483860, externalProductId#3483844, externalPlantId#3483845, previousOrderProposal#3483839L, isFallbackOrderOnly#3483836, coalesce(prodLocSpecificKpis#3484581, []) AS prodLocSpecificKpis#3484582]
Input [42]: [shardId#3483106, worklistShardItemId#3483618L, quantityAfterProdPlantOptimization#3483619, qty#3483620, orderProposalId#3483819L, originalReplenishmentRunId#3483861L, supplierGroup#3483821, supplier#3483822, supplyingPlant#3483826, productGroup#3483827, product#3483828, plant#3483823, subrange#3483825, orderDateTime#3483829, deliveryDateTime#3483824, availabilityDateTime#3483830, nextAvailabilityDateTime#3483831, constraintValues#3483852, constraintOperators#3483851, constraintLabels#3483850, logisticUnits#3483846, orderQuantityBaseUom#3483847, orderQuantityBaseUomUuid#3483848, splitIndicator#3483838L, netPriceAmount#3483855, netPriceCurrencyCode#3483856, netPriceQuantity#3483857, netPriceQuantityUom#3483858, netPriceQuantityUomUuid#3483859, sourceOfSupplyUuid#3483833, minimumOrderQuantity#3483849, orderProposalItemId#3483820, orderProposalItemGroupId#3483843, optimizationGroups#3483862, measurements#3483860, externalProductId#3483844, externalPlantId#3483845, previousOrderProposal#3483839L, isFallbackOrderOnly#3483836, shardId#3484575, worklistShardItemId#3484576L, prodLocSpecificKpis#3484581]
(39) Scan ExistingRDD [codegen id : 10]
Output [6]: [shardId#3484591, worklistShardItemId#3484592L, qty#3484593, demandChannel#3484594, demandStream#3484595, kpis#3484596]
Arguments: [shardId#3484591, worklistShardItemId#3484592L, qty#3484593, demandChannel#3484594, demandStream#3484595, kpis#3484596], MapPartitionsRDD[148223] at start at FileStorageAdapterImpl.java:596, ExistingRDD, UnknownPartitioning(0)
(40) Filter [codegen id : 10]
Input [6]: [shardId#3484591, worklistShardItemId#3484592L, qty#3484593, demandChannel#3484594, demandStream#3484595, kpis#3484596]
Condition : ((((isnull(qty#3484593) AND isnotnull(demandChannel#3484594)) AND isnotnull(demandStream#3484595)) AND (size(kpis#3484596, true) > 0)) AND (isnotnull(shardId#3484591) AND isnotnull(worklistShardItemId#3484592L)))
(41) Project [codegen id : 10]
Output [5]: [shardId#3484591, worklistShardItemId#3484592L, demandChannel#3484594, demandStream#3484595, kpis#3484596]
Input [6]: [shardId#3484591, worklistShardItemId#3484592L, qty#3484593, demandChannel#3484594, demandStream#3484595, kpis#3484596]
(42) ObjectHashAggregate
Input [5]: [shardId#3484591, worklistShardItemId#3484592L, demandChannel#3484594, demandStream#3484595, kpis#3484596]
Keys [2]: [shardId#3484591, worklistShardItemId#3484592L]
Functions [1]: [partial_collect_list(struct(demandChannel, demandChannel#3484594, demandStream, demandStream#3484595, kpis, kpis#3484596), 0, 0)]
Aggregate Attributes [1]: [buf#3484771]
Results [3]: [shardId#3484591, worklistShardItemId#3484592L, buf#3484772]
(43) Exchange
Input [3]: [shardId#3484591, worklistShardItemId#3484592L, buf#3484772]
Arguments: hashpartitioning(shardId#3484591, worklistShardItemId#3484592L, 30), ENSURE_REQUIREMENTS, [plan_id=1000513]
(44) ObjectHashAggregate
Input [3]: [shardId#3484591, worklistShardItemId#3484592L, buf#3484772]
Keys [2]: [shardId#3484591, worklistShardItemId#3484592L]
Functions [1]: [collect_list(struct(demandChannel, demandChannel#3484594, demandStream, demandStream#3484595, kpis, kpis#3484596), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(demandChannel, demandChannel#3484594, demandStream, demandStream#3484595, kpis, kpis#3484596), 0, 0)#3484590]
Results [3]: [shardId#3484591, worklistShardItemId#3484592L, collect_list(struct(demandChannel, demandChannel#3484594, demandStream, demandStream#3484595, kpis, kpis#3484596), 0, 0)#3484590 AS channelStreamSpecificKpis#3484583]
(45) Sort [codegen id : 11]
Input [3]: [shardId#3484591, worklistShardItemId#3484592L, channelStreamSpecificKpis#3484583]
Arguments: [shardId#3484591 ASC NULLS FIRST, worklistShardItemId#3484592L ASC NULLS FIRST], false, 0
(46) SortMergeJoin [codegen id : 12]
Left keys [2]: [shardId#3483106, worklistShardItemId#3483618L]
Right keys [2]: [shardId#3484591, worklistShardItemId#3484592L]
Join type: LeftOuter
Join condition: None
(47) Project [codegen id : 12]
Output [41]: [shardId#3483106, worklistShardItemId#3483618L, quantityAfterProdPlantOptimization#3483619, qty#3483620, orderProposalId#3483819L, originalReplenishmentRunId#3483861L, supplierGroup#3483821, supplier#3483822, supplyingPlant#3483826, productGroup#3483827, product#3483828, plant#3483823, subrange#3483825, orderDateTime#3483829, deliveryDateTime#3483824, availabilityDateTime#3483830, nextAvailabilityDateTime#3483831, constraintValues#3483852, constraintOperators#3483851, constraintLabels#3483850, logisticUnits#3483846, orderQuantityBaseUom#3483847, orderQuantityBaseUomUuid#3483848, splitIndicator#3483838L, netPriceAmount#3483855, netPriceCurrencyCode#3483856, netPriceQuantity#3483857, netPriceQuantityUom#3483858, netPriceQuantityUomUuid#3483859, sourceOfSupplyUuid#3483833, minimumOrderQuantity#3483849, orderProposalItemId#3483820, orderProposalItemGroupId#3483843, optimizationGroups#3483862, measurements#3483860, externalProductId#3483844, externalPlantId#3483845, previousOrderProposal#3483839L, isFallbackOrderOnly#3483836, prodLocSpecificKpis#3484582, coalesce(channelStreamSpecificKpis#3484583, []) AS channelStreamSpecificKpis#3484597]
Input [43]: [shardId#3483106, worklistShardItemId#3483618L, quantityAfterProdPlantOptimization#3483619, qty#3483620, orderProposalId#3483819L, originalReplenishmentRunId#3483861L, supplierGroup#3483821, supplier#3483822, supplyingPlant#3483826, productGroup#3483827, product#3483828, plant#3483823, subrange#3483825, orderDateTime#3483829, deliveryDateTime#3483824, availabilityDateTime#3483830, nextAvailabilityDateTime#3483831, constraintValues#3483852, constraintOperators#3483851, constraintLabels#3483850, logisticUnits#3483846, orderQuantityBaseUom#3483847, orderQuantityBaseUomUuid#3483848, splitIndicator#3483838L, netPriceAmount#3483855, netPriceCurrencyCode#3483856, netPriceQuantity#3483857, netPriceQuantityUom#3483858, netPriceQuantityUomUuid#3483859, sourceOfSupplyUuid#3483833, minimumOrderQuantity#3483849, orderProposalItemId#3483820, orderProposalItemGroupId#3483843, optimizationGroups#3483862, measurements#3483860, externalProductId#3483844, externalPlantId#3483845, previousOrderProposal#3483839L, isFallbackOrderOnly#3483836, prodLocSpecificKpis#3484582, shardId#3484591, worklistShardItemId#3484592L, channelStreamSpecificKpis#3484583]
(48) Scan ExistingRDD [codegen id : 13]
Output [6]: [shardId#3484604, worklistShardItemId#3484605L, qty#3484606, demandChannel#3484607, demandStream#3484608, kpis#3484609]
Arguments: [shardId#3484604, worklistShardItemId#3484605L, qty#3484606, demandChannel#3484607, demandStream#3484608, kpis#3484609], MapPartitionsRDD[148223] at start at FileStorageAdapterImpl.java:596, ExistingRDD, UnknownPartitioning(0)
(49) Filter [codegen id : 13]
Input [6]: [shardId#3484604, worklistShardItemId#3484605L, qty#3484606, demandChannel#3484607, demandStream#3484608, kpis#3484609]
Condition : ((isnotnull(qty#3484606) AND isnotnull(kpis#3484609)) AND (isnotnull(shardId#3484604) AND isnotnull(worklistShardItemId#3484605L)))
(50) Project [codegen id : 13]
Output [4]: [shardId#3484604, worklistShardItemId#3484605L, qty#3484606, kpis#3484609]
Input [6]: [shardId#3484604, worklistShardItemId#3484605L, qty#3484606, demandChannel#3484607, demandStream#3484608, kpis#3484609]
(51) ObjectHashAggregate
Input [4]: [shardId#3484604, worklistShardItemId#3484605L, qty#3484606, kpis#3484609]
Keys [2]: [shardId#3484604, worklistShardItemId#3484605L]
Functions [1]: [partial_collect_list(struct(qty, qty#3484606, kpis, kpis#3484609), 0, 0)]
Aggregate Attributes [1]: [buf#3484773]
Results [3]: [shardId#3484604, worklistShardItemId#3484605L, buf#3484774]
(52) Exchange
Input [3]: [shardId#3484604, worklistShardItemId#3484605L, buf#3484774]
Arguments: hashpartitioning(shardId#3484604, worklistShardItemId#3484605L, 30), ENSURE_REQUIREMENTS, [plan_id=1000525]
(53) ObjectHashAggregate
Input [3]: [shardId#3484604, worklistShardItemId#3484605L, buf#3484774]
Keys [2]: [shardId#3484604, worklistShardItemId#3484605L]
Functions [1]: [collect_list(struct(qty, qty#3484606, kpis, kpis#3484609), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(qty, qty#3484606, kpis, kpis#3484609), 0, 0)#3484603]
Results [3]: [shardId#3484604, worklistShardItemId#3484605L, map_from_entries(collect_list(struct(qty, qty#3484606, kpis, kpis#3484609), 0, 0)#3484603) AS quantityKpis#3484598]
(54) Sort [codegen id : 14]
Input [3]: [shardId#3484604, worklistShardItemId#3484605L, quantityKpis#3484598]
Arguments: [shardId#3484604 ASC NULLS FIRST, worklistShardItemId#3484605L ASC NULLS FIRST], false, 0
(55) SortMergeJoin [codegen id : 15]
Left keys [2]: [shardId#3483106, worklistShardItemId#3483618L]
Right keys [2]: [shardId#3484604, worklistShardItemId#3484605L]
Join type: LeftOuter
Join condition: None
(56) Project [codegen id : 15]
Output [42]: [shardId#3483106, worklistShardItemId#3483618L, quantityAfterProdPlantOptimization#3483619, qty#3483620, orderProposalId#3483819L, originalReplenishmentRunId#3483861L, supplierGroup#3483821, supplier#3483822, supplyingPlant#3483826, productGroup#3483827, product#3483828, plant#3483823, subrange#3483825, orderDateTime#3483829, deliveryDateTime#3483824, availabilityDateTime#3483830, nextAvailabilityDateTime#3483831, constraintValues#3483852, constraintOperators#3483851, constraintLabels#3483850, logisticUnits#3483846, orderQuantityBaseUom#3483847, orderQuantityBaseUomUuid#3483848, splitIndicator#3483838L, netPriceAmount#3483855, netPriceCurrencyCode#3483856, netPriceQuantity#3483857, netPriceQuantityUom#3483858, netPriceQuantityUomUuid#3483859, sourceOfSupplyUuid#3483833, minimumOrderQuantity#3483849, orderProposalItemId#3483820, orderProposalItemGroupId#3483843, optimizationGroups#3483862, measurements#3483860, externalProductId#3483844, externalPlantId#3483845, previousOrderProposal#3483839L, isFallbackOrderOnly#3483836, prodLocSpecificKpis#3484582, channelStreamSpecificKpis#3484597, coalesce(quantityKpis#3484598, map(keys: [], values: [])) AS quantityKpis#3484610]
Input [44]: [shardId#3483106, worklistShardItemId#3483618L, quantityAfterProdPlantOptimization#3483619, qty#3483620, orderProposalId#3483819L, originalReplenishmentRunId#3483861L, supplierGroup#3483821, supplier#3483822, supplyingPlant#3483826, productGroup#3483827, product#3483828, plant#3483823, subrange#3483825, orderDateTime#3483829, deliveryDateTime#3483824, availabilityDateTime#3483830, nextAvailabilityDateTime#3483831, constraintValues#3483852, constraintOperators#3483851, constraintLabels#3483850, logisticUnits#3483846, orderQuantityBaseUom#3483847, orderQuantityBaseUomUuid#3483848, splitIndicator#3483838L, netPriceAmount#3483855, netPriceCurrencyCode#3483856, netPriceQuantity#3483857, netPriceQuantityUom#3483858, netPriceQuantityUomUuid#3483859, sourceOfSupplyUuid#3483833, minimumOrderQuantity#3483849, orderProposalItemId#3483820, orderProposalItemGroupId#3483843, optimizationGroups#3483862, measurements#3483860, externalProductId#3483844, externalPlantId#3483845, previousOrderProposal#3483839L, isFallbackOrderOnly#3483836, prodLocSpecificKpis#3484582, channelStreamSpecificKpis#3484597, shardId#3484604, worklistShardItemId#3484605L, quantityKpis#3484598]
(57) Filter [codegen id : 1]
Input [39]: [availabilityDateTime#3483796, channelStreamSpecificKpis#3484597, constraintLabels#3483808, constraintOperators#3483809, constraintValues#3483811, deliveryDateTime#3483795, isFallbackOrderOnly#3483798, logisticUnits#3483813, measurements#3483806, minimumOrderQuantity#3483807, netPriceAmount#3483804, netPriceCurrencyCode#3483805, netPriceQuantity#3483801, netPriceQuantityUom#3483802, netPriceQuantityUomUuid#3483803, nextAvailabilityDateTime#3483797, optimizationGroups#3483814, orderDateTime#3483794, orderProposalId#3483776L, orderProposalItemGroupId#3483778, orderProposalItemId#3483777, orderQuantityBaseUom#3483799, orderQuantityBaseUomUuid#3483800, originalReplenishmentRunId#3483779L, plant#3483790, previousOrderProposal#3483782L, prodLocSpecificKpis#3484582, product#3483789, productGroup#3483818, qty#3483620, quantityAfterProdPlantOptimization#3483619, quantityKpis#3484610, shardId#3483106, sourceOfSupplyUuid#3483785, splitIndicator#3483781L, subrange#3483788, supplier#3483787, supplierGroup#3483786, supplyingPlant#3483817]
Condition : NOT (isFallbackOrderOnly#3483798 <=> true)
(58) Project [codegen id : 1]
Output [36]: [shardId#3483106, quantityAfterProdPlantOptimization#3483619, qty#3483620, orderProposalId#3483776L, originalReplenishmentRunId#3483779L, supplierGroup#3483786, supplier#3483787, supplyingPlant#3483817, productGroup#3483818, product#3483789, plant#3483790, subrange#3483788, orderDateTime#3483794, deliveryDateTime#3483795, availabilityDateTime#3483796, nextAvailabilityDateTime#3483797, logisticUnits#3483813, orderQuantityBaseUom#3483799, orderQuantityBaseUomUuid#3483800, splitIndicator#3483781L, netPriceAmount#3483804, netPriceCurrencyCode#3483805, netPriceQuantity#3483801, netPriceQuantityUom#3483802, netPriceQuantityUomUuid#3483803, sourceOfSupplyUuid#3483785, minimumOrderQuantity#3483807, orderProposalItemId#3483777, orderProposalItemGroupId#3483778, optimizationGroups#3483814, measurements#3483806, previousOrderProposal#3483782L, prodLocSpecificKpis#3484582, channelStreamSpecificKpis#3484597, quantityKpis#3484610, arrays_zip(constraintLabels#3483808, constraintOperators#3483809, constraintValues#3483811, constraintLabels, constraintOperators, constraintValues) AS constraintStructArray#3485024]
Input [39]: [availabilityDateTime#3483796, channelStreamSpecificKpis#3484597, constraintLabels#3483808, constraintOperators#3483809, constraintValues#3483811, deliveryDateTime#3483795, isFallbackOrderOnly#3483798, logisticUnits#3483813, measurements#3483806, minimumOrderQuantity#3483807, netPriceAmount#3483804, netPriceCurrencyCode#3483805, netPriceQuantity#3483801, netPriceQuantityUom#3483802, netPriceQuantityUomUuid#3483803, nextAvailabilityDateTime#3483797, optimizationGroups#3483814, orderDateTime#3483794, orderProposalId#3483776L, orderProposalItemGroupId#3483778, orderProposalItemId#3483777, orderQuantityBaseUom#3483799, orderQuantityBaseUomUuid#3483800, originalReplenishmentRunId#3483779L, plant#3483790, previousOrderProposal#3483782L, prodLocSpecificKpis#3484582, product#3483789, productGroup#3483818, qty#3483620, quantityAfterProdPlantOptimization#3483619, quantityKpis#3484610, shardId#3483106, sourceOfSupplyUuid#3483785, splitIndicator#3483781L, subrange#3483788, supplier#3483787, supplierGroup#3483786, supplyingPlant#3483817]
(59) Project
Output [37]: [shardId#3483106, qty#3483620, orderProposalId#3483776L, originalReplenishmentRunId#3483779L, supplierGroup#3483786, supplier#3483787, supplyingPlant#3483817, productGroup#3483818, product#3483789, plant#3483790, subrange#3483788, orderDateTime#3483794, deliveryDateTime#3483795, availabilityDateTime#3483796, nextAvailabilityDateTime#3483797, logisticUnits#3483813, orderQuantityBaseUom#3483799, orderQuantityBaseUomUuid#3483800, splitIndicator#3483781L, netPriceAmount#3483804, netPriceCurrencyCode#3483805, netPriceQuantity#3483801, netPriceQuantityUom#3483802, netPriceQuantityUomUuid#3483803, sourceOfSupplyUuid#3483785, orderProposalItemId#3483777, orderProposalItemGroupId#3483778, optimizationGroups#3483814, measurements#3483806, previousOrderProposal#3483782L, prodLocSpecificKpis#3484582, channelStreamSpecificKpis#3484597, quantityKpis#3484610, struct(minServiceLevel, array_min(filter(constraintStructArray#3485024, lambdafunction((lambda x_11541#3485031.constraintLabels = ServiceLevel), lambda x_11541#3485031, false)).constraintValues), minServiceLevelMinStock, array_min(filter(constraintStructArray#3485024, lambdafunction((lambda x_11542#3485032.constraintLabels = ServiceLevelMinimumStock), lambda x_11542#3485032, false)).constraintValues), maxServiceLevelEndOfListing, array_min(filter(constraintStructArray#3485024, lambdafunction((lambda x_11543#3485033.constraintLabels = ServiceLevelAtStartOfDelisting), lambda x_11543#3485033, false)).constraintValues), maxRoc, array_min(filter(constraintStructArray#3485024, lambdafunction((lambda x_11544#3485034.constraintLabels = RangeOfCoverage), lambda x_11544#3485034, false)).constraintValues), minimumOrderQuantity, minimumOrderQuantity#3483807, endOfListingDateTime, coalesce(filter(prodLocSpecificKpis#3484582, lambdafunction((lambda x_11545#3485035.label = NonListingStartTimestamp), lambda x_11545#3485035, false))[0].dateTime, 1970-01-01 00:00:00)) AS constraintBenchmark#3485030, CASE WHEN (qty#3483620 <=> quantityAfterProdPlantOptimization#3483619) THEN array(struct(isProposedCandidate, true, isProdlocOptimalCandidate, true, candidateOrderQuantity, coalesce((qty#3483620 * (cast(element_at(filter(logisticUnits#3483813, lambdafunction(lambda x_11546#3485103.isOrderUnit, lambda x_11546#3485103, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#3483813, lambdafunction(lambda x_11546#3485104.isOrderUnit, lambda x_11546#3485104, false)), 1, None, false).numerator as double))), qty#3483620), orderQuantityUom, coalesce(element_at(filter(logisticUnits#3483813, lambdafunction(lambda x_11546#3485105.isOrderUnit, lambda x_11546#3485105, false)), 1, None, false).uom, orderQuantityBaseUom#3483799), orderQuantityUomUuid, coalesce(element_at(filter(logisticUnits#3483813, lambdafunction(lambda x_11546#3485106.isOrderUnit, lambda x_11546#3485106, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#3483800), candidateOrderQuantityInBaseUnit, qty#3483620, orderQuantityBaseUom, orderQuantityBaseUom#3483799, orderQuantityBaseUomUuid, orderQuantityBaseUomUuid#3483800, candidateOrderQuantityInPreferredUnit, coalesce(array_min(transform(filter(logisticUnits#3483813, lambdafunction((lambda x_11548#3485107.isPreferred AND (((qty#3483620 * cast(lambda x_11548#3485107.denominator as double)) % cast(lambda x_11548#3485107.numerator as double)) = 0.0)), lambda x_11548#3485107, false)), lambdafunction(struct(inPreferredQuantity, ((qty#3483620 * cast(lambda x_11549#3485148.denominator as double)) / cast(lambda x_11549#3485148.numerator as double)), uom, lambda x_11549#3485148.uom, uomUuid, lambda x_11549#3485148.uomUuid), lambda x_11549#3485148, false))).inPreferredQuantity, coalesce((qty#3483620 * (cast(element_at(filter(logisticUnits#3483813, lambdafunction(lambda x_11547#3485108.isOrderUnit, lambda x_11547#3485108, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#3483813, lambdafunction(lambda x_11547#3485109.isOrderUnit, lambda x_11547#3485109, false)), 1, None, false).numerator as double))), qty#3483620)), orderQuantityPreferredUom, coalesce(array_min(transform(filter(logisticUnits#3483813, lambdafunction((lambda x_11548#3485110.isPreferred AND (((qty#3483620 * cast(lambda x_11548#3485110.denominator as double)) % cast(lambda x_11548#3485110.numerator as double)) = 0.0)), lambda x_11548#3485110, false)), lambdafunction(struct(inPreferredQuantity, ((qty#3483620 * cast(lambda x_11549#3485149.denominator as double)) / cast(lambda x_11549#3485149.numerator as double)), uom, lambda x_11549#3485149.uom, uomUuid, lambda x_11549#3485149.uomUuid), lambda x_11549#3485149, false))).uom, coalesce(element_at(filter(logisticUnits#3483813, lambdafunction(lambda x_11547#3485111.isOrderUnit, lambda x_11547#3485111, false)), 1, None, false).uom, orderQuantityBaseUom#3483799)), orderQuantityPreferredUomUuid, coalesce(array_min(transform(filter(logisticUnits#3483813, lambdafunction((lambda x_11548#3485112.isPreferred AND (((qty#3483620 * cast(lambda x_11548#3485112.denominator as double)) % cast(lambda x_11548#3485112.numerator as double)) = 0.0)), lambda x_11548#3485112, false)), lambdafunction(struct(inPreferredQuantity, ((qty#3483620 * cast(lambda x_11549#3485150.denominator as double)) / cast(lambda x_11549#3485150.numerator as double)), uom, lambda x_11549#3485150.uom, uomUuid, lambda x_11549#3485150.uomUuid), lambda x_11549#3485150, false))).uomUuid, coalesce(element_at(filter(logisticUnits#3483813, lambdafunction(lambda x_11547#3485113.isOrderUnit, lambda x_11547#3485113, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#3483800)), serviceLevel, coalesce(filter(element_at(quantityKpis#3484610, qty#3483620, None, false), lambdafunction((lambda x_11554#3485114.label = ServiceLevel), lambda x_11554#3485114, false))[0].value, 0.0), serviceLevelMinStock, ... 5 more fields)) ELSE array(struct(isProposedCandidate, true, isProdlocOptimalCandidate, false, candidateOrderQuantity, coalesce((qty#3483620 * (cast(element_at(filter(logisticUnits#3483813, lambdafunction(lambda x_11546#3485118.isOrderUnit, lambda x_11546#3485118, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#3483813, lambdafunction(lambda x_11546#3485119.isOrderUnit, lambda x_11546#3485119, false)), 1, None, false).numerator as double))), qty#3483620), orderQuantityUom, coalesce(element_at(filter(logisticUnits#3483813, lambdafunction(lambda x_11546#3485120.isOrderUnit, lambda x_11546#3485120, false)), 1, None, false).uom, orderQuantityBaseUom#3483799), orderQuantityUomUuid, coalesce(element_at(filter(logisticUnits#3483813, lambdafunction(lambda x_11546#3485121.isOrderUnit, lambda x_11546#3485121, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#3483800), candidateOrderQuantityInBaseUnit, qty#3483620, orderQuantityBaseUom, orderQuantityBaseUom#3483799, orderQuantityBaseUomUuid, orderQuantityBaseUomUuid#3483800, candidateOrderQuantityInPreferredUnit, coalesce(array_min(transform(filter(logisticUnits#3483813, lambdafunction((lambda x_11548#3485122.isPreferred AND (((qty#3483620 * cast(lambda x_11548#3485122.denominator as double)) % cast(lambda x_11548#3485122.numerator as double)) = 0.0)), lambda x_11548#3485122, false)), lambdafunction(struct(inPreferredQuantity, ((qty#3483620 * cast(lambda x_11549#3485151.denominator as double)) / cast(lambda x_11549#3485151.numerator as double)), uom, lambda x_11549#3485151.uom, uomUuid, lambda x_11549#3485151.uomUuid), lambda x_11549#3485151, false))).inPreferredQuantity, coalesce((qty#3483620 * (cast(element_at(filter(logisticUnits#3483813, lambdafunction(lambda x_11547#3485123.isOrderUnit, lambda x_11547#3485123, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#3483813, lambdafunction(lambda x_11547#3485124.isOrderUnit, lambda x_11547#3485124, false)), 1, None, false).numerator as double))), qty#3483620)), orderQuantityPreferredUom, coalesce(array_min(transform(filter(logisticUnits#3483813, lambdafunction((lambda x_11548#3485125.isPreferred AND (((qty#3483620 * cast(lambda x_11548#3485125.denominator as double)) % cast(lambda x_11548#3485125.numerator as double)) = 0.0)), lambda x_11548#3485125, false)), lambdafunction(struct(inPreferredQuantity, ((qty#3483620 * cast(lambda x_11549#3485152.denominator as double)) / cast(lambda x_11549#3485152.numerator as double)), uom, lambda x_11549#3485152.uom, uomUuid, lambda x_11549#3485152.uomUuid), lambda x_11549#3485152, false))).uom, coalesce(element_at(filter(logisticUnits#3483813, lambdafunction(lambda x_11547#3485126.isOrderUnit, lambda x_11547#3485126, false)), 1, None, false).uom, orderQuantityBaseUom#3483799)), orderQuantityPreferredUomUuid, coalesce(array_min(transform(filter(logisticUnits#3483813, lambdafunction((lambda x_11548#3485127.isPreferred AND (((qty#3483620 * cast(lambda x_11548#3485127.denominator as double)) % cast(lambda x_11548#3485127.numerator as double)) = 0.0)), lambda x_11548#3485127, false)), lambdafunction(struct(inPreferredQuantity, ((qty#3483620 * cast(lambda x_11549#3485153.denominator as double)) / cast(lambda x_11549#3485153.numerator as double)), uom, lambda x_11549#3485153.uom, uomUuid, lambda x_11549#3485153.uomUuid), lambda x_11549#3485153, false))).uomUuid, coalesce(element_at(filter(logisticUnits#3483813, lambdafunction(lambda x_11547#3485128.isOrderUnit, lambda x_11547#3485128, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#3483800)), serviceLevel, coalesce(filter(element_at(quantityKpis#3484610, qty#3483620, None, false), lambdafunction((lambda x_11558#3485129.label = ServiceLevel), lambda x_11558#3485129, false))[0].value, 0.0), serviceLevelMinStock, ... 5 more fields), struct(isProposedCandidate, false, isProdlocOptimalCandidate, true, candidateOrderQuantity, coalesce((quantityAfterProdPlantOptimization#3483619 * (cast(element_at(filter(logisticUnits#3483813, lambdafunction(lambda x_11550#3485133.isOrderUnit, lambda x_11550#3485133, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#3483813, lambdafunction(lambda x_11550#3485134.isOrderUnit, lambda x_11550#3485134, false)), 1, None, false).numerator as double))), quantityAfterProdPlantOptimization#3483619), orderQuantityUom, coalesce(element_at(filter(logisticUnits#3483813, lambdafunction(lambda x_11550#3485135.isOrderUnit, lambda x_11550#3485135, false)), 1, None, false).uom, orderQuantityBaseUom#3483799), orderQuantityUomUuid, coalesce(element_at(filter(logisticUnits#3483813, lambdafunction(lambda x_11550#3485136.isOrderUnit, lambda x_11550#3485136, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#3483800), candidateOrderQuantityInBaseUnit, quantityAfterProdPlantOptimization#3483619, orderQuantityBaseUom, orderQuantityBaseUom#3483799, orderQuantityBaseUomUuid, orderQuantityBaseUomUuid#3483800, candidateOrderQuantityInPreferredUnit, coalesce(array_min(transform(filter(logisticUnits#3483813, lambdafunction((lambda x_11552#3485137.isPreferred AND (((quantityAfterProdPlantOptimization#3483619 * cast(lambda x_11552#3485137.denominator as double)) % cast(lambda x_11552#3485137.numerator as double)) = 0.0)), lambda x_11552#3485137, false)), lambdafunction(struct(inPreferredQuantity, ((quantityAfterProdPlantOptimization#3483619 * cast(lambda x_11553#3485154.denominator as double)) / cast(lambda x_11553#3485154.numerator as double)), uom, lambda x_11553#3485154.uom, uomUuid, lambda x_11553#3485154.uomUuid), lambda x_11553#3485154, false))).inPreferredQuantity, coalesce((quantityAfterProdPlantOptimization#3483619 * (cast(element_at(filter(logisticUnits#3483813, lambdafunction(lambda x_11551#3485138.isOrderUnit, lambda x_11551#3485138, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#3483813, lambdafunction(lambda x_11551#3485139.isOrderUnit, lambda x_11551#3485139, false)), 1, None, false).numerator as double))), quantityAfterProdPlantOptimization#3483619)), orderQuantityPreferredUom, coalesce(array_min(transform(filter(logisticUnits#3483813, lambdafunction((lambda x_11552#3485140.isPreferred AND (((quantityAfterProdPlantOptimization#3483619 * cast(lambda x_11552#3485140.denominator as double)) % cast(lambda x_11552#3485140.numerator as double)) = 0.0)), lambda x_11552#3485140, false)), lambdafunction(struct(inPreferredQuantity, ((quantityAfterProdPlantOptimization#3483619 * cast(lambda x_11553#3485155.denominator as double)) / cast(lambda x_11553#3485155.numerator as double)), uom, lambda x_11553#3485155.uom, uomUuid, lambda x_11553#3485155.uomUuid), lambda x_11553#3485155, false))).uom, coalesce(element_at(filter(logisticUnits#3483813, lambdafunction(lambda x_11551#3485141.isOrderUnit, lambda x_11551#3485141, false)), 1, None, false).uom, orderQuantityBaseUom#3483799)), orderQuantityPreferredUomUuid, coalesce(array_min(transform(filter(logisticUnits#3483813, lambdafunction((lambda x_11552#3485142.isPreferred AND (((quantityAfterProdPlantOptimization#3483619 * cast(lambda x_11552#3485142.denominator as double)) % cast(lambda x_11552#3485142.numerator as double)) = 0.0)), lambda x_11552#3485142, false)), lambdafunction(struct(inPreferredQuantity, ((quantityAfterProdPlantOptimization#3483619 * cast(lambda x_11553#3485156.denominator as double)) / cast(lambda x_11553#3485156.numerator as double)), uom, lambda x_11553#3485156.uom, uomUuid, lambda x_11553#3485156.uomUuid), lambda x_11553#3485156, false))).uomUuid, coalesce(element_at(filter(logisticUnits#3483813, lambdafunction(lambda x_11551#3485143.isOrderUnit, lambda x_11551#3485143, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#3483800)), serviceLevel, coalesce(filter(element_at(quantityKpis#3484610, quantityAfterProdPlantOptimization#3483619, None, false), lambdafunction((lambda x_11562#3485144.label = ServiceLevel), lambda x_11562#3485144, false))[0].value, 0.0), serviceLevelMinStock, ... 5 more fields)) END AS calculationAnalysis#3485102, coalesce(filter(prodLocSpecificKpis#3484582, lambdafunction((lambda x_11566#3485158.label = InitialStockQty), lambda x_11566#3485158, false))[0].dateTime, 1970-01-01 00:00:00) AS inventoryDateTime#3485157, coalesce(filter(prodLocSpecificKpis#3484582, lambdafunction((lambda x_11567#3485160.label = DemandPeriodEndTimestamp), lambda x_11567#3485160, false))[0].dateTime, 1970-01-01 00:00:00) AS demandPeriodEndDateTime#3485159]
Input [36]: [shardId#3483106, quantityAfterProdPlantOptimization#3483619, qty#3483620, orderProposalId#3483776L, originalReplenishmentRunId#3483779L, supplierGroup#3483786, supplier#3483787, supplyingPlant#3483817, productGroup#3483818, product#3483789, plant#3483790, subrange#3483788, orderDateTime#3483794, deliveryDateTime#3483795, availabilityDateTime#3483796, nextAvailabilityDateTime#3483797, logisticUnits#3483813, orderQuantityBaseUom#3483799, orderQuantityBaseUomUuid#3483800, splitIndicator#3483781L, netPriceAmount#3483804, netPriceCurrencyCode#3483805, netPriceQuantity#3483801, netPriceQuantityUom#3483802, netPriceQuantityUomUuid#3483803, sourceOfSupplyUuid#3483785, minimumOrderQuantity#3483807, orderProposalItemId#3483777, orderProposalItemGroupId#3483778, optimizationGroups#3483814, measurements#3483806, previousOrderProposal#3483782L, prodLocSpecificKpis#3484582, channelStreamSpecificKpis#3484597, quantityKpis#3484610, constraintStructArray#3485024]
(60) Project
Output [21]: [shardId#3483106, qty#3483620, orderProposalId#3483776L, originalReplenishmentRunId#3483779L, supplierGroup#3483786, supplier#3483787, supplyingPlant#3483817, productGroup#3483818, product#3483789, plant#3483790, subrange#3483788, orderDateTime#3483794, deliveryDateTime#3483795, logisticUnits#3483813, orderQuantityBaseUom#3483799, orderQuantityBaseUomUuid#3483800, splitIndicator#3483781L, orderProposalItemId#3483777, orderProposalItemGroupId#3483778, previousOrderProposal#3483782L, struct(itemId, orderProposalItemId#3483777, itemGroupId, orderProposalItemGroupId#3483778, supplier, supplier#3483787, supplyingPlant, supplyingPlant#3483817, productGroup, productGroup#3483818, product, product#3483789, plant, plant#3483790, supplierSubRange, subrange#3483788, sourceOfSupplyUuid, sourceOfSupplyUuid#3483785, deliveryDateTime, deliveryDateTime#3483795, unitPrice, netPriceAmount#3483804, unitPriceCurrency, netPriceCurrencyCode#3483805, unitPriceQuantity, ... 37 more fields) AS parentItem#3485233]
Input [37]: [shardId#3483106, qty#3483620, orderProposalId#3483776L, originalReplenishmentRunId#3483779L, supplierGroup#3483786, supplier#3483787, supplyingPlant#3483817, productGroup#3483818, product#3483789, plant#3483790, subrange#3483788, orderDateTime#3483794, deliveryDateTime#3483795, availabilityDateTime#3483796, nextAvailabilityDateTime#3483797, logisticUnits#3483813, orderQuantityBaseUom#3483799, orderQuantityBaseUomUuid#3483800, splitIndicator#3483781L, netPriceAmount#3483804, netPriceCurrencyCode#3483805, netPriceQuantity#3483801, netPriceQuantityUom#3483802, netPriceQuantityUomUuid#3483803, sourceOfSupplyUuid#3483785, orderProposalItemId#3483777, orderProposalItemGroupId#3483778, optimizationGroups#3483814, measurements#3483806, previousOrderProposal#3483782L, prodLocSpecificKpis#3484582, channelStreamSpecificKpis#3484597, quantityKpis#3484610, constraintBenchmark#3485030, calculationAnalysis#3485102, inventoryDateTime#3485157, demandPeriodEndDateTime#3485159]
(61) Project
Output [12]: [shardId#3483106, orderProposalId#3483776L, originalReplenishmentRunId#3483779L, supplierGroup#3483786, supplier#3483787, supplyingPlant#3483817, orderDateTime#3483794, splitIndicator#3483781L, orderProposalItemGroupId#3483778, previousOrderProposal#3483782L, parentItem#3485233, struct(itemId, orderProposalItemId#3483777, supplier, supplier#3483787, supplyingPlant, supplyingPlant#3483817, productGroup, productGroup#3483818, product, product#3483789, plant, plant#3483790, supplierSubRange, subrange#3483788, deliveryDateTime, deliveryDateTime#3483795, orderQuantity, coalesce((qty#3483620 * (cast(element_at(filter(logisticUnits#3483813, lambdafunction(lambda x_11591#3485267.isOrderUnit, lambda x_11591#3485267, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#3483813, lambdafunction(lambda x_11591#3485268.isOrderUnit, lambda x_11591#3485268, false)), 1, None, false).numerator as double))), qty#3483620), orderQuantityUom, coalesce(element_at(filter(logisticUnits#3483813, lambdafunction(lambda x_11591#3485269.isOrderUnit, lambda x_11591#3485269, false)), 1, None, false).uom, orderQuantityBaseUom#3483799), orderQuantityUomUuid, coalesce(element_at(filter(logisticUnits#3483813, lambdafunction(lambda x_11591#3485270.isOrderUnit, lambda x_11591#3485270, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#3483800), orderQuantityInBaseUnit, qty#3483620, orderQuantityBaseUom, ... 13 more fields) AS item#3485264]
Input [21]: [shardId#3483106, qty#3483620, orderProposalId#3483776L, originalReplenishmentRunId#3483779L, supplierGroup#3483786, supplier#3483787, supplyingPlant#3483817, productGroup#3483818, product#3483789, plant#3483790, subrange#3483788, orderDateTime#3483794, deliveryDateTime#3483795, logisticUnits#3483813, orderQuantityBaseUom#3483799, orderQuantityBaseUomUuid#3483800, splitIndicator#3483781L, orderProposalItemId#3483777, orderProposalItemGroupId#3483778, previousOrderProposal#3483782L, parentItem#3485233]
(62) ObjectHashAggregate
Input [12]: [shardId#3483106, orderProposalId#3483776L, originalReplenishmentRunId#3483779L, supplierGroup#3483786, supplier#3483787, supplyingPlant#3483817, orderDateTime#3483794, splitIndicator#3483781L, orderProposalItemGroupId#3483778, previousOrderProposal#3483782L, parentItem#3485233, item#3485264]
Keys [4]: [shardId#3483106, orderProposalId#3483776L, splitIndicator#3483781L, orderProposalItemGroupId#3483778]
Functions [8]: [partial_max(originalReplenishmentRunId#3483779L), partial_max(supplierGroup#3483786), partial_max(supplier#3483787), partial_max(supplyingPlant#3483817), partial_max(orderDateTime#3483794), partial_collect_list(parentItem#3485233, 0, 0), partial_collect_set(previousOrderProposal#3483782L, 0, 0), partial_collect_list(item#3485264, 0, 0)]
Aggregate Attributes [8]: [max#3486517L, max#3486518, max#3486519, max#3486520, max#3486521, buf#3486522, buf#3486523, buf#3486524]
Results [12]: [shardId#3483106, orderProposalId#3483776L, splitIndicator#3483781L, orderProposalItemGroupId#3483778, max#3486525L, max#3486526, max#3486527, max#3486528, max#3486529, buf#3486530, buf#3486531, buf#3486532]
(63) Exchange
Input [12]: [shardId#3483106, orderProposalId#3483776L, splitIndicator#3483781L, orderProposalItemGroupId#3483778, max#3486525L, max#3486526, max#3486527, max#3486528, max#3486529, buf#3486530, buf#3486531, buf#3486532]
Arguments: hashpartitioning(shardId#3483106, orderProposalId#3483776L, splitIndicator#3483781L, orderProposalItemGroupId#3483778, 30), ENSURE_REQUIREMENTS, [plan_id=1000781]
(64) ObjectHashAggregate
Input [12]: [shardId#3483106, orderProposalId#3483776L, splitIndicator#3483781L, orderProposalItemGroupId#3483778, max#3486525L, max#3486526, max#3486527, max#3486528, max#3486529, buf#3486530, buf#3486531, buf#3486532]
Keys [4]: [shardId#3483106, orderProposalId#3483776L, splitIndicator#3483781L, orderProposalItemGroupId#3483778]
Functions [8]: [max(originalReplenishmentRunId#3483779L), max(supplierGroup#3483786), max(supplier#3483787), max(supplyingPlant#3483817), max(orderDateTime#3483794), collect_list(parentItem#3485233, 0, 0), collect_set(previousOrderProposal#3483782L, 0, 0), collect_list(item#3485264, 0, 0)]
Aggregate Attributes [8]: [max(originalReplenishmentRunId#3483779L)#3485333L, max(supplierGroup#3483786)#3485334, max(supplier#3483787)#3485335, max(supplyingPlant#3483817)#3485336, max(orderDateTime#3483794)#3485337, collect_list(parentItem#3485233, 0, 0)#3485338, collect_set(previousOrderProposal#3483782L, 0, 0)#3485340, collect_list(item#3485264, 0, 0)#3485339]
Results [10]: [shardId#3483106, orderProposalId#3483776L, max(originalReplenishmentRunId#3483779L)#3485333L AS originalReplenishmentRunId#3485281L, max(supplierGroup#3483786)#3485334 AS supplierGroup#3485282, max(supplier#3483787)#3485335 AS supplier#3485283, max(supplyingPlant#3483817)#3485336 AS supplyingPlant#3485284, max(orderDateTime#3483794)#3485337 AS orderDateTime#3485285, collect_list(parentItem#3485233, 0, 0)#3485338 AS parentItems#3485286, collect_set(previousOrderProposal#3483782L, 0, 0)#3485340 AS previousOrderProposals#3485288, struct(itemGroupId, orderProposalItemGroupId#3483778, items, collect_list(item#3485264, 0, 0)#3485339) AS itemGroup#3485342]
(65) ObjectHashAggregate
Input [10]: [shardId#3483106, orderProposalId#3483776L, originalReplenishmentRunId#3485281L, supplierGroup#3485282, supplier#3485283, supplyingPlant#3485284, orderDateTime#3485285, parentItems#3485286, previousOrderProposals#3485288, itemGroup#3485342]
Keys [2]: [shardId#3483106, orderProposalId#3483776L]
Functions [8]: [partial_max(originalReplenishmentRunId#3485281L), partial_max(supplierGroup#3485282), partial_max(supplier#3485283), partial_max(supplyingPlant#3485284), partial_max(orderDateTime#3485285), partial_collect_list(itemGroup#3485342, 0, 0), partial_collect_list(parentItems#3485286, 0, 0), partial_collect_set(previousOrderProposals#3485288, 0, 0)]
Aggregate Attributes [8]: [max#3486501L, max#3486502, max#3486503, max#3486504, max#3486505, buf#3486506, buf#3486507, buf#3486508]
Results [10]: [shardId#3483106, orderProposalId#3483776L, max#3486509L, max#3486510, max#3486511, max#3486512, max#3486513, buf#3486514, buf#3486515, buf#3486516]
(66) Exchange
Input [10]: [shardId#3483106, orderProposalId#3483776L, max#3486509L, max#3486510, max#3486511, max#3486512, max#3486513, buf#3486514, buf#3486515, buf#3486516]
Arguments: hashpartitioning(shardId#3483106, orderProposalId#3483776L, 30), ENSURE_REQUIREMENTS, [plan_id=1000784]
(67) ObjectHashAggregate
Input [10]: [shardId#3483106, orderProposalId#3483776L, max#3486509L, max#3486510, max#3486511, max#3486512, max#3486513, buf#3486514, buf#3486515, buf#3486516]
Keys [2]: [shardId#3483106, orderProposalId#3483776L]
Functions [8]: [max(originalReplenishmentRunId#3485281L), max(supplierGroup#3485282), max(supplier#3485283), max(supplyingPlant#3485284), max(orderDateTime#3485285), collect_list(itemGroup#3485342, 0, 0), collect_list(parentItems#3485286, 0, 0), collect_set(previousOrderProposals#3485288, 0, 0)]
Aggregate Attributes [8]: [max(originalReplenishmentRunId#3485281L)#3485364L, max(supplierGroup#3485282)#3485365, max(supplier#3485283)#3485366, max(supplyingPlant#3485284)#3485367, max(orderDateTime#3485285)#3485368, collect_list(itemGroup#3485342, 0, 0)#3485369, collect_list(parentItems#3485286, 0, 0)#3485370, collect_set(previousOrderProposals#3485288, 0, 0)#3485371]
Results [10]: [shardId#3483106, orderProposalId#3483776L, max(originalReplenishmentRunId#3485281L)#3485364L AS originalReplenishmentRunId#3485343L, max(supplierGroup#3485282)#3485365 AS supplierGroup#3485344, max(supplier#3485283)#3485366 AS supplier#3485345, max(supplyingPlant#3485284)#3485367 AS supplyingPlant#3485346, max(orderDateTime#3485285)#3485368 AS orderDateTime#3485347, collect_list(itemGroup#3485342, 0, 0)#3485369 AS itemGroups#3485348, flatten(collect_list(parentItems#3485286, 0, 0)#3485370) AS parentItems#3485349, flatten(collect_set(previousOrderProposals#3485288, 0, 0)#3485371) AS previousOrderProposals#3485350]
(68) Project
Output [2]: [shardId#3483106, struct(orderProposalId, orderProposalId#3483776L, originalReplenishmentRunId, originalReplenishmentRunId#3485343L, supplierGroup, supplierGroup#3485344, optimizationGroups, null, supplier, CASE WHEN isnull(supplierGroup#3485344) THEN supplier#3485345 END, supplyingPlant, supplyingPlant#3485346, orderDateTime, orderDateTime#3485347, itemGroups, itemGroups#3485348, previousOrderProposals, array_distinct(previousOrderProposals#3485350), parentItems, parentItems#3485349) AS orderProposal#3485375]
Input [10]: [shardId#3483106, orderProposalId#3483776L, originalReplenishmentRunId#3485343L, supplierGroup#3485344, supplier#3485345, supplyingPlant#3485346, orderDateTime#3485347, itemGroups#3485348, parentItems#3485349, previousOrderProposals#3485350]
(69) Project
Output [11]: [shardId#3483106, orderProposal#3485375.orderProposalId AS _extract_orderProposalId#3486133L, orderProposal#3485375.originalReplenishmentRunId AS _extract_originalReplenishmentRunId#3486134L, orderProposal#3485375.supplierGroup AS _extract_supplierGroup#3486135, orderProposal#3485375.supplier AS _extract_supplier#3486136, orderProposal#3485375.supplyingPlant AS _extract_supplyingPlant#3486137, orderProposal#3485375.orderDateTime AS _extract_orderDateTime#3486138, orderProposal#3485375.itemGroups AS _extract_itemGroups#3486139, orderProposal#3485375.previousOrderProposals AS _extract_previousOrderProposals#3486140, orderProposal#3485375.parentItems AS _extract_parentItems#3486141, orderProposal#3485375.orderProposalId AS _extract_orderProposalId#3486142L]
Input [2]: [shardId#3483106, orderProposal#3485375]
(70) Exchange
Input [11]: [shardId#3483106, _extract_orderProposalId#3486133L, _extract_originalReplenishmentRunId#3486134L, _extract_supplierGroup#3486135, _extract_supplier#3486136, _extract_supplyingPlant#3486137, _extract_orderDateTime#3486138, _extract_itemGroups#3486139, _extract_previousOrderProposals#3486140, _extract_parentItems#3486141, _extract_orderProposalId#3486142L]
Arguments: hashpartitioning(coalesce(shardId#3483106, ), isnull(shardId#3483106), coalesce(_extract_orderProposalId#3486142L, 0), isnull(_extract_orderProposalId#3486142L), 30), ENSURE_REQUIREMENTS, [plan_id=1000788]
(71) Sort
Input [11]: [shardId#3483106, _extract_orderProposalId#3486133L, _extract_originalReplenishmentRunId#3486134L, _extract_supplierGroup#3486135, _extract_supplier#3486136, _extract_supplyingPlant#3486137, _extract_orderDateTime#3486138, _extract_itemGroups#3486139, _extract_previousOrderProposals#3486140, _extract_parentItems#3486141, _extract_orderProposalId#3486142L]
Arguments: [coalesce(shardId#3483106, ) ASC NULLS FIRST, isnull(shardId#3483106) ASC NULLS FIRST, coalesce(_extract_orderProposalId#3486142L, 0) ASC NULLS FIRST, isnull(_extract_orderProposalId#3486142L) ASC NULLS FIRST], false, 0
(72) InMemoryTableScan
Output [3]: [shardId#3485390, orderProposalId#3485391L, optimizationGroups#3485393]
Arguments: [shardId#3485390, orderProposalId#3485391L, optimizationGroups#3485393], [isnotnull(orderProposalId#3485391L)]
(73) InMemoryRelation
Arguments: [shardId#3485390, orderProposalId#3485391L, items#3485392, optimizationGroups#3485393, isOptimal#3485394, optimizationInsights#3485396], StorageLevel(disk, memory, 2 replicas)
(74) Filter [codegen id : 2]
Input [3]: [shardId#3485390, orderProposalId#3485391L, optimizationGroups#3485393]
Condition : isnotnull(orderProposalId#3485391L)
(75) Exchange
Input [3]: [shardId#3485390, orderProposalId#3485391L, optimizationGroups#3485393]
Arguments: hashpartitioning(orderProposalId#3485391L, 30), ENSURE_REQUIREMENTS, [plan_id=1000793]
(76) Sort [codegen id : 3]
Input [3]: [shardId#3485390, orderProposalId#3485391L, optimizationGroups#3485393]
Arguments: [orderProposalId#3485391L ASC NULLS FIRST], false, 0
(77) InMemoryTableScan
Output [2]: [items#3485019, shardId#3485017]
Arguments: [items#3485019, shardId#3485017], [(size(items#3485019.worklistShardItemId, true) > 0), isnotnull(items#3485019.worklistShardItemId), (shardId#3485017 = 0_5_10000000532)]
(78) InMemoryRelation
Arguments: [shardId#3485017, orderProposalId#3485018L, items#3485019, optimizationGroups#3485020, isOptimal#3485021, optimizationInsights#3485023], StorageLevel(disk, memory, 2 replicas)
(79) Filter [codegen id : 4]
Input [2]: [items#3485019, shardId#3485017]
Condition : (((size(items#3485019.worklistShardItemId, true) > 0) AND isnotnull(items#3485019.worklistShardItemId)) AND (shardId#3485017 = 0_5_10000000532))
(80) Project [codegen id : 4]
Output [1]: [items#3485019.worklistShardItemId AS _extract_worklistShardItemId#3486038]
Input [2]: [items#3485019, shardId#3485017]
(81) Generate [codegen id : 4]
Input [1]: [_extract_worklistShardItemId#3486038]
Arguments: explode(_extract_worklistShardItemId#3486038), false, [item#3485397L]
(82) Project [codegen id : 4]
Output [1]: [item#3485397L AS worklistShardItemId#3485398L]
Input [1]: [item#3485397L]
(83) BroadcastExchange
Input [1]: [worklistShardItemId#3485398L]
Arguments: HashedRelationBroadcastMode(List(input[0, bigint, true]),false), [plan_id=1000804]
(84) Scan parquet
Output [5]: [orderProposalId#3485446L, isFallbackOrderOnly#3485463, worklistShardItemId#3485469L, shardId#3485490, sequenceId#3485468]
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#3485490), isnotnull(sequenceId#3485468), (shardId#3485490 = 0_5_10000000532), (sequenceId#3485468 = 5)]
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#3485446L, isFallbackOrderOnly#3485463, worklistShardItemId#3485469L, shardId#3485490, sequenceId#3485468]
(86) Filter [codegen id : 5]
Input [5]: [orderProposalId#3485446L, isFallbackOrderOnly#3485463, worklistShardItemId#3485469L, shardId#3485490, sequenceId#3485468]
Condition : ((isnotnull(worklistShardItemId#3485469L) AND NOT (isFallbackOrderOnly#3485463 <=> true)) AND isnotnull(orderProposalId#3485446L))
(87) Project [codegen id : 5]
Output [2]: [orderProposalId#3485446L, worklistShardItemId#3485469L]
Input [5]: [orderProposalId#3485446L, isFallbackOrderOnly#3485463, worklistShardItemId#3485469L, shardId#3485490, sequenceId#3485468]
(88) Exchange
Input [2]: [orderProposalId#3485446L, worklistShardItemId#3485469L]
Arguments: hashpartitioning(worklistShardItemId#3485469L, 30), REPARTITION_BY_NUM, [plan_id=1000811]
(89) Project
Output [2]: [worklistShardItemId#3485469L, orderProposalId#3485446L]
Input [2]: [orderProposalId#3485446L, worklistShardItemId#3485469L]
(90) BroadcastHashJoin [codegen id : 6]
Left keys [1]: [worklistShardItemId#3485398L]
Right keys [1]: [worklistShardItemId#3485469L]
Join type: Inner
Join condition: None
(91) Project [codegen id : 6]
Output [1]: [orderProposalId#3485446L]
Input [3]: [worklistShardItemId#3485398L, worklistShardItemId#3485469L, orderProposalId#3485446L]
(92) HashAggregate [codegen id : 6]
Input [1]: [orderProposalId#3485446L]
Keys [1]: [orderProposalId#3485446L]
Functions: []
Aggregate Attributes: []
Results [1]: [orderProposalId#3485446L]
(93) Exchange
Input [1]: [orderProposalId#3485446L]
Arguments: hashpartitioning(orderProposalId#3485446L, 30), ENSURE_REQUIREMENTS, [plan_id=1000818]
(94) HashAggregate [codegen id : 7]
Input [1]: [orderProposalId#3485446L]
Keys [1]: [orderProposalId#3485446L]
Functions: []
Aggregate Attributes: []
Results [1]: [orderProposalId#3485446L]
(95) Sort [codegen id : 7]
Input [1]: [orderProposalId#3485446L]
Arguments: [orderProposalId#3485446L ASC NULLS FIRST], false, 0
(96) SortMergeJoin [codegen id : 8]
Left keys [1]: [orderProposalId#3485391L]
Right keys [1]: [orderProposalId#3485446L]
Join type: Inner
Join condition: None
(97) Project
Output [3]: [orderProposalId#3485391L, shardId#3485390, coalesce(transform(optimizationGroups#3485393, lambdafunction(struct(optGroupId, lambda x_11595#3485388.optGroupId, minOrderProfile, lambda x_11595#3485388.minOrderProfile, assignmentDetails, lambda x_11595#3485388.assignmentDetails, minOrdBenchmark, struct(dimensionType, lambda x_11595#3485388.minOrderGoal.dimensionType, unit, lambda x_11595#3485388.minOrderGoal.unit, unitUuid, lambda x_11595#3485388.minOrderGoal.unitUuid, goalValue, lambda x_11595#3485388.minOrderGoal.minOrderValue, calcValue, lambda x_11595#3485388.minOrderGoal.calculatedOrderValue), transportLoadProfile, null, transportLoadGoal, null), lambda x_11595#3485388, false)), []) AS optimizationGroups#3485387]
Input [4]: [shardId#3485390, orderProposalId#3485391L, optimizationGroups#3485393, orderProposalId#3485446L]
(98) Exchange
Input [3]: [orderProposalId#3485391L, shardId#3485390, optimizationGroups#3485387]
Arguments: hashpartitioning(coalesce(shardId#3485390, ), isnull(shardId#3485390), coalesce(orderProposalId#3485391L, 0), isnull(orderProposalId#3485391L), 30), ENSURE_REQUIREMENTS, [plan_id=1000827]
(99) Sort [codegen id : 9]
Input [3]: [orderProposalId#3485391L, shardId#3485390, optimizationGroups#3485387]
Arguments: [coalesce(shardId#3485390, ) ASC NULLS FIRST, isnull(shardId#3485390) ASC NULLS FIRST, coalesce(orderProposalId#3485391L, 0) ASC NULLS FIRST, isnull(orderProposalId#3485391L) ASC NULLS FIRST], false, 0
(100) SortMergeJoin
Left keys [4]: [coalesce(shardId#3483106, ), isnull(shardId#3483106), coalesce(_extract_orderProposalId#3486142L, 0), isnull(_extract_orderProposalId#3486142L)]
Right keys [4]: [coalesce(shardId#3485390, ), isnull(shardId#3485390), coalesce(orderProposalId#3485391L, 0), isnull(orderProposalId#3485391L)]
Join type: LeftOuter
Join condition: None
(101) Project
Output [2]: [shardId#3483106, named_struct(orderProposalId, _extract_orderProposalId#3486142L, originalReplenishmentRunId, _extract_originalReplenishmentRunId#3486134L, supplierGroup, _extract_supplierGroup#3486135, optimizationGroups, coalesce(optimizationGroups#3485387, []), supplier, _extract_supplier#3486136, supplyingPlant, _extract_supplyingPlant#3486137, orderDateTime, _extract_orderDateTime#3486138, itemGroups, _extract_itemGroups#3486139, previousOrderProposals, _extract_previousOrderProposals#3486140, parentItems, _extract_parentItems#3486141) AS orderProposal#3485494]
Input [14]: [shardId#3483106, _extract_orderProposalId#3486133L, _extract_originalReplenishmentRunId#3486134L, _extract_supplierGroup#3486135, _extract_supplier#3486136, _extract_supplyingPlant#3486137, _extract_orderDateTime#3486138, _extract_itemGroups#3486139, _extract_previousOrderProposals#3486140, _extract_parentItems#3486141, _extract_orderProposalId#3486142L, orderProposalId#3485391L, shardId#3485390, optimizationGroups#3485387]
(102) Project
Output [3]: [shardId#3483106, orderProposal#3485494, CASE WHEN (size(orderProposal#3485494.parentItems, true) > 2000) THEN xxhash64(orderProposal#3485494.orderProposalId, 42) ELSE xxhash64(pmod(cast(orderProposal#3485494.orderProposalId as decimal(20,0)), 60), 42) END AS resultSeparationId#3487246L]
Input [2]: [orderProposal#3485494, shardId#3483106]
(103) ObjectHashAggregate
Input [3]: [shardId#3483106, orderProposal#3485494, resultSeparationId#3487246L]
Keys [2]: [shardId#3483106, resultSeparationId#3487246L]
Functions [1]: [partial_collect_list(orderProposal#3485494, 0, 0)]
Aggregate Attributes [1]: [buf#3487285]
Results [3]: [shardId#3483106, resultSeparationId#3487246L, buf#3487286]
(104) Exchange
Input [3]: [shardId#3483106, resultSeparationId#3487246L, buf#3487286]
Arguments: hashpartitioning(shardId#3483106, resultSeparationId#3487246L, 30), ENSURE_REQUIREMENTS, [plan_id=1000983]
(105) ObjectHashAggregate
Input [3]: [shardId#3483106, resultSeparationId#3487246L, buf#3487286]
Keys [2]: [shardId#3483106, resultSeparationId#3487246L]
Functions [1]: [collect_list(orderProposal#3485494, 0, 0)]
Aggregate Attributes [1]: [collect_list(orderProposal#3485494, 0, 0)#3487254]
Results [3]: [shardId#3483106, resultSeparationId#3487246L, collect_list(orderProposal#3485494, 0, 0)#3487254 AS orderProposals#3487250]
(106) Exchange
Input [3]: [shardId#3483106, resultSeparationId#3487246L, orderProposals#3487250]
Arguments: rangepartitioning(shardId#3483106 ASC NULLS FIRST, resultSeparationId#3487246L ASC NULLS FIRST, 60), REPARTITION_BY_NUM, [plan_id=1001026]
(107) Project
Output [2]: [shardId#3483106, orderProposals#3487250]
Input [3]: [shardId#3483106, resultSeparationId#3487246L, orderProposals#3487250]
(108) CollectLimit
Input: []
Arguments: 1