== Physical Plan ==
* HashAggregate (106)
+- Exchange (105)
+- * HashAggregate (104)
+- InMemoryTableScan (1)
+- InMemoryRelation (2)
+- ObjectHashAggregate (103)
+- Exchange (102)
+- ObjectHashAggregate (101)
+- Project (100)
+- InMemoryTableScan (3)
+- InMemoryRelation (4)
+- Project (99)
+- SortMergeJoin LeftOuter (98)
:- Sort (69)
: +- Exchange (68)
: +- Project (67)
: +- Project (66)
: +- ObjectHashAggregate (65)
: +- Exchange (64)
: +- ObjectHashAggregate (63)
: +- ObjectHashAggregate (62)
: +- Exchange (61)
: +- ObjectHashAggregate (60)
: +- Project (59)
: +- Project (58)
: +- Project (57)
: +- * Project (56)
: +- * Filter (55)
: +- InMemoryTableScan (5)
: +- InMemoryRelation (6)
: +- * Project (54)
: +- * SortMergeJoin LeftOuter (53)
: :- * Project (45)
: : +- * SortMergeJoin LeftOuter (44)
: : :- * Project (36)
: : : +- * SortMergeJoin LeftOuter (35)
: : : :- * Sort (29)
: : : : +- Exchange (28)
: : : : +- * Project (27)
: : : : +- * SortMergeJoin LeftOuter (26)
: : : : :- * Sort (18)
: : : : : +- Exchange (17)
: : : : : +- * Project (16)
: : : : : +- * Generate (15)
: : : : : +- * Filter (14)
: : : : : +- InMemoryTableScan (7)
: : : : : +- InMemoryRelation (8)
: : : : : +- * Filter (13)
: : : : : +- InMemoryTableScan (9)
: : : : : +- InMemoryRelation (10)
: : : : : +- * Filter (12)
: : : : : +- * Scan ExistingRDD (11)
: : : : +- * Sort (25)
: : : : +- * Project (24)
: : : : +- Exchange (23)
: : : : +- * Project (22)
: : : : +- * Filter (21)
: : : : +- * ColumnarToRow (20)
: : : : +- Scan parquet (19)
: : : +- * Sort (34)
: : : +- Exchange (33)
: : : +- * Project (32)
: : : +- * Filter (31)
: : : +- * Scan ExistingRDD (30)
: : +- * Sort (43)
: : +- ObjectHashAggregate (42)
: : +- Exchange (41)
: : +- ObjectHashAggregate (40)
: : +- * Project (39)
: : +- * Filter (38)
: : +- * Scan ExistingRDD (37)
: +- * Sort (52)
: +- ObjectHashAggregate (51)
: +- Exchange (50)
: +- ObjectHashAggregate (49)
: +- * Project (48)
: +- * Filter (47)
: +- * Scan ExistingRDD (46)
+- * Sort (97)
+- Exchange (96)
+- Project (95)
+- * SortMergeJoin Inner (94)
:- * Sort (74)
: +- Exchange (73)
: +- * Filter (72)
: +- InMemoryTableScan (70)
: +- InMemoryRelation (71)
: +- * Filter (13)
: +- InMemoryTableScan (9)
: +- InMemoryRelation (10)
: +- * Filter (12)
: +- * Scan ExistingRDD (11)
+- * Sort (93)
+- * HashAggregate (92)
+- Exchange (91)
+- * HashAggregate (90)
+- * Project (89)
+- * BroadcastHashJoin Inner BuildLeft (88)
:- BroadcastExchange (81)
: +- * Project (80)
: +- * Generate (79)
: +- * Project (78)
: +- * Filter (77)
: +- InMemoryTableScan (75)
: +- InMemoryRelation (76)
: +- * Filter (13)
: +- InMemoryTableScan (9)
: +- InMemoryRelation (10)
: +- * Filter (12)
: +- * Scan ExistingRDD (11)
+- * Project (87)
+- Exchange (86)
+- * Project (85)
+- * Filter (84)
+- * ColumnarToRow (83)
+- Scan parquet (82)
(1) InMemoryTableScan
Output: []
(2) InMemoryRelation
Arguments: [shardId#22197470, resultSeparationId#22201403L, orderProposals#22201407], StorageLevel(disk, memory, 2 replicas)
(3) InMemoryTableScan
Output [2]: [orderProposal#22199651, shardId#22197470]
Arguments: [orderProposal#22199651, shardId#22197470]
(4) InMemoryRelation
Arguments: [shardId#22197470, orderProposal#22199651], StorageLevel(disk, memory, 2 replicas)
(5) InMemoryTableScan
Output [39]: [availabilityDateTime#22198160, channelStreamSpecificKpis#22198754, constraintLabels#22198172, constraintOperators#22198173, constraintValues#22198175, deliveryDateTime#22198159, isFallbackOrderOnly#22198162, logisticUnits#22198177, measurements#22198170, minimumOrderQuantity#22198171, netPriceAmount#22198168, netPriceCurrencyCode#22198169, netPriceQuantity#22198165, netPriceQuantityUom#22198166, netPriceQuantityUomUuid#22198167, nextAvailabilityDateTime#22198161, optimizationGroups#22198178, orderDateTime#22198158, orderProposalId#22198140L, orderProposalItemGroupId#22198142, orderProposalItemId#22198141, orderQuantityBaseUom#22198163, orderQuantityBaseUomUuid#22198164, originalReplenishmentRunId#22198143L, plant#22198154, previousOrderProposal#22198146L, prodLocSpecificKpis#22198739, product#22198153, productGroup#22198182, qty#22197984, quantityAfterProdPlantOptimization#22197983, quantityKpis#22198767, shardId#22197470, sourceOfSupplyUuid#22198149, splitIndicator#22198145L, subrange#22198152, supplier#22198151, supplierGroup#22198150, supplyingPlant#22198181]
Arguments: [availabilityDateTime#22198160, channelStreamSpecificKpis#22198754, constraintLabels#22198172, constraintOperators#22198173, constraintValues#22198175, deliveryDateTime#22198159, isFallbackOrderOnly#22198162, logisticUnits#22198177, measurements#22198170, minimumOrderQuantity#22198171, netPriceAmount#22198168, netPriceCurrencyCode#22198169, netPriceQuantity#22198165, netPriceQuantityUom#22198166, netPriceQuantityUomUuid#22198167, nextAvailabilityDateTime#22198161, optimizationGroups#22198178, orderDateTime#22198158, orderProposalId#22198140L, orderProposalItemGroupId#22198142, orderProposalItemId#22198141, orderQuantityBaseUom#22198163, orderQuantityBaseUomUuid#22198164, originalReplenishmentRunId#22198143L, plant#22198154, ... 14 more fields], [NOT (isFallbackOrderOnly#22198162 <=> true)]
(6) InMemoryRelation
Arguments: [shardId#22197470, worklistShardItemId#22197982L, quantityAfterProdPlantOptimization#22197983, qty#22197984, orderProposalId#22198140L, originalReplenishmentRunId#22198143L, supplierGroup#22198150, supplier#22198151, supplyingPlant#22198181, productGroup#22198182, product#22198153, plant#22198154, subrange#22198152, orderDateTime#22198158, deliveryDateTime#22198159, availabilityDateTime#22198160, nextAvailabilityDateTime#22198161, constraintValues#22198175, constraintOperators#22198173, constraintLabels#22198172, logisticUnits#22198177, orderQuantityBaseUom#22198163, orderQuantityBaseUomUuid#22198164, splitIndicator#22198145L, netPriceAmount#22198168, ... 17 more fields], StorageLevel(disk, memory, 2 replicas)
(7) InMemoryTableScan
Output [2]: [shardId#22197470, items#22197472]
Arguments: [shardId#22197470, items#22197472], [(size(items#22197472, true) > 0), isnotnull(items#22197472)]
(8) InMemoryRelation
Arguments: [shardId#22197470, orderProposalId#22197471L, items#22197472, optimizationGroups#22197473, isOptimal#22197474, optimizationInsights#22197476], StorageLevel(disk, memory, 2 replicas)
(9) InMemoryTableScan
Output [6]: [shardId#22197470, orderProposalId#22197471L, items#22197472, optimizationGroups#22197473, isOptimal#22197474, optimizationInsights#22197476]
Arguments: [shardId#22197470, orderProposalId#22197471L, items#22197472, optimizationGroups#22197473, isOptimal#22197474, optimizationInsights#22197476], [isnotnull(shardId#22197470), (shardId#22197470 = 0_7_10000000553)]
(10) InMemoryRelation
Arguments: [shardId#22197470, orderProposalId#22197471L, items#22197472, optimizationGroups#22197473, isOptimal#22197474, lastModified#22197475, optimizationInsights#22197476], StorageLevel(disk, memory, 2 replicas)
(11) Scan ExistingRDD [codegen id : 1]
Output [7]: [shardId#22197470, orderProposalId#22197471L, items#22197472, optimizationGroups#22197473, isOptimal#22197474, lastModified#22197475, optimizationInsights#22197476]
Arguments: [shardId#22197470, orderProposalId#22197471L, items#22197472, optimizationGroups#22197473, isOptimal#22197474, lastModified#22197475, optimizationInsights#22197476], MapPartitionsRDD[943168] at start at FileStorageAdapterImpl.java:596, ExistingRDD, UnknownPartitioning(0)
(12) Filter [codegen id : 1]
Input [7]: [shardId#22197470, orderProposalId#22197471L, items#22197472, optimizationGroups#22197473, isOptimal#22197474, lastModified#22197475, optimizationInsights#22197476]
Condition : (isnotnull(shardId#22197470) AND (shardId#22197470 = 0_7_10000000553))
(13) Filter [codegen id : 1]
Input [6]: [shardId#22197470, orderProposalId#22197471L, items#22197472, optimizationGroups#22197473, isOptimal#22197474, optimizationInsights#22197476]
Condition : (isnotnull(shardId#22197470) AND (shardId#22197470 = 0_7_10000000553))
(14) Filter [codegen id : 1]
Input [2]: [shardId#22197470, items#22197472]
Condition : ((size(items#22197472, true) > 0) AND isnotnull(items#22197472))
(15) Generate [codegen id : 1]
Input [2]: [shardId#22197470, items#22197472]
Arguments: explode(items#22197472), [shardId#22197470], false, [item#22197981]
(16) Project [codegen id : 1]
Output [4]: [shardId#22197470, item#22197981.worklistShardItemId AS worklistShardItemId#22197982L, item#22197981.quantityAfterProdPlantOptimization AS quantityAfterProdPlantOptimization#22197983, item#22197981.qty AS qty#22197984]
Input [2]: [shardId#22197470, item#22197981]
(17) Exchange
Input [4]: [shardId#22197470, worklistShardItemId#22197982L, quantityAfterProdPlantOptimization#22197983, qty#22197984]
Arguments: hashpartitioning(worklistShardItemId#22197982L, 30), ENSURE_REQUIREMENTS, [plan_id=6645201]
(18) Sort [codegen id : 2]
Input [4]: [shardId#22197470, worklistShardItemId#22197982L, quantityAfterProdPlantOptimization#22197983, qty#22197984]
Arguments: [worklistShardItemId#22197982L ASC NULLS FIRST], false, 0
(19) Scan parquet
Output [38]: [orderProposalId#22198183L, orderProposalItemId#22198184, supplierGroup#22198185, supplier#22198186, plant#22198187, deliveryDateTime#22198188, subrange#22198189, supplyingPlant#22198190, productGroup#22198191, product#22198192, orderDateTime#22198193, availabilityDateTime#22198194, nextAvailabilityDateTime#22198195, sourceOfSupplyUuid#22198197, isFallbackOrderOnly#22198200, splitIndicator#22198202L, previousOrderProposal#22198203L, worklistShardItemId#22198206L, orderProposalItemGroupId#22198207, externalProductId#22198208, externalPlantId#22198209, logisticUnits#22198210, orderQuantityBaseUom#22198211, orderQuantityBaseUomUuid#22198212, minimumOrderQuantity#22198213, constraintLabels#22198214, constraintOperators#22198215, constraintValues#22198216, netPriceAmount#22198219, netPriceCurrencyCode#22198220, netPriceQuantity#22198221, netPriceQuantityUom#22198222, netPriceQuantityUomUuid#22198223, measurements#22198224, originalReplenishmentRunId#22198225L, optimizationGroups#22198226, shardId#22198227, sequenceId#22198205]
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/10000000553]
PartitionFilters: [isnotnull(shardId#22198227), isnotnull(sequenceId#22198205), (shardId#22198227 = 0_7_10000000553), (sequenceId#22198205 = 4)]
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>>
(20) ColumnarToRow [codegen id : 3]
Input [38]: [orderProposalId#22198183L, orderProposalItemId#22198184, supplierGroup#22198185, supplier#22198186, plant#22198187, deliveryDateTime#22198188, subrange#22198189, supplyingPlant#22198190, productGroup#22198191, product#22198192, orderDateTime#22198193, availabilityDateTime#22198194, nextAvailabilityDateTime#22198195, sourceOfSupplyUuid#22198197, isFallbackOrderOnly#22198200, splitIndicator#22198202L, previousOrderProposal#22198203L, worklistShardItemId#22198206L, orderProposalItemGroupId#22198207, externalProductId#22198208, externalPlantId#22198209, logisticUnits#22198210, orderQuantityBaseUom#22198211, orderQuantityBaseUomUuid#22198212, minimumOrderQuantity#22198213, constraintLabels#22198214, constraintOperators#22198215, constraintValues#22198216, netPriceAmount#22198219, netPriceCurrencyCode#22198220, netPriceQuantity#22198221, netPriceQuantityUom#22198222, netPriceQuantityUomUuid#22198223, measurements#22198224, originalReplenishmentRunId#22198225L, optimizationGroups#22198226, shardId#22198227, sequenceId#22198205]
(21) Filter [codegen id : 3]
Input [38]: [orderProposalId#22198183L, orderProposalItemId#22198184, supplierGroup#22198185, supplier#22198186, plant#22198187, deliveryDateTime#22198188, subrange#22198189, supplyingPlant#22198190, productGroup#22198191, product#22198192, orderDateTime#22198193, availabilityDateTime#22198194, nextAvailabilityDateTime#22198195, sourceOfSupplyUuid#22198197, isFallbackOrderOnly#22198200, splitIndicator#22198202L, previousOrderProposal#22198203L, worklistShardItemId#22198206L, orderProposalItemGroupId#22198207, externalProductId#22198208, externalPlantId#22198209, logisticUnits#22198210, orderQuantityBaseUom#22198211, orderQuantityBaseUomUuid#22198212, minimumOrderQuantity#22198213, constraintLabels#22198214, constraintOperators#22198215, constraintValues#22198216, netPriceAmount#22198219, netPriceCurrencyCode#22198220, netPriceQuantity#22198221, netPriceQuantityUom#22198222, netPriceQuantityUomUuid#22198223, measurements#22198224, originalReplenishmentRunId#22198225L, optimizationGroups#22198226, shardId#22198227, sequenceId#22198205]
Condition : isnotnull(worklistShardItemId#22198206L)
(22) Project [codegen id : 3]
Output [36]: [orderProposalId#22198183L, orderProposalItemId#22198184, supplierGroup#22198185, supplier#22198186, plant#22198187, deliveryDateTime#22198188, subrange#22198189, supplyingPlant#22198190, productGroup#22198191, product#22198192, orderDateTime#22198193, availabilityDateTime#22198194, nextAvailabilityDateTime#22198195, sourceOfSupplyUuid#22198197, isFallbackOrderOnly#22198200, splitIndicator#22198202L, previousOrderProposal#22198203L, worklistShardItemId#22198206L, orderProposalItemGroupId#22198207, externalProductId#22198208, externalPlantId#22198209, logisticUnits#22198210, orderQuantityBaseUom#22198211, orderQuantityBaseUomUuid#22198212, minimumOrderQuantity#22198213, constraintLabels#22198214, constraintOperators#22198215, constraintValues#22198216, netPriceAmount#22198219, netPriceCurrencyCode#22198220, netPriceQuantity#22198221, netPriceQuantityUom#22198222, netPriceQuantityUomUuid#22198223, measurements#22198224, originalReplenishmentRunId#22198225L, optimizationGroups#22198226]
Input [38]: [orderProposalId#22198183L, orderProposalItemId#22198184, supplierGroup#22198185, supplier#22198186, plant#22198187, deliveryDateTime#22198188, subrange#22198189, supplyingPlant#22198190, productGroup#22198191, product#22198192, orderDateTime#22198193, availabilityDateTime#22198194, nextAvailabilityDateTime#22198195, sourceOfSupplyUuid#22198197, isFallbackOrderOnly#22198200, splitIndicator#22198202L, previousOrderProposal#22198203L, worklistShardItemId#22198206L, orderProposalItemGroupId#22198207, externalProductId#22198208, externalPlantId#22198209, logisticUnits#22198210, orderQuantityBaseUom#22198211, orderQuantityBaseUomUuid#22198212, minimumOrderQuantity#22198213, constraintLabels#22198214, constraintOperators#22198215, constraintValues#22198216, netPriceAmount#22198219, netPriceCurrencyCode#22198220, netPriceQuantity#22198221, netPriceQuantityUom#22198222, netPriceQuantityUomUuid#22198223, measurements#22198224, originalReplenishmentRunId#22198225L, optimizationGroups#22198226, shardId#22198227, sequenceId#22198205]
(23) Exchange
Input [36]: [orderProposalId#22198183L, orderProposalItemId#22198184, supplierGroup#22198185, supplier#22198186, plant#22198187, deliveryDateTime#22198188, subrange#22198189, supplyingPlant#22198190, productGroup#22198191, product#22198192, orderDateTime#22198193, availabilityDateTime#22198194, nextAvailabilityDateTime#22198195, sourceOfSupplyUuid#22198197, isFallbackOrderOnly#22198200, splitIndicator#22198202L, previousOrderProposal#22198203L, worklistShardItemId#22198206L, orderProposalItemGroupId#22198207, externalProductId#22198208, externalPlantId#22198209, logisticUnits#22198210, orderQuantityBaseUom#22198211, orderQuantityBaseUomUuid#22198212, minimumOrderQuantity#22198213, constraintLabels#22198214, constraintOperators#22198215, constraintValues#22198216, netPriceAmount#22198219, netPriceCurrencyCode#22198220, netPriceQuantity#22198221, netPriceQuantityUom#22198222, netPriceQuantityUomUuid#22198223, measurements#22198224, originalReplenishmentRunId#22198225L, optimizationGroups#22198226]
Arguments: hashpartitioning(worklistShardItemId#22198206L, 30), REPARTITION_BY_NUM, [plan_id=6645211]
(24) Project [codegen id : 4]
Output [36]: [worklistShardItemId#22198206L, orderProposalId#22198183L, orderProposalItemId#22198184, orderProposalItemGroupId#22198207, originalReplenishmentRunId#22198225L, splitIndicator#22198202L, previousOrderProposal#22198203L, sourceOfSupplyUuid#22198197, supplierGroup#22198185, supplier#22198186, subrange#22198189, product#22198192, plant#22198187, orderDateTime#22198193, deliveryDateTime#22198188, availabilityDateTime#22198194, nextAvailabilityDateTime#22198195, isFallbackOrderOnly#22198200, orderQuantityBaseUom#22198211, orderQuantityBaseUomUuid#22198212, netPriceQuantity#22198221, netPriceQuantityUom#22198222, netPriceQuantityUomUuid#22198223, netPriceAmount#22198219, netPriceCurrencyCode#22198220, measurements#22198224, minimumOrderQuantity#22198213, constraintLabels#22198214, constraintOperators#22198215, constraintValues#22198216, logisticUnits#22198210, optimizationGroups#22198226, externalProductId#22198208, externalPlantId#22198209, supplyingPlant#22198190, productGroup#22198191]
Input [36]: [orderProposalId#22198183L, orderProposalItemId#22198184, supplierGroup#22198185, supplier#22198186, plant#22198187, deliveryDateTime#22198188, subrange#22198189, supplyingPlant#22198190, productGroup#22198191, product#22198192, orderDateTime#22198193, availabilityDateTime#22198194, nextAvailabilityDateTime#22198195, sourceOfSupplyUuid#22198197, isFallbackOrderOnly#22198200, splitIndicator#22198202L, previousOrderProposal#22198203L, worklistShardItemId#22198206L, orderProposalItemGroupId#22198207, externalProductId#22198208, externalPlantId#22198209, logisticUnits#22198210, orderQuantityBaseUom#22198211, orderQuantityBaseUomUuid#22198212, minimumOrderQuantity#22198213, constraintLabels#22198214, constraintOperators#22198215, constraintValues#22198216, netPriceAmount#22198219, netPriceCurrencyCode#22198220, netPriceQuantity#22198221, netPriceQuantityUom#22198222, netPriceQuantityUomUuid#22198223, measurements#22198224, originalReplenishmentRunId#22198225L, optimizationGroups#22198226]
(25) Sort [codegen id : 4]
Input [36]: [worklistShardItemId#22198206L, orderProposalId#22198183L, orderProposalItemId#22198184, orderProposalItemGroupId#22198207, originalReplenishmentRunId#22198225L, splitIndicator#22198202L, previousOrderProposal#22198203L, sourceOfSupplyUuid#22198197, supplierGroup#22198185, supplier#22198186, subrange#22198189, product#22198192, plant#22198187, orderDateTime#22198193, deliveryDateTime#22198188, availabilityDateTime#22198194, nextAvailabilityDateTime#22198195, isFallbackOrderOnly#22198200, orderQuantityBaseUom#22198211, orderQuantityBaseUomUuid#22198212, netPriceQuantity#22198221, netPriceQuantityUom#22198222, netPriceQuantityUomUuid#22198223, netPriceAmount#22198219, netPriceCurrencyCode#22198220, measurements#22198224, minimumOrderQuantity#22198213, constraintLabels#22198214, constraintOperators#22198215, constraintValues#22198216, logisticUnits#22198210, optimizationGroups#22198226, externalProductId#22198208, externalPlantId#22198209, supplyingPlant#22198190, productGroup#22198191]
Arguments: [worklistShardItemId#22198206L ASC NULLS FIRST], false, 0
(26) SortMergeJoin [codegen id : 5]
Left keys [1]: [worklistShardItemId#22197982L]
Right keys [1]: [worklistShardItemId#22198206L]
Join type: LeftOuter
Join condition: (shardId#22197470 = 0_7_10000000553)
(27) Project [codegen id : 5]
Output [39]: [shardId#22197470, worklistShardItemId#22197982L, quantityAfterProdPlantOptimization#22197983, qty#22197984, orderProposalId#22198183L, originalReplenishmentRunId#22198225L, supplierGroup#22198185, supplier#22198186, supplyingPlant#22198190, productGroup#22198191, product#22198192, plant#22198187, subrange#22198189, orderDateTime#22198193, deliveryDateTime#22198188, availabilityDateTime#22198194, nextAvailabilityDateTime#22198195, constraintValues#22198216, constraintOperators#22198215, constraintLabels#22198214, logisticUnits#22198210, orderQuantityBaseUom#22198211, orderQuantityBaseUomUuid#22198212, splitIndicator#22198202L, netPriceAmount#22198219, netPriceCurrencyCode#22198220, netPriceQuantity#22198221, netPriceQuantityUom#22198222, netPriceQuantityUomUuid#22198223, sourceOfSupplyUuid#22198197, minimumOrderQuantity#22198213, orderProposalItemId#22198184, orderProposalItemGroupId#22198207, optimizationGroups#22198226, measurements#22198224, externalProductId#22198208, externalPlantId#22198209, previousOrderProposal#22198203L, isFallbackOrderOnly#22198200]
Input [40]: [shardId#22197470, worklistShardItemId#22197982L, quantityAfterProdPlantOptimization#22197983, qty#22197984, worklistShardItemId#22198206L, orderProposalId#22198183L, orderProposalItemId#22198184, orderProposalItemGroupId#22198207, originalReplenishmentRunId#22198225L, splitIndicator#22198202L, previousOrderProposal#22198203L, sourceOfSupplyUuid#22198197, supplierGroup#22198185, supplier#22198186, subrange#22198189, product#22198192, plant#22198187, orderDateTime#22198193, deliveryDateTime#22198188, availabilityDateTime#22198194, nextAvailabilityDateTime#22198195, isFallbackOrderOnly#22198200, orderQuantityBaseUom#22198211, orderQuantityBaseUomUuid#22198212, netPriceQuantity#22198221, netPriceQuantityUom#22198222, netPriceQuantityUomUuid#22198223, netPriceAmount#22198219, netPriceCurrencyCode#22198220, measurements#22198224, minimumOrderQuantity#22198213, constraintLabels#22198214, constraintOperators#22198215, constraintValues#22198216, logisticUnits#22198210, optimizationGroups#22198226, externalProductId#22198208, externalPlantId#22198209, supplyingPlant#22198190, productGroup#22198191]
(28) Exchange
Input [39]: [shardId#22197470, worklistShardItemId#22197982L, quantityAfterProdPlantOptimization#22197983, qty#22197984, orderProposalId#22198183L, originalReplenishmentRunId#22198225L, supplierGroup#22198185, supplier#22198186, supplyingPlant#22198190, productGroup#22198191, product#22198192, plant#22198187, subrange#22198189, orderDateTime#22198193, deliveryDateTime#22198188, availabilityDateTime#22198194, nextAvailabilityDateTime#22198195, constraintValues#22198216, constraintOperators#22198215, constraintLabels#22198214, logisticUnits#22198210, orderQuantityBaseUom#22198211, orderQuantityBaseUomUuid#22198212, splitIndicator#22198202L, netPriceAmount#22198219, netPriceCurrencyCode#22198220, netPriceQuantity#22198221, netPriceQuantityUom#22198222, netPriceQuantityUomUuid#22198223, sourceOfSupplyUuid#22198197, minimumOrderQuantity#22198213, orderProposalItemId#22198184, orderProposalItemGroupId#22198207, optimizationGroups#22198226, measurements#22198224, externalProductId#22198208, externalPlantId#22198209, previousOrderProposal#22198203L, isFallbackOrderOnly#22198200]
Arguments: hashpartitioning(shardId#22197470, worklistShardItemId#22197982L, 30), ENSURE_REQUIREMENTS, [plan_id=6645220]
(29) Sort [codegen id : 6]
Input [39]: [shardId#22197470, worklistShardItemId#22197982L, quantityAfterProdPlantOptimization#22197983, qty#22197984, orderProposalId#22198183L, originalReplenishmentRunId#22198225L, supplierGroup#22198185, supplier#22198186, supplyingPlant#22198190, productGroup#22198191, product#22198192, plant#22198187, subrange#22198189, orderDateTime#22198193, deliveryDateTime#22198188, availabilityDateTime#22198194, nextAvailabilityDateTime#22198195, constraintValues#22198216, constraintOperators#22198215, constraintLabels#22198214, logisticUnits#22198210, orderQuantityBaseUom#22198211, orderQuantityBaseUomUuid#22198212, splitIndicator#22198202L, netPriceAmount#22198219, netPriceCurrencyCode#22198220, netPriceQuantity#22198221, netPriceQuantityUom#22198222, netPriceQuantityUomUuid#22198223, sourceOfSupplyUuid#22198197, minimumOrderQuantity#22198213, orderProposalItemId#22198184, orderProposalItemGroupId#22198207, optimizationGroups#22198226, measurements#22198224, externalProductId#22198208, externalPlantId#22198209, previousOrderProposal#22198203L, isFallbackOrderOnly#22198200]
Arguments: [shardId#22197470 ASC NULLS FIRST, worklistShardItemId#22197982L ASC NULLS FIRST], false, 0
(30) Scan ExistingRDD [codegen id : 7]
Output [6]: [shardId#22198732, worklistShardItemId#22198733L, qty#22198734, demandChannel#22198735, demandStream#22198736, kpis#22198737]
Arguments: [shardId#22198732, worklistShardItemId#22198733L, qty#22198734, demandChannel#22198735, demandStream#22198736, kpis#22198737], MapPartitionsRDD[943232] at start at FileStorageAdapterImpl.java:596, ExistingRDD, UnknownPartitioning(0)
(31) Filter [codegen id : 7]
Input [6]: [shardId#22198732, worklistShardItemId#22198733L, qty#22198734, demandChannel#22198735, demandStream#22198736, kpis#22198737]
Condition : (((isnull(qty#22198734) AND isnull(demandChannel#22198735)) AND isnull(demandStream#22198736)) AND (isnotnull(shardId#22198732) AND isnotnull(worklistShardItemId#22198733L)))
(32) Project [codegen id : 7]
Output [3]: [shardId#22198732, worklistShardItemId#22198733L, coalesce(kpis#22198737, []) AS prodLocSpecificKpis#22198738]
Input [6]: [shardId#22198732, worklistShardItemId#22198733L, qty#22198734, demandChannel#22198735, demandStream#22198736, kpis#22198737]
(33) Exchange
Input [3]: [shardId#22198732, worklistShardItemId#22198733L, prodLocSpecificKpis#22198738]
Arguments: hashpartitioning(shardId#22198732, worklistShardItemId#22198733L, 30), ENSURE_REQUIREMENTS, [plan_id=6645226]
(34) Sort [codegen id : 8]
Input [3]: [shardId#22198732, worklistShardItemId#22198733L, prodLocSpecificKpis#22198738]
Arguments: [shardId#22198732 ASC NULLS FIRST, worklistShardItemId#22198733L ASC NULLS FIRST], false, 0
(35) SortMergeJoin [codegen id : 9]
Left keys [2]: [shardId#22197470, worklistShardItemId#22197982L]
Right keys [2]: [shardId#22198732, worklistShardItemId#22198733L]
Join type: LeftOuter
Join condition: None
(36) Project [codegen id : 9]
Output [40]: [shardId#22197470, worklistShardItemId#22197982L, quantityAfterProdPlantOptimization#22197983, qty#22197984, orderProposalId#22198183L, originalReplenishmentRunId#22198225L, supplierGroup#22198185, supplier#22198186, supplyingPlant#22198190, productGroup#22198191, product#22198192, plant#22198187, subrange#22198189, orderDateTime#22198193, deliveryDateTime#22198188, availabilityDateTime#22198194, nextAvailabilityDateTime#22198195, constraintValues#22198216, constraintOperators#22198215, constraintLabels#22198214, logisticUnits#22198210, orderQuantityBaseUom#22198211, orderQuantityBaseUomUuid#22198212, splitIndicator#22198202L, netPriceAmount#22198219, netPriceCurrencyCode#22198220, netPriceQuantity#22198221, netPriceQuantityUom#22198222, netPriceQuantityUomUuid#22198223, sourceOfSupplyUuid#22198197, minimumOrderQuantity#22198213, orderProposalItemId#22198184, orderProposalItemGroupId#22198207, optimizationGroups#22198226, measurements#22198224, externalProductId#22198208, externalPlantId#22198209, previousOrderProposal#22198203L, isFallbackOrderOnly#22198200, coalesce(prodLocSpecificKpis#22198738, []) AS prodLocSpecificKpis#22198739]
Input [42]: [shardId#22197470, worklistShardItemId#22197982L, quantityAfterProdPlantOptimization#22197983, qty#22197984, orderProposalId#22198183L, originalReplenishmentRunId#22198225L, supplierGroup#22198185, supplier#22198186, supplyingPlant#22198190, productGroup#22198191, product#22198192, plant#22198187, subrange#22198189, orderDateTime#22198193, deliveryDateTime#22198188, availabilityDateTime#22198194, nextAvailabilityDateTime#22198195, constraintValues#22198216, constraintOperators#22198215, constraintLabels#22198214, logisticUnits#22198210, orderQuantityBaseUom#22198211, orderQuantityBaseUomUuid#22198212, splitIndicator#22198202L, netPriceAmount#22198219, netPriceCurrencyCode#22198220, netPriceQuantity#22198221, netPriceQuantityUom#22198222, netPriceQuantityUomUuid#22198223, sourceOfSupplyUuid#22198197, minimumOrderQuantity#22198213, orderProposalItemId#22198184, orderProposalItemGroupId#22198207, optimizationGroups#22198226, measurements#22198224, externalProductId#22198208, externalPlantId#22198209, previousOrderProposal#22198203L, isFallbackOrderOnly#22198200, shardId#22198732, worklistShardItemId#22198733L, prodLocSpecificKpis#22198738]
(37) Scan ExistingRDD [codegen id : 10]
Output [6]: [shardId#22198748, worklistShardItemId#22198749L, qty#22198750, demandChannel#22198751, demandStream#22198752, kpis#22198753]
Arguments: [shardId#22198748, worklistShardItemId#22198749L, qty#22198750, demandChannel#22198751, demandStream#22198752, kpis#22198753], MapPartitionsRDD[943232] at start at FileStorageAdapterImpl.java:596, ExistingRDD, UnknownPartitioning(0)
(38) Filter [codegen id : 10]
Input [6]: [shardId#22198748, worklistShardItemId#22198749L, qty#22198750, demandChannel#22198751, demandStream#22198752, kpis#22198753]
Condition : ((((isnull(qty#22198750) AND isnotnull(demandChannel#22198751)) AND isnotnull(demandStream#22198752)) AND (size(kpis#22198753, true) > 0)) AND (isnotnull(shardId#22198748) AND isnotnull(worklistShardItemId#22198749L)))
(39) Project [codegen id : 10]
Output [5]: [shardId#22198748, worklistShardItemId#22198749L, demandChannel#22198751, demandStream#22198752, kpis#22198753]
Input [6]: [shardId#22198748, worklistShardItemId#22198749L, qty#22198750, demandChannel#22198751, demandStream#22198752, kpis#22198753]
(40) ObjectHashAggregate
Input [5]: [shardId#22198748, worklistShardItemId#22198749L, demandChannel#22198751, demandStream#22198752, kpis#22198753]
Keys [2]: [shardId#22198748, worklistShardItemId#22198749L]
Functions [1]: [partial_collect_list(struct(demandChannel, demandChannel#22198751, demandStream, demandStream#22198752, kpis, kpis#22198753), 0, 0)]
Aggregate Attributes [1]: [buf#22198928]
Results [3]: [shardId#22198748, worklistShardItemId#22198749L, buf#22198929]
(41) Exchange
Input [3]: [shardId#22198748, worklistShardItemId#22198749L, buf#22198929]
Arguments: hashpartitioning(shardId#22198748, worklistShardItemId#22198749L, 30), ENSURE_REQUIREMENTS, [plan_id=6645237]
(42) ObjectHashAggregate
Input [3]: [shardId#22198748, worklistShardItemId#22198749L, buf#22198929]
Keys [2]: [shardId#22198748, worklistShardItemId#22198749L]
Functions [1]: [collect_list(struct(demandChannel, demandChannel#22198751, demandStream, demandStream#22198752, kpis, kpis#22198753), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(demandChannel, demandChannel#22198751, demandStream, demandStream#22198752, kpis, kpis#22198753), 0, 0)#22198747]
Results [3]: [shardId#22198748, worklistShardItemId#22198749L, collect_list(struct(demandChannel, demandChannel#22198751, demandStream, demandStream#22198752, kpis, kpis#22198753), 0, 0)#22198747 AS channelStreamSpecificKpis#22198740]
(43) Sort [codegen id : 11]
Input [3]: [shardId#22198748, worklistShardItemId#22198749L, channelStreamSpecificKpis#22198740]
Arguments: [shardId#22198748 ASC NULLS FIRST, worklistShardItemId#22198749L ASC NULLS FIRST], false, 0
(44) SortMergeJoin [codegen id : 12]
Left keys [2]: [shardId#22197470, worklistShardItemId#22197982L]
Right keys [2]: [shardId#22198748, worklistShardItemId#22198749L]
Join type: LeftOuter
Join condition: None
(45) Project [codegen id : 12]
Output [41]: [shardId#22197470, worklistShardItemId#22197982L, quantityAfterProdPlantOptimization#22197983, qty#22197984, orderProposalId#22198183L, originalReplenishmentRunId#22198225L, supplierGroup#22198185, supplier#22198186, supplyingPlant#22198190, productGroup#22198191, product#22198192, plant#22198187, subrange#22198189, orderDateTime#22198193, deliveryDateTime#22198188, availabilityDateTime#22198194, nextAvailabilityDateTime#22198195, constraintValues#22198216, constraintOperators#22198215, constraintLabels#22198214, logisticUnits#22198210, orderQuantityBaseUom#22198211, orderQuantityBaseUomUuid#22198212, splitIndicator#22198202L, netPriceAmount#22198219, netPriceCurrencyCode#22198220, netPriceQuantity#22198221, netPriceQuantityUom#22198222, netPriceQuantityUomUuid#22198223, sourceOfSupplyUuid#22198197, minimumOrderQuantity#22198213, orderProposalItemId#22198184, orderProposalItemGroupId#22198207, optimizationGroups#22198226, measurements#22198224, externalProductId#22198208, externalPlantId#22198209, previousOrderProposal#22198203L, isFallbackOrderOnly#22198200, prodLocSpecificKpis#22198739, coalesce(channelStreamSpecificKpis#22198740, []) AS channelStreamSpecificKpis#22198754]
Input [43]: [shardId#22197470, worklistShardItemId#22197982L, quantityAfterProdPlantOptimization#22197983, qty#22197984, orderProposalId#22198183L, originalReplenishmentRunId#22198225L, supplierGroup#22198185, supplier#22198186, supplyingPlant#22198190, productGroup#22198191, product#22198192, plant#22198187, subrange#22198189, orderDateTime#22198193, deliveryDateTime#22198188, availabilityDateTime#22198194, nextAvailabilityDateTime#22198195, constraintValues#22198216, constraintOperators#22198215, constraintLabels#22198214, logisticUnits#22198210, orderQuantityBaseUom#22198211, orderQuantityBaseUomUuid#22198212, splitIndicator#22198202L, netPriceAmount#22198219, netPriceCurrencyCode#22198220, netPriceQuantity#22198221, netPriceQuantityUom#22198222, netPriceQuantityUomUuid#22198223, sourceOfSupplyUuid#22198197, minimumOrderQuantity#22198213, orderProposalItemId#22198184, orderProposalItemGroupId#22198207, optimizationGroups#22198226, measurements#22198224, externalProductId#22198208, externalPlantId#22198209, previousOrderProposal#22198203L, isFallbackOrderOnly#22198200, prodLocSpecificKpis#22198739, shardId#22198748, worklistShardItemId#22198749L, channelStreamSpecificKpis#22198740]
(46) Scan ExistingRDD [codegen id : 13]
Output [6]: [shardId#22198761, worklistShardItemId#22198762L, qty#22198763, demandChannel#22198764, demandStream#22198765, kpis#22198766]
Arguments: [shardId#22198761, worklistShardItemId#22198762L, qty#22198763, demandChannel#22198764, demandStream#22198765, kpis#22198766], MapPartitionsRDD[943232] at start at FileStorageAdapterImpl.java:596, ExistingRDD, UnknownPartitioning(0)
(47) Filter [codegen id : 13]
Input [6]: [shardId#22198761, worklistShardItemId#22198762L, qty#22198763, demandChannel#22198764, demandStream#22198765, kpis#22198766]
Condition : ((isnotnull(qty#22198763) AND isnotnull(kpis#22198766)) AND (isnotnull(shardId#22198761) AND isnotnull(worklistShardItemId#22198762L)))
(48) Project [codegen id : 13]
Output [4]: [shardId#22198761, worklistShardItemId#22198762L, qty#22198763, kpis#22198766]
Input [6]: [shardId#22198761, worklistShardItemId#22198762L, qty#22198763, demandChannel#22198764, demandStream#22198765, kpis#22198766]
(49) ObjectHashAggregate
Input [4]: [shardId#22198761, worklistShardItemId#22198762L, qty#22198763, kpis#22198766]
Keys [2]: [shardId#22198761, worklistShardItemId#22198762L]
Functions [1]: [partial_collect_list(struct(qty, qty#22198763, kpis, kpis#22198766), 0, 0)]
Aggregate Attributes [1]: [buf#22198930]
Results [3]: [shardId#22198761, worklistShardItemId#22198762L, buf#22198931]
(50) Exchange
Input [3]: [shardId#22198761, worklistShardItemId#22198762L, buf#22198931]
Arguments: hashpartitioning(shardId#22198761, worklistShardItemId#22198762L, 30), ENSURE_REQUIREMENTS, [plan_id=6645249]
(51) ObjectHashAggregate
Input [3]: [shardId#22198761, worklistShardItemId#22198762L, buf#22198931]
Keys [2]: [shardId#22198761, worklistShardItemId#22198762L]
Functions [1]: [collect_list(struct(qty, qty#22198763, kpis, kpis#22198766), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(qty, qty#22198763, kpis, kpis#22198766), 0, 0)#22198760]
Results [3]: [shardId#22198761, worklistShardItemId#22198762L, map_from_entries(collect_list(struct(qty, qty#22198763, kpis, kpis#22198766), 0, 0)#22198760) AS quantityKpis#22198755]
(52) Sort [codegen id : 14]
Input [3]: [shardId#22198761, worklistShardItemId#22198762L, quantityKpis#22198755]
Arguments: [shardId#22198761 ASC NULLS FIRST, worklistShardItemId#22198762L ASC NULLS FIRST], false, 0
(53) SortMergeJoin [codegen id : 15]
Left keys [2]: [shardId#22197470, worklistShardItemId#22197982L]
Right keys [2]: [shardId#22198761, worklistShardItemId#22198762L]
Join type: LeftOuter
Join condition: None
(54) Project [codegen id : 15]
Output [42]: [shardId#22197470, worklistShardItemId#22197982L, quantityAfterProdPlantOptimization#22197983, qty#22197984, orderProposalId#22198183L, originalReplenishmentRunId#22198225L, supplierGroup#22198185, supplier#22198186, supplyingPlant#22198190, productGroup#22198191, product#22198192, plant#22198187, subrange#22198189, orderDateTime#22198193, deliveryDateTime#22198188, availabilityDateTime#22198194, nextAvailabilityDateTime#22198195, constraintValues#22198216, constraintOperators#22198215, constraintLabels#22198214, logisticUnits#22198210, orderQuantityBaseUom#22198211, orderQuantityBaseUomUuid#22198212, splitIndicator#22198202L, netPriceAmount#22198219, netPriceCurrencyCode#22198220, netPriceQuantity#22198221, netPriceQuantityUom#22198222, netPriceQuantityUomUuid#22198223, sourceOfSupplyUuid#22198197, minimumOrderQuantity#22198213, orderProposalItemId#22198184, orderProposalItemGroupId#22198207, optimizationGroups#22198226, measurements#22198224, externalProductId#22198208, externalPlantId#22198209, previousOrderProposal#22198203L, isFallbackOrderOnly#22198200, prodLocSpecificKpis#22198739, channelStreamSpecificKpis#22198754, coalesce(quantityKpis#22198755, map(keys: [], values: [])) AS quantityKpis#22198767]
Input [44]: [shardId#22197470, worklistShardItemId#22197982L, quantityAfterProdPlantOptimization#22197983, qty#22197984, orderProposalId#22198183L, originalReplenishmentRunId#22198225L, supplierGroup#22198185, supplier#22198186, supplyingPlant#22198190, productGroup#22198191, product#22198192, plant#22198187, subrange#22198189, orderDateTime#22198193, deliveryDateTime#22198188, availabilityDateTime#22198194, nextAvailabilityDateTime#22198195, constraintValues#22198216, constraintOperators#22198215, constraintLabels#22198214, logisticUnits#22198210, orderQuantityBaseUom#22198211, orderQuantityBaseUomUuid#22198212, splitIndicator#22198202L, netPriceAmount#22198219, netPriceCurrencyCode#22198220, netPriceQuantity#22198221, netPriceQuantityUom#22198222, netPriceQuantityUomUuid#22198223, sourceOfSupplyUuid#22198197, minimumOrderQuantity#22198213, orderProposalItemId#22198184, orderProposalItemGroupId#22198207, optimizationGroups#22198226, measurements#22198224, externalProductId#22198208, externalPlantId#22198209, previousOrderProposal#22198203L, isFallbackOrderOnly#22198200, prodLocSpecificKpis#22198739, channelStreamSpecificKpis#22198754, shardId#22198761, worklistShardItemId#22198762L, quantityKpis#22198755]
(55) Filter [codegen id : 1]
Input [39]: [availabilityDateTime#22198160, channelStreamSpecificKpis#22198754, constraintLabels#22198172, constraintOperators#22198173, constraintValues#22198175, deliveryDateTime#22198159, isFallbackOrderOnly#22198162, logisticUnits#22198177, measurements#22198170, minimumOrderQuantity#22198171, netPriceAmount#22198168, netPriceCurrencyCode#22198169, netPriceQuantity#22198165, netPriceQuantityUom#22198166, netPriceQuantityUomUuid#22198167, nextAvailabilityDateTime#22198161, optimizationGroups#22198178, orderDateTime#22198158, orderProposalId#22198140L, orderProposalItemGroupId#22198142, orderProposalItemId#22198141, orderQuantityBaseUom#22198163, orderQuantityBaseUomUuid#22198164, originalReplenishmentRunId#22198143L, plant#22198154, previousOrderProposal#22198146L, prodLocSpecificKpis#22198739, product#22198153, productGroup#22198182, qty#22197984, quantityAfterProdPlantOptimization#22197983, quantityKpis#22198767, shardId#22197470, sourceOfSupplyUuid#22198149, splitIndicator#22198145L, subrange#22198152, supplier#22198151, supplierGroup#22198150, supplyingPlant#22198181]
Condition : NOT (isFallbackOrderOnly#22198162 <=> true)
(56) Project [codegen id : 1]
Output [36]: [shardId#22197470, quantityAfterProdPlantOptimization#22197983, qty#22197984, orderProposalId#22198140L, originalReplenishmentRunId#22198143L, supplierGroup#22198150, supplier#22198151, supplyingPlant#22198181, productGroup#22198182, product#22198153, plant#22198154, subrange#22198152, orderDateTime#22198158, deliveryDateTime#22198159, availabilityDateTime#22198160, nextAvailabilityDateTime#22198161, logisticUnits#22198177, orderQuantityBaseUom#22198163, orderQuantityBaseUomUuid#22198164, splitIndicator#22198145L, netPriceAmount#22198168, netPriceCurrencyCode#22198169, netPriceQuantity#22198165, netPriceQuantityUom#22198166, netPriceQuantityUomUuid#22198167, sourceOfSupplyUuid#22198149, minimumOrderQuantity#22198171, orderProposalItemId#22198141, orderProposalItemGroupId#22198142, optimizationGroups#22198178, measurements#22198170, previousOrderProposal#22198146L, prodLocSpecificKpis#22198739, channelStreamSpecificKpis#22198754, quantityKpis#22198767, arrays_zip(constraintLabels#22198172, constraintOperators#22198173, constraintValues#22198175, constraintLabels, constraintOperators, constraintValues) AS constraintStructArray#22199181]
Input [39]: [availabilityDateTime#22198160, channelStreamSpecificKpis#22198754, constraintLabels#22198172, constraintOperators#22198173, constraintValues#22198175, deliveryDateTime#22198159, isFallbackOrderOnly#22198162, logisticUnits#22198177, measurements#22198170, minimumOrderQuantity#22198171, netPriceAmount#22198168, netPriceCurrencyCode#22198169, netPriceQuantity#22198165, netPriceQuantityUom#22198166, netPriceQuantityUomUuid#22198167, nextAvailabilityDateTime#22198161, optimizationGroups#22198178, orderDateTime#22198158, orderProposalId#22198140L, orderProposalItemGroupId#22198142, orderProposalItemId#22198141, orderQuantityBaseUom#22198163, orderQuantityBaseUomUuid#22198164, originalReplenishmentRunId#22198143L, plant#22198154, previousOrderProposal#22198146L, prodLocSpecificKpis#22198739, product#22198153, productGroup#22198182, qty#22197984, quantityAfterProdPlantOptimization#22197983, quantityKpis#22198767, shardId#22197470, sourceOfSupplyUuid#22198149, splitIndicator#22198145L, subrange#22198152, supplier#22198151, supplierGroup#22198150, supplyingPlant#22198181]
(57) Project
Output [37]: [shardId#22197470, qty#22197984, orderProposalId#22198140L, originalReplenishmentRunId#22198143L, supplierGroup#22198150, supplier#22198151, supplyingPlant#22198181, productGroup#22198182, product#22198153, plant#22198154, subrange#22198152, orderDateTime#22198158, deliveryDateTime#22198159, availabilityDateTime#22198160, nextAvailabilityDateTime#22198161, logisticUnits#22198177, orderQuantityBaseUom#22198163, orderQuantityBaseUomUuid#22198164, splitIndicator#22198145L, netPriceAmount#22198168, netPriceCurrencyCode#22198169, netPriceQuantity#22198165, netPriceQuantityUom#22198166, netPriceQuantityUomUuid#22198167, sourceOfSupplyUuid#22198149, orderProposalItemId#22198141, orderProposalItemGroupId#22198142, optimizationGroups#22198178, measurements#22198170, previousOrderProposal#22198146L, prodLocSpecificKpis#22198739, channelStreamSpecificKpis#22198754, quantityKpis#22198767, struct(minServiceLevel, array_min(filter(constraintStructArray#22199181, lambdafunction((lambda x_73308#22199188.constraintLabels = ServiceLevel), lambda x_73308#22199188, false)).constraintValues), minServiceLevelMinStock, array_min(filter(constraintStructArray#22199181, lambdafunction((lambda x_73309#22199189.constraintLabels = ServiceLevelMinimumStock), lambda x_73309#22199189, false)).constraintValues), maxServiceLevelEndOfListing, array_min(filter(constraintStructArray#22199181, lambdafunction((lambda x_73310#22199190.constraintLabels = ServiceLevelAtStartOfDelisting), lambda x_73310#22199190, false)).constraintValues), maxRoc, array_min(filter(constraintStructArray#22199181, lambdafunction((lambda x_73311#22199191.constraintLabels = RangeOfCoverage), lambda x_73311#22199191, false)).constraintValues), minimumOrderQuantity, minimumOrderQuantity#22198171, endOfListingDateTime, coalesce(filter(prodLocSpecificKpis#22198739, lambdafunction((lambda x_73312#22199192.label = NonListingStartTimestamp), lambda x_73312#22199192, false))[0].dateTime, 1970-01-01 00:00:00)) AS constraintBenchmark#22199187, CASE WHEN (qty#22197984 <=> quantityAfterProdPlantOptimization#22197983) THEN array(struct(isProposedCandidate, true, isProdlocOptimalCandidate, true, candidateOrderQuantity, coalesce((qty#22197984 * (cast(element_at(filter(logisticUnits#22198177, lambdafunction(lambda x_73313#22199260.isOrderUnit, lambda x_73313#22199260, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#22198177, lambdafunction(lambda x_73313#22199261.isOrderUnit, lambda x_73313#22199261, false)), 1, None, false).numerator as double))), qty#22197984), orderQuantityUom, coalesce(element_at(filter(logisticUnits#22198177, lambdafunction(lambda x_73313#22199262.isOrderUnit, lambda x_73313#22199262, false)), 1, None, false).uom, orderQuantityBaseUom#22198163), orderQuantityUomUuid, coalesce(element_at(filter(logisticUnits#22198177, lambdafunction(lambda x_73313#22199263.isOrderUnit, lambda x_73313#22199263, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#22198164), candidateOrderQuantityInBaseUnit, qty#22197984, orderQuantityBaseUom, orderQuantityBaseUom#22198163, orderQuantityBaseUomUuid, orderQuantityBaseUomUuid#22198164, candidateOrderQuantityInPreferredUnit, coalesce(array_min(transform(filter(logisticUnits#22198177, lambdafunction((lambda x_73315#22199264.isPreferred AND (((qty#22197984 * cast(lambda x_73315#22199264.denominator as double)) % cast(lambda x_73315#22199264.numerator as double)) = 0.0)), lambda x_73315#22199264, false)), lambdafunction(struct(inPreferredQuantity, ((qty#22197984 * cast(lambda x_73316#22199305.denominator as double)) / cast(lambda x_73316#22199305.numerator as double)), uom, lambda x_73316#22199305.uom, uomUuid, lambda x_73316#22199305.uomUuid), lambda x_73316#22199305, false))).inPreferredQuantity, coalesce((qty#22197984 * (cast(element_at(filter(logisticUnits#22198177, lambdafunction(lambda x_73314#22199265.isOrderUnit, lambda x_73314#22199265, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#22198177, lambdafunction(lambda x_73314#22199266.isOrderUnit, lambda x_73314#22199266, false)), 1, None, false).numerator as double))), qty#22197984)), orderQuantityPreferredUom, coalesce(array_min(transform(filter(logisticUnits#22198177, lambdafunction((lambda x_73315#22199267.isPreferred AND (((qty#22197984 * cast(lambda x_73315#22199267.denominator as double)) % cast(lambda x_73315#22199267.numerator as double)) = 0.0)), lambda x_73315#22199267, false)), lambdafunction(struct(inPreferredQuantity, ((qty#22197984 * cast(lambda x_73316#22199306.denominator as double)) / cast(lambda x_73316#22199306.numerator as double)), uom, lambda x_73316#22199306.uom, uomUuid, lambda x_73316#22199306.uomUuid), lambda x_73316#22199306, false))).uom, coalesce(element_at(filter(logisticUnits#22198177, lambdafunction(lambda x_73314#22199268.isOrderUnit, lambda x_73314#22199268, false)), 1, None, false).uom, orderQuantityBaseUom#22198163)), orderQuantityPreferredUomUuid, coalesce(array_min(transform(filter(logisticUnits#22198177, lambdafunction((lambda x_73315#22199269.isPreferred AND (((qty#22197984 * cast(lambda x_73315#22199269.denominator as double)) % cast(lambda x_73315#22199269.numerator as double)) = 0.0)), lambda x_73315#22199269, false)), lambdafunction(struct(inPreferredQuantity, ((qty#22197984 * cast(lambda x_73316#22199307.denominator as double)) / cast(lambda x_73316#22199307.numerator as double)), uom, lambda x_73316#22199307.uom, uomUuid, lambda x_73316#22199307.uomUuid), lambda x_73316#22199307, false))).uomUuid, coalesce(element_at(filter(logisticUnits#22198177, lambdafunction(lambda x_73314#22199270.isOrderUnit, lambda x_73314#22199270, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#22198164)), serviceLevel, coalesce(filter(element_at(quantityKpis#22198767, qty#22197984, None, false), lambdafunction((lambda x_73321#22199271.label = ServiceLevel), lambda x_73321#22199271, false))[0].value, 0.0), serviceLevelMinStock, ... 5 more fields)) ELSE array(struct(isProposedCandidate, true, isProdlocOptimalCandidate, false, candidateOrderQuantity, coalesce((qty#22197984 * (cast(element_at(filter(logisticUnits#22198177, lambdafunction(lambda x_73313#22199275.isOrderUnit, lambda x_73313#22199275, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#22198177, lambdafunction(lambda x_73313#22199276.isOrderUnit, lambda x_73313#22199276, false)), 1, None, false).numerator as double))), qty#22197984), orderQuantityUom, coalesce(element_at(filter(logisticUnits#22198177, lambdafunction(lambda x_73313#22199277.isOrderUnit, lambda x_73313#22199277, false)), 1, None, false).uom, orderQuantityBaseUom#22198163), orderQuantityUomUuid, coalesce(element_at(filter(logisticUnits#22198177, lambdafunction(lambda x_73313#22199278.isOrderUnit, lambda x_73313#22199278, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#22198164), candidateOrderQuantityInBaseUnit, qty#22197984, orderQuantityBaseUom, orderQuantityBaseUom#22198163, orderQuantityBaseUomUuid, orderQuantityBaseUomUuid#22198164, candidateOrderQuantityInPreferredUnit, coalesce(array_min(transform(filter(logisticUnits#22198177, lambdafunction((lambda x_73315#22199279.isPreferred AND (((qty#22197984 * cast(lambda x_73315#22199279.denominator as double)) % cast(lambda x_73315#22199279.numerator as double)) = 0.0)), lambda x_73315#22199279, false)), lambdafunction(struct(inPreferredQuantity, ((qty#22197984 * cast(lambda x_73316#22199308.denominator as double)) / cast(lambda x_73316#22199308.numerator as double)), uom, lambda x_73316#22199308.uom, uomUuid, lambda x_73316#22199308.uomUuid), lambda x_73316#22199308, false))).inPreferredQuantity, coalesce((qty#22197984 * (cast(element_at(filter(logisticUnits#22198177, lambdafunction(lambda x_73314#22199280.isOrderUnit, lambda x_73314#22199280, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#22198177, lambdafunction(lambda x_73314#22199281.isOrderUnit, lambda x_73314#22199281, false)), 1, None, false).numerator as double))), qty#22197984)), orderQuantityPreferredUom, coalesce(array_min(transform(filter(logisticUnits#22198177, lambdafunction((lambda x_73315#22199282.isPreferred AND (((qty#22197984 * cast(lambda x_73315#22199282.denominator as double)) % cast(lambda x_73315#22199282.numerator as double)) = 0.0)), lambda x_73315#22199282, false)), lambdafunction(struct(inPreferredQuantity, ((qty#22197984 * cast(lambda x_73316#22199309.denominator as double)) / cast(lambda x_73316#22199309.numerator as double)), uom, lambda x_73316#22199309.uom, uomUuid, lambda x_73316#22199309.uomUuid), lambda x_73316#22199309, false))).uom, coalesce(element_at(filter(logisticUnits#22198177, lambdafunction(lambda x_73314#22199283.isOrderUnit, lambda x_73314#22199283, false)), 1, None, false).uom, orderQuantityBaseUom#22198163)), orderQuantityPreferredUomUuid, coalesce(array_min(transform(filter(logisticUnits#22198177, lambdafunction((lambda x_73315#22199284.isPreferred AND (((qty#22197984 * cast(lambda x_73315#22199284.denominator as double)) % cast(lambda x_73315#22199284.numerator as double)) = 0.0)), lambda x_73315#22199284, false)), lambdafunction(struct(inPreferredQuantity, ((qty#22197984 * cast(lambda x_73316#22199310.denominator as double)) / cast(lambda x_73316#22199310.numerator as double)), uom, lambda x_73316#22199310.uom, uomUuid, lambda x_73316#22199310.uomUuid), lambda x_73316#22199310, false))).uomUuid, coalesce(element_at(filter(logisticUnits#22198177, lambdafunction(lambda x_73314#22199285.isOrderUnit, lambda x_73314#22199285, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#22198164)), serviceLevel, coalesce(filter(element_at(quantityKpis#22198767, qty#22197984, None, false), lambdafunction((lambda x_73325#22199286.label = ServiceLevel), lambda x_73325#22199286, false))[0].value, 0.0), serviceLevelMinStock, ... 5 more fields), struct(isProposedCandidate, false, isProdlocOptimalCandidate, true, candidateOrderQuantity, coalesce((quantityAfterProdPlantOptimization#22197983 * (cast(element_at(filter(logisticUnits#22198177, lambdafunction(lambda x_73317#22199290.isOrderUnit, lambda x_73317#22199290, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#22198177, lambdafunction(lambda x_73317#22199291.isOrderUnit, lambda x_73317#22199291, false)), 1, None, false).numerator as double))), quantityAfterProdPlantOptimization#22197983), orderQuantityUom, coalesce(element_at(filter(logisticUnits#22198177, lambdafunction(lambda x_73317#22199292.isOrderUnit, lambda x_73317#22199292, false)), 1, None, false).uom, orderQuantityBaseUom#22198163), orderQuantityUomUuid, coalesce(element_at(filter(logisticUnits#22198177, lambdafunction(lambda x_73317#22199293.isOrderUnit, lambda x_73317#22199293, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#22198164), candidateOrderQuantityInBaseUnit, quantityAfterProdPlantOptimization#22197983, orderQuantityBaseUom, orderQuantityBaseUom#22198163, orderQuantityBaseUomUuid, orderQuantityBaseUomUuid#22198164, candidateOrderQuantityInPreferredUnit, coalesce(array_min(transform(filter(logisticUnits#22198177, lambdafunction((lambda x_73319#22199294.isPreferred AND (((quantityAfterProdPlantOptimization#22197983 * cast(lambda x_73319#22199294.denominator as double)) % cast(lambda x_73319#22199294.numerator as double)) = 0.0)), lambda x_73319#22199294, false)), lambdafunction(struct(inPreferredQuantity, ((quantityAfterProdPlantOptimization#22197983 * cast(lambda x_73320#22199311.denominator as double)) / cast(lambda x_73320#22199311.numerator as double)), uom, lambda x_73320#22199311.uom, uomUuid, lambda x_73320#22199311.uomUuid), lambda x_73320#22199311, false))).inPreferredQuantity, coalesce((quantityAfterProdPlantOptimization#22197983 * (cast(element_at(filter(logisticUnits#22198177, lambdafunction(lambda x_73318#22199295.isOrderUnit, lambda x_73318#22199295, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#22198177, lambdafunction(lambda x_73318#22199296.isOrderUnit, lambda x_73318#22199296, false)), 1, None, false).numerator as double))), quantityAfterProdPlantOptimization#22197983)), orderQuantityPreferredUom, coalesce(array_min(transform(filter(logisticUnits#22198177, lambdafunction((lambda x_73319#22199297.isPreferred AND (((quantityAfterProdPlantOptimization#22197983 * cast(lambda x_73319#22199297.denominator as double)) % cast(lambda x_73319#22199297.numerator as double)) = 0.0)), lambda x_73319#22199297, false)), lambdafunction(struct(inPreferredQuantity, ((quantityAfterProdPlantOptimization#22197983 * cast(lambda x_73320#22199312.denominator as double)) / cast(lambda x_73320#22199312.numerator as double)), uom, lambda x_73320#22199312.uom, uomUuid, lambda x_73320#22199312.uomUuid), lambda x_73320#22199312, false))).uom, coalesce(element_at(filter(logisticUnits#22198177, lambdafunction(lambda x_73318#22199298.isOrderUnit, lambda x_73318#22199298, false)), 1, None, false).uom, orderQuantityBaseUom#22198163)), orderQuantityPreferredUomUuid, coalesce(array_min(transform(filter(logisticUnits#22198177, lambdafunction((lambda x_73319#22199299.isPreferred AND (((quantityAfterProdPlantOptimization#22197983 * cast(lambda x_73319#22199299.denominator as double)) % cast(lambda x_73319#22199299.numerator as double)) = 0.0)), lambda x_73319#22199299, false)), lambdafunction(struct(inPreferredQuantity, ((quantityAfterProdPlantOptimization#22197983 * cast(lambda x_73320#22199313.denominator as double)) / cast(lambda x_73320#22199313.numerator as double)), uom, lambda x_73320#22199313.uom, uomUuid, lambda x_73320#22199313.uomUuid), lambda x_73320#22199313, false))).uomUuid, coalesce(element_at(filter(logisticUnits#22198177, lambdafunction(lambda x_73318#22199300.isOrderUnit, lambda x_73318#22199300, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#22198164)), serviceLevel, coalesce(filter(element_at(quantityKpis#22198767, quantityAfterProdPlantOptimization#22197983, None, false), lambdafunction((lambda x_73329#22199301.label = ServiceLevel), lambda x_73329#22199301, false))[0].value, 0.0), serviceLevelMinStock, ... 5 more fields)) END AS calculationAnalysis#22199259, coalesce(filter(prodLocSpecificKpis#22198739, lambdafunction((lambda x_73333#22199315.label = InitialStockQty), lambda x_73333#22199315, false))[0].dateTime, 1970-01-01 00:00:00) AS inventoryDateTime#22199314, coalesce(filter(prodLocSpecificKpis#22198739, lambdafunction((lambda x_73334#22199317.label = DemandPeriodEndTimestamp), lambda x_73334#22199317, false))[0].dateTime, 1970-01-01 00:00:00) AS demandPeriodEndDateTime#22199316]
Input [36]: [shardId#22197470, quantityAfterProdPlantOptimization#22197983, qty#22197984, orderProposalId#22198140L, originalReplenishmentRunId#22198143L, supplierGroup#22198150, supplier#22198151, supplyingPlant#22198181, productGroup#22198182, product#22198153, plant#22198154, subrange#22198152, orderDateTime#22198158, deliveryDateTime#22198159, availabilityDateTime#22198160, nextAvailabilityDateTime#22198161, logisticUnits#22198177, orderQuantityBaseUom#22198163, orderQuantityBaseUomUuid#22198164, splitIndicator#22198145L, netPriceAmount#22198168, netPriceCurrencyCode#22198169, netPriceQuantity#22198165, netPriceQuantityUom#22198166, netPriceQuantityUomUuid#22198167, sourceOfSupplyUuid#22198149, minimumOrderQuantity#22198171, orderProposalItemId#22198141, orderProposalItemGroupId#22198142, optimizationGroups#22198178, measurements#22198170, previousOrderProposal#22198146L, prodLocSpecificKpis#22198739, channelStreamSpecificKpis#22198754, quantityKpis#22198767, constraintStructArray#22199181]
(58) Project
Output [21]: [shardId#22197470, qty#22197984, orderProposalId#22198140L, originalReplenishmentRunId#22198143L, supplierGroup#22198150, supplier#22198151, supplyingPlant#22198181, productGroup#22198182, product#22198153, plant#22198154, subrange#22198152, orderDateTime#22198158, deliveryDateTime#22198159, logisticUnits#22198177, orderQuantityBaseUom#22198163, orderQuantityBaseUomUuid#22198164, splitIndicator#22198145L, orderProposalItemId#22198141, orderProposalItemGroupId#22198142, previousOrderProposal#22198146L, struct(itemId, orderProposalItemId#22198141, itemGroupId, orderProposalItemGroupId#22198142, supplier, supplier#22198151, supplyingPlant, supplyingPlant#22198181, productGroup, productGroup#22198182, product, product#22198153, plant, plant#22198154, supplierSubRange, subrange#22198152, sourceOfSupplyUuid, sourceOfSupplyUuid#22198149, deliveryDateTime, deliveryDateTime#22198159, unitPrice, netPriceAmount#22198168, unitPriceCurrency, netPriceCurrencyCode#22198169, unitPriceQuantity, ... 37 more fields) AS parentItem#22199390]
Input [37]: [shardId#22197470, qty#22197984, orderProposalId#22198140L, originalReplenishmentRunId#22198143L, supplierGroup#22198150, supplier#22198151, supplyingPlant#22198181, productGroup#22198182, product#22198153, plant#22198154, subrange#22198152, orderDateTime#22198158, deliveryDateTime#22198159, availabilityDateTime#22198160, nextAvailabilityDateTime#22198161, logisticUnits#22198177, orderQuantityBaseUom#22198163, orderQuantityBaseUomUuid#22198164, splitIndicator#22198145L, netPriceAmount#22198168, netPriceCurrencyCode#22198169, netPriceQuantity#22198165, netPriceQuantityUom#22198166, netPriceQuantityUomUuid#22198167, sourceOfSupplyUuid#22198149, orderProposalItemId#22198141, orderProposalItemGroupId#22198142, optimizationGroups#22198178, measurements#22198170, previousOrderProposal#22198146L, prodLocSpecificKpis#22198739, channelStreamSpecificKpis#22198754, quantityKpis#22198767, constraintBenchmark#22199187, calculationAnalysis#22199259, inventoryDateTime#22199314, demandPeriodEndDateTime#22199316]
(59) Project
Output [12]: [shardId#22197470, orderProposalId#22198140L, originalReplenishmentRunId#22198143L, supplierGroup#22198150, supplier#22198151, supplyingPlant#22198181, orderDateTime#22198158, splitIndicator#22198145L, orderProposalItemGroupId#22198142, previousOrderProposal#22198146L, parentItem#22199390, struct(itemId, orderProposalItemId#22198141, supplier, supplier#22198151, supplyingPlant, supplyingPlant#22198181, productGroup, productGroup#22198182, product, product#22198153, plant, plant#22198154, supplierSubRange, subrange#22198152, deliveryDateTime, deliveryDateTime#22198159, orderQuantity, coalesce((qty#22197984 * (cast(element_at(filter(logisticUnits#22198177, lambdafunction(lambda x_73358#22199424.isOrderUnit, lambda x_73358#22199424, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#22198177, lambdafunction(lambda x_73358#22199425.isOrderUnit, lambda x_73358#22199425, false)), 1, None, false).numerator as double))), qty#22197984), orderQuantityUom, coalesce(element_at(filter(logisticUnits#22198177, lambdafunction(lambda x_73358#22199426.isOrderUnit, lambda x_73358#22199426, false)), 1, None, false).uom, orderQuantityBaseUom#22198163), orderQuantityUomUuid, coalesce(element_at(filter(logisticUnits#22198177, lambdafunction(lambda x_73358#22199427.isOrderUnit, lambda x_73358#22199427, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#22198164), orderQuantityInBaseUnit, qty#22197984, orderQuantityBaseUom, ... 13 more fields) AS item#22199421]
Input [21]: [shardId#22197470, qty#22197984, orderProposalId#22198140L, originalReplenishmentRunId#22198143L, supplierGroup#22198150, supplier#22198151, supplyingPlant#22198181, productGroup#22198182, product#22198153, plant#22198154, subrange#22198152, orderDateTime#22198158, deliveryDateTime#22198159, logisticUnits#22198177, orderQuantityBaseUom#22198163, orderQuantityBaseUomUuid#22198164, splitIndicator#22198145L, orderProposalItemId#22198141, orderProposalItemGroupId#22198142, previousOrderProposal#22198146L, parentItem#22199390]
(60) ObjectHashAggregate
Input [12]: [shardId#22197470, orderProposalId#22198140L, originalReplenishmentRunId#22198143L, supplierGroup#22198150, supplier#22198151, supplyingPlant#22198181, orderDateTime#22198158, splitIndicator#22198145L, orderProposalItemGroupId#22198142, previousOrderProposal#22198146L, parentItem#22199390, item#22199421]
Keys [4]: [shardId#22197470, orderProposalId#22198140L, splitIndicator#22198145L, orderProposalItemGroupId#22198142]
Functions [8]: [partial_max(originalReplenishmentRunId#22198143L), partial_max(supplierGroup#22198150), partial_max(supplier#22198151), partial_max(supplyingPlant#22198181), partial_max(orderDateTime#22198158), partial_collect_list(parentItem#22199390, 0, 0), partial_collect_set(previousOrderProposal#22198146L, 0, 0), partial_collect_list(item#22199421, 0, 0)]
Aggregate Attributes [8]: [max#22200674L, max#22200675, max#22200676, max#22200677, max#22200678, buf#22200679, buf#22200680, buf#22200681]
Results [12]: [shardId#22197470, orderProposalId#22198140L, splitIndicator#22198145L, orderProposalItemGroupId#22198142, max#22200682L, max#22200683, max#22200684, max#22200685, max#22200686, buf#22200687, buf#22200688, buf#22200689]
(61) Exchange
Input [12]: [shardId#22197470, orderProposalId#22198140L, splitIndicator#22198145L, orderProposalItemGroupId#22198142, max#22200682L, max#22200683, max#22200684, max#22200685, max#22200686, buf#22200687, buf#22200688, buf#22200689]
Arguments: hashpartitioning(shardId#22197470, orderProposalId#22198140L, splitIndicator#22198145L, orderProposalItemGroupId#22198142, 30), ENSURE_REQUIREMENTS, [plan_id=6645505]
(62) ObjectHashAggregate
Input [12]: [shardId#22197470, orderProposalId#22198140L, splitIndicator#22198145L, orderProposalItemGroupId#22198142, max#22200682L, max#22200683, max#22200684, max#22200685, max#22200686, buf#22200687, buf#22200688, buf#22200689]
Keys [4]: [shardId#22197470, orderProposalId#22198140L, splitIndicator#22198145L, orderProposalItemGroupId#22198142]
Functions [8]: [max(originalReplenishmentRunId#22198143L), max(supplierGroup#22198150), max(supplier#22198151), max(supplyingPlant#22198181), max(orderDateTime#22198158), collect_list(parentItem#22199390, 0, 0), collect_set(previousOrderProposal#22198146L, 0, 0), collect_list(item#22199421, 0, 0)]
Aggregate Attributes [8]: [max(originalReplenishmentRunId#22198143L)#22199490L, max(supplierGroup#22198150)#22199491, max(supplier#22198151)#22199492, max(supplyingPlant#22198181)#22199493, max(orderDateTime#22198158)#22199494, collect_list(parentItem#22199390, 0, 0)#22199495, collect_set(previousOrderProposal#22198146L, 0, 0)#22199497, collect_list(item#22199421, 0, 0)#22199496]
Results [10]: [shardId#22197470, orderProposalId#22198140L, max(originalReplenishmentRunId#22198143L)#22199490L AS originalReplenishmentRunId#22199438L, max(supplierGroup#22198150)#22199491 AS supplierGroup#22199439, max(supplier#22198151)#22199492 AS supplier#22199440, max(supplyingPlant#22198181)#22199493 AS supplyingPlant#22199441, max(orderDateTime#22198158)#22199494 AS orderDateTime#22199442, collect_list(parentItem#22199390, 0, 0)#22199495 AS parentItems#22199443, collect_set(previousOrderProposal#22198146L, 0, 0)#22199497 AS previousOrderProposals#22199445, struct(itemGroupId, orderProposalItemGroupId#22198142, items, collect_list(item#22199421, 0, 0)#22199496) AS itemGroup#22199499]
(63) ObjectHashAggregate
Input [10]: [shardId#22197470, orderProposalId#22198140L, originalReplenishmentRunId#22199438L, supplierGroup#22199439, supplier#22199440, supplyingPlant#22199441, orderDateTime#22199442, parentItems#22199443, previousOrderProposals#22199445, itemGroup#22199499]
Keys [2]: [shardId#22197470, orderProposalId#22198140L]
Functions [8]: [partial_max(originalReplenishmentRunId#22199438L), partial_max(supplierGroup#22199439), partial_max(supplier#22199440), partial_max(supplyingPlant#22199441), partial_max(orderDateTime#22199442), partial_collect_list(itemGroup#22199499, 0, 0), partial_collect_list(parentItems#22199443, 0, 0), partial_collect_set(previousOrderProposals#22199445, 0, 0)]
Aggregate Attributes [8]: [max#22200658L, max#22200659, max#22200660, max#22200661, max#22200662, buf#22200663, buf#22200664, buf#22200665]
Results [10]: [shardId#22197470, orderProposalId#22198140L, max#22200666L, max#22200667, max#22200668, max#22200669, max#22200670, buf#22200671, buf#22200672, buf#22200673]
(64) Exchange
Input [10]: [shardId#22197470, orderProposalId#22198140L, max#22200666L, max#22200667, max#22200668, max#22200669, max#22200670, buf#22200671, buf#22200672, buf#22200673]
Arguments: hashpartitioning(shardId#22197470, orderProposalId#22198140L, 30), ENSURE_REQUIREMENTS, [plan_id=6645508]
(65) ObjectHashAggregate
Input [10]: [shardId#22197470, orderProposalId#22198140L, max#22200666L, max#22200667, max#22200668, max#22200669, max#22200670, buf#22200671, buf#22200672, buf#22200673]
Keys [2]: [shardId#22197470, orderProposalId#22198140L]
Functions [8]: [max(originalReplenishmentRunId#22199438L), max(supplierGroup#22199439), max(supplier#22199440), max(supplyingPlant#22199441), max(orderDateTime#22199442), collect_list(itemGroup#22199499, 0, 0), collect_list(parentItems#22199443, 0, 0), collect_set(previousOrderProposals#22199445, 0, 0)]
Aggregate Attributes [8]: [max(originalReplenishmentRunId#22199438L)#22199521L, max(supplierGroup#22199439)#22199522, max(supplier#22199440)#22199523, max(supplyingPlant#22199441)#22199524, max(orderDateTime#22199442)#22199525, collect_list(itemGroup#22199499, 0, 0)#22199526, collect_list(parentItems#22199443, 0, 0)#22199527, collect_set(previousOrderProposals#22199445, 0, 0)#22199528]
Results [10]: [shardId#22197470, orderProposalId#22198140L, max(originalReplenishmentRunId#22199438L)#22199521L AS originalReplenishmentRunId#22199500L, max(supplierGroup#22199439)#22199522 AS supplierGroup#22199501, max(supplier#22199440)#22199523 AS supplier#22199502, max(supplyingPlant#22199441)#22199524 AS supplyingPlant#22199503, max(orderDateTime#22199442)#22199525 AS orderDateTime#22199504, collect_list(itemGroup#22199499, 0, 0)#22199526 AS itemGroups#22199505, flatten(collect_list(parentItems#22199443, 0, 0)#22199527) AS parentItems#22199506, flatten(collect_set(previousOrderProposals#22199445, 0, 0)#22199528) AS previousOrderProposals#22199507]
(66) Project
Output [2]: [shardId#22197470, struct(orderProposalId, orderProposalId#22198140L, originalReplenishmentRunId, originalReplenishmentRunId#22199500L, supplierGroup, supplierGroup#22199501, optimizationGroups, null, supplier, CASE WHEN isnull(supplierGroup#22199501) THEN supplier#22199502 END, supplyingPlant, supplyingPlant#22199503, orderDateTime, orderDateTime#22199504, itemGroups, itemGroups#22199505, previousOrderProposals, array_distinct(previousOrderProposals#22199507), parentItems, parentItems#22199506) AS orderProposal#22199532]
Input [10]: [shardId#22197470, orderProposalId#22198140L, originalReplenishmentRunId#22199500L, supplierGroup#22199501, supplier#22199502, supplyingPlant#22199503, orderDateTime#22199504, itemGroups#22199505, parentItems#22199506, previousOrderProposals#22199507]
(67) Project
Output [11]: [shardId#22197470, orderProposal#22199532.orderProposalId AS _extract_orderProposalId#22200290L, orderProposal#22199532.originalReplenishmentRunId AS _extract_originalReplenishmentRunId#22200291L, orderProposal#22199532.supplierGroup AS _extract_supplierGroup#22200292, orderProposal#22199532.supplier AS _extract_supplier#22200293, orderProposal#22199532.supplyingPlant AS _extract_supplyingPlant#22200294, orderProposal#22199532.orderDateTime AS _extract_orderDateTime#22200295, orderProposal#22199532.itemGroups AS _extract_itemGroups#22200296, orderProposal#22199532.previousOrderProposals AS _extract_previousOrderProposals#22200297, orderProposal#22199532.parentItems AS _extract_parentItems#22200298, orderProposal#22199532.orderProposalId AS _extract_orderProposalId#22200299L]
Input [2]: [shardId#22197470, orderProposal#22199532]
(68) Exchange
Input [11]: [shardId#22197470, _extract_orderProposalId#22200290L, _extract_originalReplenishmentRunId#22200291L, _extract_supplierGroup#22200292, _extract_supplier#22200293, _extract_supplyingPlant#22200294, _extract_orderDateTime#22200295, _extract_itemGroups#22200296, _extract_previousOrderProposals#22200297, _extract_parentItems#22200298, _extract_orderProposalId#22200299L]
Arguments: hashpartitioning(coalesce(shardId#22197470, ), isnull(shardId#22197470), coalesce(_extract_orderProposalId#22200299L, 0), isnull(_extract_orderProposalId#22200299L), 30), ENSURE_REQUIREMENTS, [plan_id=6645512]
(69) Sort
Input [11]: [shardId#22197470, _extract_orderProposalId#22200290L, _extract_originalReplenishmentRunId#22200291L, _extract_supplierGroup#22200292, _extract_supplier#22200293, _extract_supplyingPlant#22200294, _extract_orderDateTime#22200295, _extract_itemGroups#22200296, _extract_previousOrderProposals#22200297, _extract_parentItems#22200298, _extract_orderProposalId#22200299L]
Arguments: [coalesce(shardId#22197470, ) ASC NULLS FIRST, isnull(shardId#22197470) ASC NULLS FIRST, coalesce(_extract_orderProposalId#22200299L, 0) ASC NULLS FIRST, isnull(_extract_orderProposalId#22200299L) ASC NULLS FIRST], false, 0
(70) InMemoryTableScan
Output [3]: [shardId#22199547, orderProposalId#22199548L, optimizationGroups#22199550]
Arguments: [shardId#22199547, orderProposalId#22199548L, optimizationGroups#22199550], [isnotnull(orderProposalId#22199548L)]
(71) InMemoryRelation
Arguments: [shardId#22199547, orderProposalId#22199548L, items#22199549, optimizationGroups#22199550, isOptimal#22199551, optimizationInsights#22199553], StorageLevel(disk, memory, 2 replicas)
(72) Filter [codegen id : 2]
Input [3]: [shardId#22199547, orderProposalId#22199548L, optimizationGroups#22199550]
Condition : isnotnull(orderProposalId#22199548L)
(73) Exchange
Input [3]: [shardId#22199547, orderProposalId#22199548L, optimizationGroups#22199550]
Arguments: hashpartitioning(orderProposalId#22199548L, 30), ENSURE_REQUIREMENTS, [plan_id=6645517]
(74) Sort [codegen id : 3]
Input [3]: [shardId#22199547, orderProposalId#22199548L, optimizationGroups#22199550]
Arguments: [orderProposalId#22199548L ASC NULLS FIRST], false, 0
(75) InMemoryTableScan
Output [2]: [items#22199176, shardId#22199174]
Arguments: [items#22199176, shardId#22199174], [(size(items#22199176.worklistShardItemId, true) > 0), isnotnull(items#22199176.worklistShardItemId), (shardId#22199174 = 0_7_10000000553)]
(76) InMemoryRelation
Arguments: [shardId#22199174, orderProposalId#22199175L, items#22199176, optimizationGroups#22199177, isOptimal#22199178, optimizationInsights#22199180], StorageLevel(disk, memory, 2 replicas)
(77) Filter [codegen id : 4]
Input [2]: [items#22199176, shardId#22199174]
Condition : (((size(items#22199176.worklistShardItemId, true) > 0) AND isnotnull(items#22199176.worklistShardItemId)) AND (shardId#22199174 = 0_7_10000000553))
(78) Project [codegen id : 4]
Output [1]: [items#22199176.worklistShardItemId AS _extract_worklistShardItemId#22200195]
Input [2]: [items#22199176, shardId#22199174]
(79) Generate [codegen id : 4]
Input [1]: [_extract_worklistShardItemId#22200195]
Arguments: explode(_extract_worklistShardItemId#22200195), false, [item#22199554L]
(80) Project [codegen id : 4]
Output [1]: [item#22199554L AS worklistShardItemId#22199555L]
Input [1]: [item#22199554L]
(81) BroadcastExchange
Input [1]: [worklistShardItemId#22199555L]
Arguments: HashedRelationBroadcastMode(List(input[0, bigint, true]),false), [plan_id=6645528]
(82) Scan parquet
Output [5]: [orderProposalId#22199603L, isFallbackOrderOnly#22199620, worklistShardItemId#22199626L, shardId#22199647, sequenceId#22199625]
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/10000000553]
PartitionFilters: [isnotnull(shardId#22199647), isnotnull(sequenceId#22199625), (shardId#22199647 = 0_7_10000000553), (sequenceId#22199625 = 4)]
PushedFilters: [IsNotNull(worklistShardItemId), Not(EqualNullSafe(isFallbackOrderOnly,true)), IsNotNull(orderProposalId)]
ReadSchema: struct<orderProposalId:bigint,isFallbackOrderOnly:boolean,worklistShardItemId:bigint>
(83) ColumnarToRow [codegen id : 5]
Input [5]: [orderProposalId#22199603L, isFallbackOrderOnly#22199620, worklistShardItemId#22199626L, shardId#22199647, sequenceId#22199625]
(84) Filter [codegen id : 5]
Input [5]: [orderProposalId#22199603L, isFallbackOrderOnly#22199620, worklistShardItemId#22199626L, shardId#22199647, sequenceId#22199625]
Condition : ((isnotnull(worklistShardItemId#22199626L) AND NOT (isFallbackOrderOnly#22199620 <=> true)) AND isnotnull(orderProposalId#22199603L))
(85) Project [codegen id : 5]
Output [2]: [orderProposalId#22199603L, worklistShardItemId#22199626L]
Input [5]: [orderProposalId#22199603L, isFallbackOrderOnly#22199620, worklistShardItemId#22199626L, shardId#22199647, sequenceId#22199625]
(86) Exchange
Input [2]: [orderProposalId#22199603L, worklistShardItemId#22199626L]
Arguments: hashpartitioning(worklistShardItemId#22199626L, 30), REPARTITION_BY_NUM, [plan_id=6645535]
(87) Project
Output [2]: [worklistShardItemId#22199626L, orderProposalId#22199603L]
Input [2]: [orderProposalId#22199603L, worklistShardItemId#22199626L]
(88) BroadcastHashJoin [codegen id : 6]
Left keys [1]: [worklistShardItemId#22199555L]
Right keys [1]: [worklistShardItemId#22199626L]
Join type: Inner
Join condition: None
(89) Project [codegen id : 6]
Output [1]: [orderProposalId#22199603L]
Input [3]: [worklistShardItemId#22199555L, worklistShardItemId#22199626L, orderProposalId#22199603L]
(90) HashAggregate [codegen id : 6]
Input [1]: [orderProposalId#22199603L]
Keys [1]: [orderProposalId#22199603L]
Functions: []
Aggregate Attributes: []
Results [1]: [orderProposalId#22199603L]
(91) Exchange
Input [1]: [orderProposalId#22199603L]
Arguments: hashpartitioning(orderProposalId#22199603L, 30), ENSURE_REQUIREMENTS, [plan_id=6645542]
(92) HashAggregate [codegen id : 7]
Input [1]: [orderProposalId#22199603L]
Keys [1]: [orderProposalId#22199603L]
Functions: []
Aggregate Attributes: []
Results [1]: [orderProposalId#22199603L]
(93) Sort [codegen id : 7]
Input [1]: [orderProposalId#22199603L]
Arguments: [orderProposalId#22199603L ASC NULLS FIRST], false, 0
(94) SortMergeJoin [codegen id : 8]
Left keys [1]: [orderProposalId#22199548L]
Right keys [1]: [orderProposalId#22199603L]
Join type: Inner
Join condition: None
(95) Project
Output [3]: [orderProposalId#22199548L, shardId#22199547, coalesce(transform(optimizationGroups#22199550, lambdafunction(struct(optGroupId, lambda x_73362#22199545.optGroupId, minOrderProfile, lambda x_73362#22199545.minOrderProfile, assignmentDetails, lambda x_73362#22199545.assignmentDetails, minOrdBenchmark, struct(dimensionType, lambda x_73362#22199545.minOrderGoal.dimensionType, unit, lambda x_73362#22199545.minOrderGoal.unit, unitUuid, lambda x_73362#22199545.minOrderGoal.unitUuid, goalValue, lambda x_73362#22199545.minOrderGoal.minOrderValue, calcValue, lambda x_73362#22199545.minOrderGoal.calculatedOrderValue), transportLoadProfile, null, transportLoadGoal, null), lambda x_73362#22199545, false)), []) AS optimizationGroups#22199544]
Input [4]: [shardId#22199547, orderProposalId#22199548L, optimizationGroups#22199550, orderProposalId#22199603L]
(96) Exchange
Input [3]: [orderProposalId#22199548L, shardId#22199547, optimizationGroups#22199544]
Arguments: hashpartitioning(coalesce(shardId#22199547, ), isnull(shardId#22199547), coalesce(orderProposalId#22199548L, 0), isnull(orderProposalId#22199548L), 30), ENSURE_REQUIREMENTS, [plan_id=6645551]
(97) Sort [codegen id : 9]
Input [3]: [orderProposalId#22199548L, shardId#22199547, optimizationGroups#22199544]
Arguments: [coalesce(shardId#22199547, ) ASC NULLS FIRST, isnull(shardId#22199547) ASC NULLS FIRST, coalesce(orderProposalId#22199548L, 0) ASC NULLS FIRST, isnull(orderProposalId#22199548L) ASC NULLS FIRST], false, 0
(98) SortMergeJoin
Left keys [4]: [coalesce(shardId#22197470, ), isnull(shardId#22197470), coalesce(_extract_orderProposalId#22200299L, 0), isnull(_extract_orderProposalId#22200299L)]
Right keys [4]: [coalesce(shardId#22199547, ), isnull(shardId#22199547), coalesce(orderProposalId#22199548L, 0), isnull(orderProposalId#22199548L)]
Join type: LeftOuter
Join condition: None
(99) Project
Output [2]: [shardId#22197470, named_struct(orderProposalId, _extract_orderProposalId#22200299L, originalReplenishmentRunId, _extract_originalReplenishmentRunId#22200291L, supplierGroup, _extract_supplierGroup#22200292, optimizationGroups, coalesce(optimizationGroups#22199544, []), supplier, _extract_supplier#22200293, supplyingPlant, _extract_supplyingPlant#22200294, orderDateTime, _extract_orderDateTime#22200295, itemGroups, _extract_itemGroups#22200296, previousOrderProposals, _extract_previousOrderProposals#22200297, parentItems, _extract_parentItems#22200298) AS orderProposal#22199651]
Input [14]: [shardId#22197470, _extract_orderProposalId#22200290L, _extract_originalReplenishmentRunId#22200291L, _extract_supplierGroup#22200292, _extract_supplier#22200293, _extract_supplyingPlant#22200294, _extract_orderDateTime#22200295, _extract_itemGroups#22200296, _extract_previousOrderProposals#22200297, _extract_parentItems#22200298, _extract_orderProposalId#22200299L, orderProposalId#22199548L, shardId#22199547, optimizationGroups#22199544]
(100) Project
Output [3]: [shardId#22197470, orderProposal#22199651, CASE WHEN (size(orderProposal#22199651.parentItems, true) > 2000) THEN xxhash64(orderProposal#22199651.orderProposalId, 42) ELSE xxhash64(pmod(cast(orderProposal#22199651.orderProposalId as decimal(20,0)), 0), 42) END AS resultSeparationId#22201403L]
Input [2]: [orderProposal#22199651, shardId#22197470]
(101) ObjectHashAggregate
Input [3]: [shardId#22197470, orderProposal#22199651, resultSeparationId#22201403L]
Keys [2]: [shardId#22197470, resultSeparationId#22201403L]
Functions [1]: [partial_collect_list(orderProposal#22199651, 0, 0)]
Aggregate Attributes [1]: [buf#22201442]
Results [3]: [shardId#22197470, resultSeparationId#22201403L, buf#22201443]
(102) Exchange
Input [3]: [shardId#22197470, resultSeparationId#22201403L, buf#22201443]
Arguments: hashpartitioning(shardId#22197470, resultSeparationId#22201403L, 30), ENSURE_REQUIREMENTS, [plan_id=6645707]
(103) ObjectHashAggregate
Input [3]: [shardId#22197470, resultSeparationId#22201403L, buf#22201443]
Keys [2]: [shardId#22197470, resultSeparationId#22201403L]
Functions [1]: [collect_list(orderProposal#22199651, 0, 0)]
Aggregate Attributes [1]: [collect_list(orderProposal#22199651, 0, 0)#22201411]
Results [3]: [shardId#22197470, resultSeparationId#22201403L, collect_list(orderProposal#22199651, 0, 0)#22201411 AS orderProposals#22201407]
(104) HashAggregate [codegen id : 1]
Input: []
Keys: []
Functions [1]: [partial_count(1)]
Aggregate Attributes [1]: [count#22201520L]
Results [1]: [count#22201521L]
(105) Exchange
Input [1]: [count#22201521L]
Arguments: SinglePartition, ENSURE_REQUIREMENTS, [plan_id=6645731]
(106) HashAggregate [codegen id : 2]
Input [1]: [count#22201521L]
Keys: []
Functions [1]: [count(1)]
Aggregate Attributes [1]: [count(1)#22201474L]
Results [1]: [count(1)#22201474L AS count#22201470L]