== Physical Plan ==
* HashAggregate (104)
+- Exchange (103)
+- * HashAggregate (102)
+- InMemoryTableScan (1)
+- InMemoryRelation (2)
+- ObjectHashAggregate (101)
+- Exchange (100)
+- ObjectHashAggregate (99)
+- Project (98)
+- InMemoryTableScan (3)
+- InMemoryRelation (4)
+- Project (97)
+- SortMergeJoin LeftOuter (96)
:- 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 (95)
+- Exchange (94)
+- Project (93)
+- * BroadcastHashJoin Inner BuildLeft (92)
:- BroadcastExchange (73)
: +- * Filter (72)
: +- InMemoryTableScan (70)
: +- InMemoryRelation (71)
: +- * Filter (13)
: +- InMemoryTableScan (9)
: +- InMemoryRelation (10)
: +- * Filter (12)
: +- * Scan ExistingRDD (11)
+- * HashAggregate (91)
+- Exchange (90)
+- * HashAggregate (89)
+- * Project (88)
+- * BroadcastHashJoin Inner BuildLeft (87)
:- BroadcastExchange (80)
: +- * Project (79)
: +- * Generate (78)
: +- * Project (77)
: +- * Filter (76)
: +- InMemoryTableScan (74)
: +- InMemoryRelation (75)
: +- * Filter (13)
: +- InMemoryTableScan (9)
: +- InMemoryRelation (10)
: +- * Filter (12)
: +- * Scan ExistingRDD (11)
+- * Project (86)
+- Exchange (85)
+- * Project (84)
+- * Filter (83)
+- * ColumnarToRow (82)
+- Scan parquet (81)
(1) InMemoryTableScan
Output: []
(2) InMemoryRelation
Arguments: [shardId#6608407, resultSeparationId#6612302L, orderProposals#6612306], StorageLevel(disk, memory, 2 replicas)
(3) InMemoryTableScan
Output [2]: [orderProposal#6610550, shardId#6608407]
Arguments: [orderProposal#6610550, shardId#6608407]
(4) InMemoryRelation
Arguments: [shardId#6608407, orderProposal#6610550], StorageLevel(disk, memory, 2 replicas)
(5) InMemoryTableScan
Output [39]: [availabilityDateTime#6609097, channelStreamSpecificKpis#6609662, constraintLabels#6609109, constraintOperators#6609110, constraintValues#6609112, deliveryDateTime#6609096, isFallbackOrderOnly#6609099, logisticUnits#6609114, measurements#6609107, minimumOrderQuantity#6609108, netPriceAmount#6609105, netPriceCurrencyCode#6609106, netPriceQuantity#6609102, netPriceQuantityUom#6609103, netPriceQuantityUomUuid#6609104, nextAvailabilityDateTime#6609098, optimizationGroups#6609115, orderDateTime#6609095, orderProposalId#6609077L, orderProposalItemGroupId#6609079, orderProposalItemId#6609078, orderQuantityBaseUom#6609100, orderQuantityBaseUomUuid#6609101, originalReplenishmentRunId#6609080L, plant#6609091, previousOrderProposal#6609083L, prodLocSpecificKpis#6609647, product#6609090, productGroup#6609119, qty#6608921, quantityAfterProdPlantOptimization#6608920, quantityKpis#6609675, shardId#6608407, sourceOfSupplyUuid#6609086, splitIndicator#6609082L, subrange#6609089, supplier#6609088, supplierGroup#6609087, supplyingPlant#6609118]
Arguments: [availabilityDateTime#6609097, channelStreamSpecificKpis#6609662, constraintLabels#6609109, constraintOperators#6609110, constraintValues#6609112, deliveryDateTime#6609096, isFallbackOrderOnly#6609099, logisticUnits#6609114, measurements#6609107, minimumOrderQuantity#6609108, netPriceAmount#6609105, netPriceCurrencyCode#6609106, netPriceQuantity#6609102, netPriceQuantityUom#6609103, netPriceQuantityUomUuid#6609104, nextAvailabilityDateTime#6609098, optimizationGroups#6609115, orderDateTime#6609095, orderProposalId#6609077L, orderProposalItemGroupId#6609079, orderProposalItemId#6609078, orderQuantityBaseUom#6609100, orderQuantityBaseUomUuid#6609101, originalReplenishmentRunId#6609080L, plant#6609091, ... 14 more fields], [NOT (isFallbackOrderOnly#6609099 <=> true)]
(6) InMemoryRelation
Arguments: [shardId#6608407, worklistShardItemId#6608919L, quantityAfterProdPlantOptimization#6608920, qty#6608921, orderProposalId#6609077L, originalReplenishmentRunId#6609080L, supplierGroup#6609087, supplier#6609088, supplyingPlant#6609118, productGroup#6609119, product#6609090, plant#6609091, subrange#6609089, orderDateTime#6609095, deliveryDateTime#6609096, availabilityDateTime#6609097, nextAvailabilityDateTime#6609098, constraintValues#6609112, constraintOperators#6609110, constraintLabels#6609109, logisticUnits#6609114, orderQuantityBaseUom#6609100, orderQuantityBaseUomUuid#6609101, splitIndicator#6609082L, netPriceAmount#6609105, ... 17 more fields], StorageLevel(disk, memory, 2 replicas)
(7) InMemoryTableScan
Output [2]: [shardId#6608407, items#6608409]
Arguments: [shardId#6608407, items#6608409], [(size(items#6608409, true) > 0), isnotnull(items#6608409)]
(8) InMemoryRelation
Arguments: [shardId#6608407, orderProposalId#6608408L, items#6608409, optimizationGroups#6608410, isOptimal#6608411, optimizationInsights#6608413], StorageLevel(disk, memory, 2 replicas)
(9) InMemoryTableScan
Output [6]: [shardId#6608407, orderProposalId#6608408L, items#6608409, optimizationGroups#6608410, isOptimal#6608411, optimizationInsights#6608413]
Arguments: [shardId#6608407, orderProposalId#6608408L, items#6608409, optimizationGroups#6608410, isOptimal#6608411, optimizationInsights#6608413], [isnotnull(shardId#6608407), (shardId#6608407 = 0_1_10000002290)]
(10) InMemoryRelation
Arguments: [shardId#6608407, orderProposalId#6608408L, items#6608409, optimizationGroups#6608410, isOptimal#6608411, lastModified#6608412, optimizationInsights#6608413], StorageLevel(disk, memory, 2 replicas)
(11) Scan ExistingRDD [codegen id : 1]
Output [7]: [shardId#6608407, orderProposalId#6608408L, items#6608409, optimizationGroups#6608410, isOptimal#6608411, lastModified#6608412, optimizationInsights#6608413]
Arguments: [shardId#6608407, orderProposalId#6608408L, items#6608409, optimizationGroups#6608410, isOptimal#6608411, lastModified#6608412, optimizationInsights#6608413], MapPartitionsRDD[467832] at start at FileStorageAdapterImpl.java:598, ExistingRDD, UnknownPartitioning(0)
(12) Filter [codegen id : 1]
Input [7]: [shardId#6608407, orderProposalId#6608408L, items#6608409, optimizationGroups#6608410, isOptimal#6608411, lastModified#6608412, optimizationInsights#6608413]
Condition : (isnotnull(shardId#6608407) AND (shardId#6608407 = 0_1_10000002290))
(13) Filter [codegen id : 1]
Input [6]: [shardId#6608407, orderProposalId#6608408L, items#6608409, optimizationGroups#6608410, isOptimal#6608411, optimizationInsights#6608413]
Condition : (isnotnull(shardId#6608407) AND (shardId#6608407 = 0_1_10000002290))
(14) Filter [codegen id : 1]
Input [2]: [shardId#6608407, items#6608409]
Condition : ((size(items#6608409, true) > 0) AND isnotnull(items#6608409))
(15) Generate [codegen id : 1]
Input [2]: [shardId#6608407, items#6608409]
Arguments: explode(items#6608409), [shardId#6608407], false, [item#6608918]
(16) Project [codegen id : 1]
Output [4]: [shardId#6608407, item#6608918.worklistShardItemId AS worklistShardItemId#6608919L, item#6608918.quantityAfterProdPlantOptimization AS quantityAfterProdPlantOptimization#6608920, item#6608918.qty AS qty#6608921]
Input [2]: [shardId#6608407, item#6608918]
(17) Exchange
Input [4]: [shardId#6608407, worklistShardItemId#6608919L, quantityAfterProdPlantOptimization#6608920, qty#6608921]
Arguments: hashpartitioning(worklistShardItemId#6608919L, 30), ENSURE_REQUIREMENTS, [plan_id=3473522]
(18) Sort [codegen id : 2]
Input [4]: [shardId#6608407, worklistShardItemId#6608919L, quantityAfterProdPlantOptimization#6608920, qty#6608921]
Arguments: [worklistShardItemId#6608919L ASC NULLS FIRST], false, 0
(19) Scan parquet
Output [38]: [orderProposalId#6609120L, orderProposalItemId#6609121, supplierGroup#6609122, supplier#6609123, plant#6609124, deliveryDateTime#6609125, subrange#6609126, supplyingPlant#6609127, productGroup#6609128, product#6609129, orderDateTime#6609130, availabilityDateTime#6609131, nextAvailabilityDateTime#6609132, sourceOfSupplyUuid#6609134, isFallbackOrderOnly#6609137, splitIndicator#6609139L, previousOrderProposal#6609140L, worklistShardItemId#6609143L, orderProposalItemGroupId#6609144, externalProductId#6609145, externalPlantId#6609146, logisticUnits#6609147, orderQuantityBaseUom#6609148, orderQuantityBaseUomUuid#6609149, minimumOrderQuantity#6609150, constraintLabels#6609151, constraintOperators#6609152, constraintValues#6609153, netPriceAmount#6609156, netPriceCurrencyCode#6609157, netPriceQuantity#6609158, netPriceQuantityUom#6609159, netPriceQuantityUomUuid#6609160, measurements#6609161, originalReplenishmentRunId#6609162L, optimizationGroups#6609163, shardId#6609164, sequenceId#6609142]
Batched: true
Location: PreparedDeltaFileIndex [hdlfs://dac252a8-bd1b-4f30-995e-f6d4a08836d2.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-qty-opt-service/internal/prod-plant-snapshot/10000002290]
PartitionFilters: [isnotnull(shardId#6609164), isnotnull(sequenceId#6609142), (shardId#6609164 = 0_1_10000002290), (sequenceId#6609142 = 3)]
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#6609120L, orderProposalItemId#6609121, supplierGroup#6609122, supplier#6609123, plant#6609124, deliveryDateTime#6609125, subrange#6609126, supplyingPlant#6609127, productGroup#6609128, product#6609129, orderDateTime#6609130, availabilityDateTime#6609131, nextAvailabilityDateTime#6609132, sourceOfSupplyUuid#6609134, isFallbackOrderOnly#6609137, splitIndicator#6609139L, previousOrderProposal#6609140L, worklistShardItemId#6609143L, orderProposalItemGroupId#6609144, externalProductId#6609145, externalPlantId#6609146, logisticUnits#6609147, orderQuantityBaseUom#6609148, orderQuantityBaseUomUuid#6609149, minimumOrderQuantity#6609150, constraintLabels#6609151, constraintOperators#6609152, constraintValues#6609153, netPriceAmount#6609156, netPriceCurrencyCode#6609157, netPriceQuantity#6609158, netPriceQuantityUom#6609159, netPriceQuantityUomUuid#6609160, measurements#6609161, originalReplenishmentRunId#6609162L, optimizationGroups#6609163, shardId#6609164, sequenceId#6609142]
(21) Filter [codegen id : 3]
Input [38]: [orderProposalId#6609120L, orderProposalItemId#6609121, supplierGroup#6609122, supplier#6609123, plant#6609124, deliveryDateTime#6609125, subrange#6609126, supplyingPlant#6609127, productGroup#6609128, product#6609129, orderDateTime#6609130, availabilityDateTime#6609131, nextAvailabilityDateTime#6609132, sourceOfSupplyUuid#6609134, isFallbackOrderOnly#6609137, splitIndicator#6609139L, previousOrderProposal#6609140L, worklistShardItemId#6609143L, orderProposalItemGroupId#6609144, externalProductId#6609145, externalPlantId#6609146, logisticUnits#6609147, orderQuantityBaseUom#6609148, orderQuantityBaseUomUuid#6609149, minimumOrderQuantity#6609150, constraintLabels#6609151, constraintOperators#6609152, constraintValues#6609153, netPriceAmount#6609156, netPriceCurrencyCode#6609157, netPriceQuantity#6609158, netPriceQuantityUom#6609159, netPriceQuantityUomUuid#6609160, measurements#6609161, originalReplenishmentRunId#6609162L, optimizationGroups#6609163, shardId#6609164, sequenceId#6609142]
Condition : isnotnull(worklistShardItemId#6609143L)
(22) Project [codegen id : 3]
Output [36]: [orderProposalId#6609120L, orderProposalItemId#6609121, supplierGroup#6609122, supplier#6609123, plant#6609124, deliveryDateTime#6609125, subrange#6609126, supplyingPlant#6609127, productGroup#6609128, product#6609129, orderDateTime#6609130, availabilityDateTime#6609131, nextAvailabilityDateTime#6609132, sourceOfSupplyUuid#6609134, isFallbackOrderOnly#6609137, splitIndicator#6609139L, previousOrderProposal#6609140L, worklistShardItemId#6609143L, orderProposalItemGroupId#6609144, externalProductId#6609145, externalPlantId#6609146, logisticUnits#6609147, orderQuantityBaseUom#6609148, orderQuantityBaseUomUuid#6609149, minimumOrderQuantity#6609150, constraintLabels#6609151, constraintOperators#6609152, constraintValues#6609153, netPriceAmount#6609156, netPriceCurrencyCode#6609157, netPriceQuantity#6609158, netPriceQuantityUom#6609159, netPriceQuantityUomUuid#6609160, measurements#6609161, originalReplenishmentRunId#6609162L, optimizationGroups#6609163]
Input [38]: [orderProposalId#6609120L, orderProposalItemId#6609121, supplierGroup#6609122, supplier#6609123, plant#6609124, deliveryDateTime#6609125, subrange#6609126, supplyingPlant#6609127, productGroup#6609128, product#6609129, orderDateTime#6609130, availabilityDateTime#6609131, nextAvailabilityDateTime#6609132, sourceOfSupplyUuid#6609134, isFallbackOrderOnly#6609137, splitIndicator#6609139L, previousOrderProposal#6609140L, worklistShardItemId#6609143L, orderProposalItemGroupId#6609144, externalProductId#6609145, externalPlantId#6609146, logisticUnits#6609147, orderQuantityBaseUom#6609148, orderQuantityBaseUomUuid#6609149, minimumOrderQuantity#6609150, constraintLabels#6609151, constraintOperators#6609152, constraintValues#6609153, netPriceAmount#6609156, netPriceCurrencyCode#6609157, netPriceQuantity#6609158, netPriceQuantityUom#6609159, netPriceQuantityUomUuid#6609160, measurements#6609161, originalReplenishmentRunId#6609162L, optimizationGroups#6609163, shardId#6609164, sequenceId#6609142]
(23) Exchange
Input [36]: [orderProposalId#6609120L, orderProposalItemId#6609121, supplierGroup#6609122, supplier#6609123, plant#6609124, deliveryDateTime#6609125, subrange#6609126, supplyingPlant#6609127, productGroup#6609128, product#6609129, orderDateTime#6609130, availabilityDateTime#6609131, nextAvailabilityDateTime#6609132, sourceOfSupplyUuid#6609134, isFallbackOrderOnly#6609137, splitIndicator#6609139L, previousOrderProposal#6609140L, worklistShardItemId#6609143L, orderProposalItemGroupId#6609144, externalProductId#6609145, externalPlantId#6609146, logisticUnits#6609147, orderQuantityBaseUom#6609148, orderQuantityBaseUomUuid#6609149, minimumOrderQuantity#6609150, constraintLabels#6609151, constraintOperators#6609152, constraintValues#6609153, netPriceAmount#6609156, netPriceCurrencyCode#6609157, netPriceQuantity#6609158, netPriceQuantityUom#6609159, netPriceQuantityUomUuid#6609160, measurements#6609161, originalReplenishmentRunId#6609162L, optimizationGroups#6609163]
Arguments: hashpartitioning(worklistShardItemId#6609143L, 30), REPARTITION_BY_NUM, [plan_id=3473532]
(24) Project [codegen id : 4]
Output [36]: [worklistShardItemId#6609143L, orderProposalId#6609120L, orderProposalItemId#6609121, orderProposalItemGroupId#6609144, originalReplenishmentRunId#6609162L, splitIndicator#6609139L, previousOrderProposal#6609140L, sourceOfSupplyUuid#6609134, supplierGroup#6609122, supplier#6609123, subrange#6609126, product#6609129, plant#6609124, orderDateTime#6609130, deliveryDateTime#6609125, availabilityDateTime#6609131, nextAvailabilityDateTime#6609132, isFallbackOrderOnly#6609137, orderQuantityBaseUom#6609148, orderQuantityBaseUomUuid#6609149, netPriceQuantity#6609158, netPriceQuantityUom#6609159, netPriceQuantityUomUuid#6609160, netPriceAmount#6609156, netPriceCurrencyCode#6609157, measurements#6609161, minimumOrderQuantity#6609150, constraintLabels#6609151, constraintOperators#6609152, constraintValues#6609153, logisticUnits#6609147, optimizationGroups#6609163, externalProductId#6609145, externalPlantId#6609146, supplyingPlant#6609127, productGroup#6609128]
Input [36]: [orderProposalId#6609120L, orderProposalItemId#6609121, supplierGroup#6609122, supplier#6609123, plant#6609124, deliveryDateTime#6609125, subrange#6609126, supplyingPlant#6609127, productGroup#6609128, product#6609129, orderDateTime#6609130, availabilityDateTime#6609131, nextAvailabilityDateTime#6609132, sourceOfSupplyUuid#6609134, isFallbackOrderOnly#6609137, splitIndicator#6609139L, previousOrderProposal#6609140L, worklistShardItemId#6609143L, orderProposalItemGroupId#6609144, externalProductId#6609145, externalPlantId#6609146, logisticUnits#6609147, orderQuantityBaseUom#6609148, orderQuantityBaseUomUuid#6609149, minimumOrderQuantity#6609150, constraintLabels#6609151, constraintOperators#6609152, constraintValues#6609153, netPriceAmount#6609156, netPriceCurrencyCode#6609157, netPriceQuantity#6609158, netPriceQuantityUom#6609159, netPriceQuantityUomUuid#6609160, measurements#6609161, originalReplenishmentRunId#6609162L, optimizationGroups#6609163]
(25) Sort [codegen id : 4]
Input [36]: [worklistShardItemId#6609143L, orderProposalId#6609120L, orderProposalItemId#6609121, orderProposalItemGroupId#6609144, originalReplenishmentRunId#6609162L, splitIndicator#6609139L, previousOrderProposal#6609140L, sourceOfSupplyUuid#6609134, supplierGroup#6609122, supplier#6609123, subrange#6609126, product#6609129, plant#6609124, orderDateTime#6609130, deliveryDateTime#6609125, availabilityDateTime#6609131, nextAvailabilityDateTime#6609132, isFallbackOrderOnly#6609137, orderQuantityBaseUom#6609148, orderQuantityBaseUomUuid#6609149, netPriceQuantity#6609158, netPriceQuantityUom#6609159, netPriceQuantityUomUuid#6609160, netPriceAmount#6609156, netPriceCurrencyCode#6609157, measurements#6609161, minimumOrderQuantity#6609150, constraintLabels#6609151, constraintOperators#6609152, constraintValues#6609153, logisticUnits#6609147, optimizationGroups#6609163, externalProductId#6609145, externalPlantId#6609146, supplyingPlant#6609127, productGroup#6609128]
Arguments: [worklistShardItemId#6609143L ASC NULLS FIRST], false, 0
(26) SortMergeJoin [codegen id : 5]
Left keys [1]: [worklistShardItemId#6608919L]
Right keys [1]: [worklistShardItemId#6609143L]
Join type: LeftOuter
Join condition: (shardId#6608407 = 0_1_10000002290)
(27) Project [codegen id : 5]
Output [39]: [shardId#6608407, worklistShardItemId#6608919L, quantityAfterProdPlantOptimization#6608920, qty#6608921, orderProposalId#6609120L, originalReplenishmentRunId#6609162L, supplierGroup#6609122, supplier#6609123, supplyingPlant#6609127, productGroup#6609128, product#6609129, plant#6609124, subrange#6609126, orderDateTime#6609130, deliveryDateTime#6609125, availabilityDateTime#6609131, nextAvailabilityDateTime#6609132, constraintValues#6609153, constraintOperators#6609152, constraintLabels#6609151, logisticUnits#6609147, orderQuantityBaseUom#6609148, orderQuantityBaseUomUuid#6609149, splitIndicator#6609139L, netPriceAmount#6609156, netPriceCurrencyCode#6609157, netPriceQuantity#6609158, netPriceQuantityUom#6609159, netPriceQuantityUomUuid#6609160, sourceOfSupplyUuid#6609134, minimumOrderQuantity#6609150, orderProposalItemId#6609121, orderProposalItemGroupId#6609144, optimizationGroups#6609163, measurements#6609161, externalProductId#6609145, externalPlantId#6609146, previousOrderProposal#6609140L, isFallbackOrderOnly#6609137]
Input [40]: [shardId#6608407, worklistShardItemId#6608919L, quantityAfterProdPlantOptimization#6608920, qty#6608921, worklistShardItemId#6609143L, orderProposalId#6609120L, orderProposalItemId#6609121, orderProposalItemGroupId#6609144, originalReplenishmentRunId#6609162L, splitIndicator#6609139L, previousOrderProposal#6609140L, sourceOfSupplyUuid#6609134, supplierGroup#6609122, supplier#6609123, subrange#6609126, product#6609129, plant#6609124, orderDateTime#6609130, deliveryDateTime#6609125, availabilityDateTime#6609131, nextAvailabilityDateTime#6609132, isFallbackOrderOnly#6609137, orderQuantityBaseUom#6609148, orderQuantityBaseUomUuid#6609149, netPriceQuantity#6609158, netPriceQuantityUom#6609159, netPriceQuantityUomUuid#6609160, netPriceAmount#6609156, netPriceCurrencyCode#6609157, measurements#6609161, minimumOrderQuantity#6609150, constraintLabels#6609151, constraintOperators#6609152, constraintValues#6609153, logisticUnits#6609147, optimizationGroups#6609163, externalProductId#6609145, externalPlantId#6609146, supplyingPlant#6609127, productGroup#6609128]
(28) Exchange
Input [39]: [shardId#6608407, worklistShardItemId#6608919L, quantityAfterProdPlantOptimization#6608920, qty#6608921, orderProposalId#6609120L, originalReplenishmentRunId#6609162L, supplierGroup#6609122, supplier#6609123, supplyingPlant#6609127, productGroup#6609128, product#6609129, plant#6609124, subrange#6609126, orderDateTime#6609130, deliveryDateTime#6609125, availabilityDateTime#6609131, nextAvailabilityDateTime#6609132, constraintValues#6609153, constraintOperators#6609152, constraintLabels#6609151, logisticUnits#6609147, orderQuantityBaseUom#6609148, orderQuantityBaseUomUuid#6609149, splitIndicator#6609139L, netPriceAmount#6609156, netPriceCurrencyCode#6609157, netPriceQuantity#6609158, netPriceQuantityUom#6609159, netPriceQuantityUomUuid#6609160, sourceOfSupplyUuid#6609134, minimumOrderQuantity#6609150, orderProposalItemId#6609121, orderProposalItemGroupId#6609144, optimizationGroups#6609163, measurements#6609161, externalProductId#6609145, externalPlantId#6609146, previousOrderProposal#6609140L, isFallbackOrderOnly#6609137]
Arguments: hashpartitioning(shardId#6608407, worklistShardItemId#6608919L, 30), ENSURE_REQUIREMENTS, [plan_id=3473541]
(29) Sort [codegen id : 6]
Input [39]: [shardId#6608407, worklistShardItemId#6608919L, quantityAfterProdPlantOptimization#6608920, qty#6608921, orderProposalId#6609120L, originalReplenishmentRunId#6609162L, supplierGroup#6609122, supplier#6609123, supplyingPlant#6609127, productGroup#6609128, product#6609129, plant#6609124, subrange#6609126, orderDateTime#6609130, deliveryDateTime#6609125, availabilityDateTime#6609131, nextAvailabilityDateTime#6609132, constraintValues#6609153, constraintOperators#6609152, constraintLabels#6609151, logisticUnits#6609147, orderQuantityBaseUom#6609148, orderQuantityBaseUomUuid#6609149, splitIndicator#6609139L, netPriceAmount#6609156, netPriceCurrencyCode#6609157, netPriceQuantity#6609158, netPriceQuantityUom#6609159, netPriceQuantityUomUuid#6609160, sourceOfSupplyUuid#6609134, minimumOrderQuantity#6609150, orderProposalItemId#6609121, orderProposalItemGroupId#6609144, optimizationGroups#6609163, measurements#6609161, externalProductId#6609145, externalPlantId#6609146, previousOrderProposal#6609140L, isFallbackOrderOnly#6609137]
Arguments: [shardId#6608407 ASC NULLS FIRST, worklistShardItemId#6608919L ASC NULLS FIRST], false, 0
(30) Scan ExistingRDD [codegen id : 7]
Output [6]: [shardId#6609640, worklistShardItemId#6609641L, qty#6609642, demandChannel#6609643, demandStream#6609644, kpis#6609645]
Arguments: [shardId#6609640, worklistShardItemId#6609641L, qty#6609642, demandChannel#6609643, demandStream#6609644, kpis#6609645], MapPartitionsRDD[467892] at start at FileStorageAdapterImpl.java:598, ExistingRDD, UnknownPartitioning(0)
(31) Filter [codegen id : 7]
Input [6]: [shardId#6609640, worklistShardItemId#6609641L, qty#6609642, demandChannel#6609643, demandStream#6609644, kpis#6609645]
Condition : (((isnull(qty#6609642) AND isnull(demandChannel#6609643)) AND isnull(demandStream#6609644)) AND (isnotnull(shardId#6609640) AND isnotnull(worklistShardItemId#6609641L)))
(32) Project [codegen id : 7]
Output [3]: [shardId#6609640, worklistShardItemId#6609641L, coalesce(kpis#6609645, []) AS prodLocSpecificKpis#6609646]
Input [6]: [shardId#6609640, worklistShardItemId#6609641L, qty#6609642, demandChannel#6609643, demandStream#6609644, kpis#6609645]
(33) Exchange
Input [3]: [shardId#6609640, worklistShardItemId#6609641L, prodLocSpecificKpis#6609646]
Arguments: hashpartitioning(shardId#6609640, worklistShardItemId#6609641L, 30), ENSURE_REQUIREMENTS, [plan_id=3473547]
(34) Sort [codegen id : 8]
Input [3]: [shardId#6609640, worklistShardItemId#6609641L, prodLocSpecificKpis#6609646]
Arguments: [shardId#6609640 ASC NULLS FIRST, worklistShardItemId#6609641L ASC NULLS FIRST], false, 0
(35) SortMergeJoin [codegen id : 9]
Left keys [2]: [shardId#6608407, worklistShardItemId#6608919L]
Right keys [2]: [shardId#6609640, worklistShardItemId#6609641L]
Join type: LeftOuter
Join condition: None
(36) Project [codegen id : 9]
Output [40]: [shardId#6608407, worklistShardItemId#6608919L, quantityAfterProdPlantOptimization#6608920, qty#6608921, orderProposalId#6609120L, originalReplenishmentRunId#6609162L, supplierGroup#6609122, supplier#6609123, supplyingPlant#6609127, productGroup#6609128, product#6609129, plant#6609124, subrange#6609126, orderDateTime#6609130, deliveryDateTime#6609125, availabilityDateTime#6609131, nextAvailabilityDateTime#6609132, constraintValues#6609153, constraintOperators#6609152, constraintLabels#6609151, logisticUnits#6609147, orderQuantityBaseUom#6609148, orderQuantityBaseUomUuid#6609149, splitIndicator#6609139L, netPriceAmount#6609156, netPriceCurrencyCode#6609157, netPriceQuantity#6609158, netPriceQuantityUom#6609159, netPriceQuantityUomUuid#6609160, sourceOfSupplyUuid#6609134, minimumOrderQuantity#6609150, orderProposalItemId#6609121, orderProposalItemGroupId#6609144, optimizationGroups#6609163, measurements#6609161, externalProductId#6609145, externalPlantId#6609146, previousOrderProposal#6609140L, isFallbackOrderOnly#6609137, coalesce(prodLocSpecificKpis#6609646, []) AS prodLocSpecificKpis#6609647]
Input [42]: [shardId#6608407, worklistShardItemId#6608919L, quantityAfterProdPlantOptimization#6608920, qty#6608921, orderProposalId#6609120L, originalReplenishmentRunId#6609162L, supplierGroup#6609122, supplier#6609123, supplyingPlant#6609127, productGroup#6609128, product#6609129, plant#6609124, subrange#6609126, orderDateTime#6609130, deliveryDateTime#6609125, availabilityDateTime#6609131, nextAvailabilityDateTime#6609132, constraintValues#6609153, constraintOperators#6609152, constraintLabels#6609151, logisticUnits#6609147, orderQuantityBaseUom#6609148, orderQuantityBaseUomUuid#6609149, splitIndicator#6609139L, netPriceAmount#6609156, netPriceCurrencyCode#6609157, netPriceQuantity#6609158, netPriceQuantityUom#6609159, netPriceQuantityUomUuid#6609160, sourceOfSupplyUuid#6609134, minimumOrderQuantity#6609150, orderProposalItemId#6609121, orderProposalItemGroupId#6609144, optimizationGroups#6609163, measurements#6609161, externalProductId#6609145, externalPlantId#6609146, previousOrderProposal#6609140L, isFallbackOrderOnly#6609137, shardId#6609640, worklistShardItemId#6609641L, prodLocSpecificKpis#6609646]
(37) Scan ExistingRDD [codegen id : 10]
Output [6]: [shardId#6609656, worklistShardItemId#6609657L, qty#6609658, demandChannel#6609659, demandStream#6609660, kpis#6609661]
Arguments: [shardId#6609656, worklistShardItemId#6609657L, qty#6609658, demandChannel#6609659, demandStream#6609660, kpis#6609661], MapPartitionsRDD[467892] at start at FileStorageAdapterImpl.java:598, ExistingRDD, UnknownPartitioning(0)
(38) Filter [codegen id : 10]
Input [6]: [shardId#6609656, worklistShardItemId#6609657L, qty#6609658, demandChannel#6609659, demandStream#6609660, kpis#6609661]
Condition : ((((isnull(qty#6609658) AND isnotnull(demandChannel#6609659)) AND isnotnull(demandStream#6609660)) AND (size(kpis#6609661, true) > 0)) AND (isnotnull(shardId#6609656) AND isnotnull(worklistShardItemId#6609657L)))
(39) Project [codegen id : 10]
Output [5]: [shardId#6609656, worklistShardItemId#6609657L, demandChannel#6609659, demandStream#6609660, kpis#6609661]
Input [6]: [shardId#6609656, worklistShardItemId#6609657L, qty#6609658, demandChannel#6609659, demandStream#6609660, kpis#6609661]
(40) ObjectHashAggregate
Input [5]: [shardId#6609656, worklistShardItemId#6609657L, demandChannel#6609659, demandStream#6609660, kpis#6609661]
Keys [2]: [shardId#6609656, worklistShardItemId#6609657L]
Functions [1]: [partial_collect_list(struct(demandChannel, demandChannel#6609659, demandStream, demandStream#6609660, kpis, kpis#6609661), 0, 0)]
Aggregate Attributes [1]: [buf#6609836]
Results [3]: [shardId#6609656, worklistShardItemId#6609657L, buf#6609837]
(41) Exchange
Input [3]: [shardId#6609656, worklistShardItemId#6609657L, buf#6609837]
Arguments: hashpartitioning(shardId#6609656, worklistShardItemId#6609657L, 30), ENSURE_REQUIREMENTS, [plan_id=3473558]
(42) ObjectHashAggregate
Input [3]: [shardId#6609656, worklistShardItemId#6609657L, buf#6609837]
Keys [2]: [shardId#6609656, worklistShardItemId#6609657L]
Functions [1]: [collect_list(struct(demandChannel, demandChannel#6609659, demandStream, demandStream#6609660, kpis, kpis#6609661), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(demandChannel, demandChannel#6609659, demandStream, demandStream#6609660, kpis, kpis#6609661), 0, 0)#6609655]
Results [3]: [shardId#6609656, worklistShardItemId#6609657L, collect_list(struct(demandChannel, demandChannel#6609659, demandStream, demandStream#6609660, kpis, kpis#6609661), 0, 0)#6609655 AS channelStreamSpecificKpis#6609648]
(43) Sort [codegen id : 11]
Input [3]: [shardId#6609656, worklistShardItemId#6609657L, channelStreamSpecificKpis#6609648]
Arguments: [shardId#6609656 ASC NULLS FIRST, worklistShardItemId#6609657L ASC NULLS FIRST], false, 0
(44) SortMergeJoin [codegen id : 12]
Left keys [2]: [shardId#6608407, worklistShardItemId#6608919L]
Right keys [2]: [shardId#6609656, worklistShardItemId#6609657L]
Join type: LeftOuter
Join condition: None
(45) Project [codegen id : 12]
Output [41]: [shardId#6608407, worklistShardItemId#6608919L, quantityAfterProdPlantOptimization#6608920, qty#6608921, orderProposalId#6609120L, originalReplenishmentRunId#6609162L, supplierGroup#6609122, supplier#6609123, supplyingPlant#6609127, productGroup#6609128, product#6609129, plant#6609124, subrange#6609126, orderDateTime#6609130, deliveryDateTime#6609125, availabilityDateTime#6609131, nextAvailabilityDateTime#6609132, constraintValues#6609153, constraintOperators#6609152, constraintLabels#6609151, logisticUnits#6609147, orderQuantityBaseUom#6609148, orderQuantityBaseUomUuid#6609149, splitIndicator#6609139L, netPriceAmount#6609156, netPriceCurrencyCode#6609157, netPriceQuantity#6609158, netPriceQuantityUom#6609159, netPriceQuantityUomUuid#6609160, sourceOfSupplyUuid#6609134, minimumOrderQuantity#6609150, orderProposalItemId#6609121, orderProposalItemGroupId#6609144, optimizationGroups#6609163, measurements#6609161, externalProductId#6609145, externalPlantId#6609146, previousOrderProposal#6609140L, isFallbackOrderOnly#6609137, prodLocSpecificKpis#6609647, coalesce(channelStreamSpecificKpis#6609648, []) AS channelStreamSpecificKpis#6609662]
Input [43]: [shardId#6608407, worklistShardItemId#6608919L, quantityAfterProdPlantOptimization#6608920, qty#6608921, orderProposalId#6609120L, originalReplenishmentRunId#6609162L, supplierGroup#6609122, supplier#6609123, supplyingPlant#6609127, productGroup#6609128, product#6609129, plant#6609124, subrange#6609126, orderDateTime#6609130, deliveryDateTime#6609125, availabilityDateTime#6609131, nextAvailabilityDateTime#6609132, constraintValues#6609153, constraintOperators#6609152, constraintLabels#6609151, logisticUnits#6609147, orderQuantityBaseUom#6609148, orderQuantityBaseUomUuid#6609149, splitIndicator#6609139L, netPriceAmount#6609156, netPriceCurrencyCode#6609157, netPriceQuantity#6609158, netPriceQuantityUom#6609159, netPriceQuantityUomUuid#6609160, sourceOfSupplyUuid#6609134, minimumOrderQuantity#6609150, orderProposalItemId#6609121, orderProposalItemGroupId#6609144, optimizationGroups#6609163, measurements#6609161, externalProductId#6609145, externalPlantId#6609146, previousOrderProposal#6609140L, isFallbackOrderOnly#6609137, prodLocSpecificKpis#6609647, shardId#6609656, worklistShardItemId#6609657L, channelStreamSpecificKpis#6609648]
(46) Scan ExistingRDD [codegen id : 13]
Output [6]: [shardId#6609669, worklistShardItemId#6609670L, qty#6609671, demandChannel#6609672, demandStream#6609673, kpis#6609674]
Arguments: [shardId#6609669, worklistShardItemId#6609670L, qty#6609671, demandChannel#6609672, demandStream#6609673, kpis#6609674], MapPartitionsRDD[467892] at start at FileStorageAdapterImpl.java:598, ExistingRDD, UnknownPartitioning(0)
(47) Filter [codegen id : 13]
Input [6]: [shardId#6609669, worklistShardItemId#6609670L, qty#6609671, demandChannel#6609672, demandStream#6609673, kpis#6609674]
Condition : ((isnotnull(qty#6609671) AND isnotnull(kpis#6609674)) AND (isnotnull(shardId#6609669) AND isnotnull(worklistShardItemId#6609670L)))
(48) Project [codegen id : 13]
Output [4]: [shardId#6609669, worklistShardItemId#6609670L, qty#6609671, kpis#6609674]
Input [6]: [shardId#6609669, worklistShardItemId#6609670L, qty#6609671, demandChannel#6609672, demandStream#6609673, kpis#6609674]
(49) ObjectHashAggregate
Input [4]: [shardId#6609669, worklistShardItemId#6609670L, qty#6609671, kpis#6609674]
Keys [2]: [shardId#6609669, worklistShardItemId#6609670L]
Functions [1]: [partial_collect_list(struct(qty, qty#6609671, kpis, kpis#6609674), 0, 0)]
Aggregate Attributes [1]: [buf#6609838]
Results [3]: [shardId#6609669, worklistShardItemId#6609670L, buf#6609839]
(50) Exchange
Input [3]: [shardId#6609669, worklistShardItemId#6609670L, buf#6609839]
Arguments: hashpartitioning(shardId#6609669, worklistShardItemId#6609670L, 30), ENSURE_REQUIREMENTS, [plan_id=3473570]
(51) ObjectHashAggregate
Input [3]: [shardId#6609669, worklistShardItemId#6609670L, buf#6609839]
Keys [2]: [shardId#6609669, worklistShardItemId#6609670L]
Functions [1]: [collect_list(struct(qty, qty#6609671, kpis, kpis#6609674), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(qty, qty#6609671, kpis, kpis#6609674), 0, 0)#6609668]
Results [3]: [shardId#6609669, worklistShardItemId#6609670L, map_from_entries(collect_list(struct(qty, qty#6609671, kpis, kpis#6609674), 0, 0)#6609668) AS quantityKpis#6609663]
(52) Sort [codegen id : 14]
Input [3]: [shardId#6609669, worklistShardItemId#6609670L, quantityKpis#6609663]
Arguments: [shardId#6609669 ASC NULLS FIRST, worklistShardItemId#6609670L ASC NULLS FIRST], false, 0
(53) SortMergeJoin [codegen id : 15]
Left keys [2]: [shardId#6608407, worklistShardItemId#6608919L]
Right keys [2]: [shardId#6609669, worklistShardItemId#6609670L]
Join type: LeftOuter
Join condition: None
(54) Project [codegen id : 15]
Output [42]: [shardId#6608407, worklistShardItemId#6608919L, quantityAfterProdPlantOptimization#6608920, qty#6608921, orderProposalId#6609120L, originalReplenishmentRunId#6609162L, supplierGroup#6609122, supplier#6609123, supplyingPlant#6609127, productGroup#6609128, product#6609129, plant#6609124, subrange#6609126, orderDateTime#6609130, deliveryDateTime#6609125, availabilityDateTime#6609131, nextAvailabilityDateTime#6609132, constraintValues#6609153, constraintOperators#6609152, constraintLabels#6609151, logisticUnits#6609147, orderQuantityBaseUom#6609148, orderQuantityBaseUomUuid#6609149, splitIndicator#6609139L, netPriceAmount#6609156, netPriceCurrencyCode#6609157, netPriceQuantity#6609158, netPriceQuantityUom#6609159, netPriceQuantityUomUuid#6609160, sourceOfSupplyUuid#6609134, minimumOrderQuantity#6609150, orderProposalItemId#6609121, orderProposalItemGroupId#6609144, optimizationGroups#6609163, measurements#6609161, externalProductId#6609145, externalPlantId#6609146, previousOrderProposal#6609140L, isFallbackOrderOnly#6609137, prodLocSpecificKpis#6609647, channelStreamSpecificKpis#6609662, coalesce(quantityKpis#6609663, map(keys: [], values: [])) AS quantityKpis#6609675]
Input [44]: [shardId#6608407, worklistShardItemId#6608919L, quantityAfterProdPlantOptimization#6608920, qty#6608921, orderProposalId#6609120L, originalReplenishmentRunId#6609162L, supplierGroup#6609122, supplier#6609123, supplyingPlant#6609127, productGroup#6609128, product#6609129, plant#6609124, subrange#6609126, orderDateTime#6609130, deliveryDateTime#6609125, availabilityDateTime#6609131, nextAvailabilityDateTime#6609132, constraintValues#6609153, constraintOperators#6609152, constraintLabels#6609151, logisticUnits#6609147, orderQuantityBaseUom#6609148, orderQuantityBaseUomUuid#6609149, splitIndicator#6609139L, netPriceAmount#6609156, netPriceCurrencyCode#6609157, netPriceQuantity#6609158, netPriceQuantityUom#6609159, netPriceQuantityUomUuid#6609160, sourceOfSupplyUuid#6609134, minimumOrderQuantity#6609150, orderProposalItemId#6609121, orderProposalItemGroupId#6609144, optimizationGroups#6609163, measurements#6609161, externalProductId#6609145, externalPlantId#6609146, previousOrderProposal#6609140L, isFallbackOrderOnly#6609137, prodLocSpecificKpis#6609647, channelStreamSpecificKpis#6609662, shardId#6609669, worklistShardItemId#6609670L, quantityKpis#6609663]
(55) Filter [codegen id : 1]
Input [39]: [availabilityDateTime#6609097, channelStreamSpecificKpis#6609662, constraintLabels#6609109, constraintOperators#6609110, constraintValues#6609112, deliveryDateTime#6609096, isFallbackOrderOnly#6609099, logisticUnits#6609114, measurements#6609107, minimumOrderQuantity#6609108, netPriceAmount#6609105, netPriceCurrencyCode#6609106, netPriceQuantity#6609102, netPriceQuantityUom#6609103, netPriceQuantityUomUuid#6609104, nextAvailabilityDateTime#6609098, optimizationGroups#6609115, orderDateTime#6609095, orderProposalId#6609077L, orderProposalItemGroupId#6609079, orderProposalItemId#6609078, orderQuantityBaseUom#6609100, orderQuantityBaseUomUuid#6609101, originalReplenishmentRunId#6609080L, plant#6609091, previousOrderProposal#6609083L, prodLocSpecificKpis#6609647, product#6609090, productGroup#6609119, qty#6608921, quantityAfterProdPlantOptimization#6608920, quantityKpis#6609675, shardId#6608407, sourceOfSupplyUuid#6609086, splitIndicator#6609082L, subrange#6609089, supplier#6609088, supplierGroup#6609087, supplyingPlant#6609118]
Condition : NOT (isFallbackOrderOnly#6609099 <=> true)
(56) Project [codegen id : 1]
Output [36]: [shardId#6608407, quantityAfterProdPlantOptimization#6608920, qty#6608921, orderProposalId#6609077L, originalReplenishmentRunId#6609080L, supplierGroup#6609087, supplier#6609088, supplyingPlant#6609118, productGroup#6609119, product#6609090, plant#6609091, subrange#6609089, orderDateTime#6609095, deliveryDateTime#6609096, availabilityDateTime#6609097, nextAvailabilityDateTime#6609098, logisticUnits#6609114, orderQuantityBaseUom#6609100, orderQuantityBaseUomUuid#6609101, splitIndicator#6609082L, netPriceAmount#6609105, netPriceCurrencyCode#6609106, netPriceQuantity#6609102, netPriceQuantityUom#6609103, netPriceQuantityUomUuid#6609104, sourceOfSupplyUuid#6609086, minimumOrderQuantity#6609108, orderProposalItemId#6609078, orderProposalItemGroupId#6609079, optimizationGroups#6609115, measurements#6609107, previousOrderProposal#6609083L, prodLocSpecificKpis#6609647, channelStreamSpecificKpis#6609662, quantityKpis#6609675, arrays_zip(constraintLabels#6609109, constraintOperators#6609110, constraintValues#6609112, constraintLabels, constraintOperators, constraintValues) AS constraintStructArray#6610089]
Input [39]: [availabilityDateTime#6609097, channelStreamSpecificKpis#6609662, constraintLabels#6609109, constraintOperators#6609110, constraintValues#6609112, deliveryDateTime#6609096, isFallbackOrderOnly#6609099, logisticUnits#6609114, measurements#6609107, minimumOrderQuantity#6609108, netPriceAmount#6609105, netPriceCurrencyCode#6609106, netPriceQuantity#6609102, netPriceQuantityUom#6609103, netPriceQuantityUomUuid#6609104, nextAvailabilityDateTime#6609098, optimizationGroups#6609115, orderDateTime#6609095, orderProposalId#6609077L, orderProposalItemGroupId#6609079, orderProposalItemId#6609078, orderQuantityBaseUom#6609100, orderQuantityBaseUomUuid#6609101, originalReplenishmentRunId#6609080L, plant#6609091, previousOrderProposal#6609083L, prodLocSpecificKpis#6609647, product#6609090, productGroup#6609119, qty#6608921, quantityAfterProdPlantOptimization#6608920, quantityKpis#6609675, shardId#6608407, sourceOfSupplyUuid#6609086, splitIndicator#6609082L, subrange#6609089, supplier#6609088, supplierGroup#6609087, supplyingPlant#6609118]
(57) Project
Output [37]: [shardId#6608407, qty#6608921, orderProposalId#6609077L, originalReplenishmentRunId#6609080L, supplierGroup#6609087, supplier#6609088, supplyingPlant#6609118, productGroup#6609119, product#6609090, plant#6609091, subrange#6609089, orderDateTime#6609095, deliveryDateTime#6609096, availabilityDateTime#6609097, nextAvailabilityDateTime#6609098, logisticUnits#6609114, orderQuantityBaseUom#6609100, orderQuantityBaseUomUuid#6609101, splitIndicator#6609082L, netPriceAmount#6609105, netPriceCurrencyCode#6609106, netPriceQuantity#6609102, netPriceQuantityUom#6609103, netPriceQuantityUomUuid#6609104, sourceOfSupplyUuid#6609086, orderProposalItemId#6609078, orderProposalItemGroupId#6609079, optimizationGroups#6609115, measurements#6609107, previousOrderProposal#6609083L, prodLocSpecificKpis#6609647, channelStreamSpecificKpis#6609662, quantityKpis#6609675, struct(minServiceLevel, array_min(filter(constraintStructArray#6610089, lambdafunction((lambda x_12791#6610096.constraintLabels = ServiceLevel), lambda x_12791#6610096, false)).constraintValues), minServiceLevelMinStock, null, maxServiceLevelEndOfListing, array_min(filter(constraintStructArray#6610089, lambdafunction((lambda x_12792#6610097.constraintLabels = ServiceLevelAtStartOfDelisting), lambda x_12792#6610097, false)).constraintValues), maxRoc, array_min(filter(constraintStructArray#6610089, lambdafunction((lambda x_12793#6610098.constraintLabels = RangeOfCoverage), lambda x_12793#6610098, false)).constraintValues), minimumOrderQuantity, minimumOrderQuantity#6609108, endOfListingDateTime, coalesce(filter(prodLocSpecificKpis#6609647, lambdafunction((lambda x_12794#6610099.label = NonListingStartTimestamp), lambda x_12794#6610099, false))[0].dateTime, 1970-01-01 00:00:00)) AS constraintBenchmark#6610095, CASE WHEN (qty#6608921 <=> quantityAfterProdPlantOptimization#6608920) THEN array(struct(isProposedCandidate, true, isProdlocOptimalCandidate, true, candidateOrderQuantity, coalesce((qty#6608921 * (cast(element_at(filter(logisticUnits#6609114, lambdafunction(lambda x_12795#6610167.isOrderUnit, lambda x_12795#6610167, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#6609114, lambdafunction(lambda x_12795#6610168.isOrderUnit, lambda x_12795#6610168, false)), 1, None, false).numerator as double))), qty#6608921), orderQuantityUom, coalesce(element_at(filter(logisticUnits#6609114, lambdafunction(lambda x_12795#6610169.isOrderUnit, lambda x_12795#6610169, false)), 1, None, false).uom, orderQuantityBaseUom#6609100), orderQuantityUomUuid, coalesce(element_at(filter(logisticUnits#6609114, lambdafunction(lambda x_12795#6610170.isOrderUnit, lambda x_12795#6610170, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#6609101), candidateOrderQuantityInBaseUnit, qty#6608921, orderQuantityBaseUom, orderQuantityBaseUom#6609100, orderQuantityBaseUomUuid, orderQuantityBaseUomUuid#6609101, candidateOrderQuantityInPreferredUnit, coalesce(array_min(transform(filter(logisticUnits#6609114, lambdafunction((lambda x_12797#6610171.isPreferred AND (((qty#6608921 * cast(lambda x_12797#6610171.denominator as double)) % cast(lambda x_12797#6610171.numerator as double)) = 0.0)), lambda x_12797#6610171, false)), lambdafunction(struct(inPreferredQuantity, ((qty#6608921 * cast(lambda x_12798#6610209.denominator as double)) / cast(lambda x_12798#6610209.numerator as double)), uom, lambda x_12798#6610209.uom, uomUuid, lambda x_12798#6610209.uomUuid), lambda x_12798#6610209, false))).inPreferredQuantity, coalesce((qty#6608921 * (cast(element_at(filter(logisticUnits#6609114, lambdafunction(lambda x_12796#6610172.isOrderUnit, lambda x_12796#6610172, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#6609114, lambdafunction(lambda x_12796#6610173.isOrderUnit, lambda x_12796#6610173, false)), 1, None, false).numerator as double))), qty#6608921)), orderQuantityPreferredUom, coalesce(array_min(transform(filter(logisticUnits#6609114, lambdafunction((lambda x_12797#6610174.isPreferred AND (((qty#6608921 * cast(lambda x_12797#6610174.denominator as double)) % cast(lambda x_12797#6610174.numerator as double)) = 0.0)), lambda x_12797#6610174, false)), lambdafunction(struct(inPreferredQuantity, ((qty#6608921 * cast(lambda x_12798#6610210.denominator as double)) / cast(lambda x_12798#6610210.numerator as double)), uom, lambda x_12798#6610210.uom, uomUuid, lambda x_12798#6610210.uomUuid), lambda x_12798#6610210, false))).uom, coalesce(element_at(filter(logisticUnits#6609114, lambdafunction(lambda x_12796#6610175.isOrderUnit, lambda x_12796#6610175, false)), 1, None, false).uom, orderQuantityBaseUom#6609100)), orderQuantityPreferredUomUuid, coalesce(array_min(transform(filter(logisticUnits#6609114, lambdafunction((lambda x_12797#6610176.isPreferred AND (((qty#6608921 * cast(lambda x_12797#6610176.denominator as double)) % cast(lambda x_12797#6610176.numerator as double)) = 0.0)), lambda x_12797#6610176, false)), lambdafunction(struct(inPreferredQuantity, ((qty#6608921 * cast(lambda x_12798#6610211.denominator as double)) / cast(lambda x_12798#6610211.numerator as double)), uom, lambda x_12798#6610211.uom, uomUuid, lambda x_12798#6610211.uomUuid), lambda x_12798#6610211, false))).uomUuid, coalesce(element_at(filter(logisticUnits#6609114, lambdafunction(lambda x_12796#6610177.isOrderUnit, lambda x_12796#6610177, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#6609101)), serviceLevel, coalesce(filter(element_at(quantityKpis#6609675, qty#6608921, None, false), lambdafunction((lambda x_12803#6610178.label = ServiceLevel), lambda x_12803#6610178, false))[0].value, 0.0), serviceLevelMinStock, ... 5 more fields)) ELSE array(struct(isProposedCandidate, true, isProdlocOptimalCandidate, false, candidateOrderQuantity, coalesce((qty#6608921 * (cast(element_at(filter(logisticUnits#6609114, lambdafunction(lambda x_12795#6610181.isOrderUnit, lambda x_12795#6610181, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#6609114, lambdafunction(lambda x_12795#6610182.isOrderUnit, lambda x_12795#6610182, false)), 1, None, false).numerator as double))), qty#6608921), orderQuantityUom, coalesce(element_at(filter(logisticUnits#6609114, lambdafunction(lambda x_12795#6610183.isOrderUnit, lambda x_12795#6610183, false)), 1, None, false).uom, orderQuantityBaseUom#6609100), orderQuantityUomUuid, coalesce(element_at(filter(logisticUnits#6609114, lambdafunction(lambda x_12795#6610184.isOrderUnit, lambda x_12795#6610184, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#6609101), candidateOrderQuantityInBaseUnit, qty#6608921, orderQuantityBaseUom, orderQuantityBaseUom#6609100, orderQuantityBaseUomUuid, orderQuantityBaseUomUuid#6609101, candidateOrderQuantityInPreferredUnit, coalesce(array_min(transform(filter(logisticUnits#6609114, lambdafunction((lambda x_12797#6610185.isPreferred AND (((qty#6608921 * cast(lambda x_12797#6610185.denominator as double)) % cast(lambda x_12797#6610185.numerator as double)) = 0.0)), lambda x_12797#6610185, false)), lambdafunction(struct(inPreferredQuantity, ((qty#6608921 * cast(lambda x_12798#6610212.denominator as double)) / cast(lambda x_12798#6610212.numerator as double)), uom, lambda x_12798#6610212.uom, uomUuid, lambda x_12798#6610212.uomUuid), lambda x_12798#6610212, false))).inPreferredQuantity, coalesce((qty#6608921 * (cast(element_at(filter(logisticUnits#6609114, lambdafunction(lambda x_12796#6610186.isOrderUnit, lambda x_12796#6610186, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#6609114, lambdafunction(lambda x_12796#6610187.isOrderUnit, lambda x_12796#6610187, false)), 1, None, false).numerator as double))), qty#6608921)), orderQuantityPreferredUom, coalesce(array_min(transform(filter(logisticUnits#6609114, lambdafunction((lambda x_12797#6610188.isPreferred AND (((qty#6608921 * cast(lambda x_12797#6610188.denominator as double)) % cast(lambda x_12797#6610188.numerator as double)) = 0.0)), lambda x_12797#6610188, false)), lambdafunction(struct(inPreferredQuantity, ((qty#6608921 * cast(lambda x_12798#6610213.denominator as double)) / cast(lambda x_12798#6610213.numerator as double)), uom, lambda x_12798#6610213.uom, uomUuid, lambda x_12798#6610213.uomUuid), lambda x_12798#6610213, false))).uom, coalesce(element_at(filter(logisticUnits#6609114, lambdafunction(lambda x_12796#6610189.isOrderUnit, lambda x_12796#6610189, false)), 1, None, false).uom, orderQuantityBaseUom#6609100)), orderQuantityPreferredUomUuid, coalesce(array_min(transform(filter(logisticUnits#6609114, lambdafunction((lambda x_12797#6610190.isPreferred AND (((qty#6608921 * cast(lambda x_12797#6610190.denominator as double)) % cast(lambda x_12797#6610190.numerator as double)) = 0.0)), lambda x_12797#6610190, false)), lambdafunction(struct(inPreferredQuantity, ((qty#6608921 * cast(lambda x_12798#6610214.denominator as double)) / cast(lambda x_12798#6610214.numerator as double)), uom, lambda x_12798#6610214.uom, uomUuid, lambda x_12798#6610214.uomUuid), lambda x_12798#6610214, false))).uomUuid, coalesce(element_at(filter(logisticUnits#6609114, lambdafunction(lambda x_12796#6610191.isOrderUnit, lambda x_12796#6610191, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#6609101)), serviceLevel, coalesce(filter(element_at(quantityKpis#6609675, qty#6608921, None, false), lambdafunction((lambda x_12806#6610192.label = ServiceLevel), lambda x_12806#6610192, false))[0].value, 0.0), serviceLevelMinStock, ... 5 more fields), struct(isProposedCandidate, false, isProdlocOptimalCandidate, true, candidateOrderQuantity, coalesce((quantityAfterProdPlantOptimization#6608920 * (cast(element_at(filter(logisticUnits#6609114, lambdafunction(lambda x_12799#6610195.isOrderUnit, lambda x_12799#6610195, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#6609114, lambdafunction(lambda x_12799#6610196.isOrderUnit, lambda x_12799#6610196, false)), 1, None, false).numerator as double))), quantityAfterProdPlantOptimization#6608920), orderQuantityUom, coalesce(element_at(filter(logisticUnits#6609114, lambdafunction(lambda x_12799#6610197.isOrderUnit, lambda x_12799#6610197, false)), 1, None, false).uom, orderQuantityBaseUom#6609100), orderQuantityUomUuid, coalesce(element_at(filter(logisticUnits#6609114, lambdafunction(lambda x_12799#6610198.isOrderUnit, lambda x_12799#6610198, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#6609101), candidateOrderQuantityInBaseUnit, quantityAfterProdPlantOptimization#6608920, orderQuantityBaseUom, orderQuantityBaseUom#6609100, orderQuantityBaseUomUuid, orderQuantityBaseUomUuid#6609101, candidateOrderQuantityInPreferredUnit, coalesce(array_min(transform(filter(logisticUnits#6609114, lambdafunction((lambda x_12801#6610199.isPreferred AND (((quantityAfterProdPlantOptimization#6608920 * cast(lambda x_12801#6610199.denominator as double)) % cast(lambda x_12801#6610199.numerator as double)) = 0.0)), lambda x_12801#6610199, false)), lambdafunction(struct(inPreferredQuantity, ((quantityAfterProdPlantOptimization#6608920 * cast(lambda x_12802#6610215.denominator as double)) / cast(lambda x_12802#6610215.numerator as double)), uom, lambda x_12802#6610215.uom, uomUuid, lambda x_12802#6610215.uomUuid), lambda x_12802#6610215, false))).inPreferredQuantity, coalesce((quantityAfterProdPlantOptimization#6608920 * (cast(element_at(filter(logisticUnits#6609114, lambdafunction(lambda x_12800#6610200.isOrderUnit, lambda x_12800#6610200, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#6609114, lambdafunction(lambda x_12800#6610201.isOrderUnit, lambda x_12800#6610201, false)), 1, None, false).numerator as double))), quantityAfterProdPlantOptimization#6608920)), orderQuantityPreferredUom, coalesce(array_min(transform(filter(logisticUnits#6609114, lambdafunction((lambda x_12801#6610202.isPreferred AND (((quantityAfterProdPlantOptimization#6608920 * cast(lambda x_12801#6610202.denominator as double)) % cast(lambda x_12801#6610202.numerator as double)) = 0.0)), lambda x_12801#6610202, false)), lambdafunction(struct(inPreferredQuantity, ((quantityAfterProdPlantOptimization#6608920 * cast(lambda x_12802#6610216.denominator as double)) / cast(lambda x_12802#6610216.numerator as double)), uom, lambda x_12802#6610216.uom, uomUuid, lambda x_12802#6610216.uomUuid), lambda x_12802#6610216, false))).uom, coalesce(element_at(filter(logisticUnits#6609114, lambdafunction(lambda x_12800#6610203.isOrderUnit, lambda x_12800#6610203, false)), 1, None, false).uom, orderQuantityBaseUom#6609100)), orderQuantityPreferredUomUuid, coalesce(array_min(transform(filter(logisticUnits#6609114, lambdafunction((lambda x_12801#6610204.isPreferred AND (((quantityAfterProdPlantOptimization#6608920 * cast(lambda x_12801#6610204.denominator as double)) % cast(lambda x_12801#6610204.numerator as double)) = 0.0)), lambda x_12801#6610204, false)), lambdafunction(struct(inPreferredQuantity, ((quantityAfterProdPlantOptimization#6608920 * cast(lambda x_12802#6610217.denominator as double)) / cast(lambda x_12802#6610217.numerator as double)), uom, lambda x_12802#6610217.uom, uomUuid, lambda x_12802#6610217.uomUuid), lambda x_12802#6610217, false))).uomUuid, coalesce(element_at(filter(logisticUnits#6609114, lambdafunction(lambda x_12800#6610205.isOrderUnit, lambda x_12800#6610205, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#6609101)), serviceLevel, coalesce(filter(element_at(quantityKpis#6609675, quantityAfterProdPlantOptimization#6608920, None, false), lambdafunction((lambda x_12809#6610206.label = ServiceLevel), lambda x_12809#6610206, false))[0].value, 0.0), serviceLevelMinStock, ... 5 more fields)) END AS calculationAnalysis#6610166, coalesce(filter(prodLocSpecificKpis#6609647, lambdafunction((lambda x_12812#6610219.label = InitialStockQty), lambda x_12812#6610219, false))[0].dateTime, 1970-01-01 00:00:00) AS inventoryDateTime#6610218, coalesce(filter(prodLocSpecificKpis#6609647, lambdafunction((lambda x_12813#6610221.label = DemandPeriodEndTimestamp), lambda x_12813#6610221, false))[0].dateTime, 1970-01-01 00:00:00) AS demandPeriodEndDateTime#6610220]
Input [36]: [shardId#6608407, quantityAfterProdPlantOptimization#6608920, qty#6608921, orderProposalId#6609077L, originalReplenishmentRunId#6609080L, supplierGroup#6609087, supplier#6609088, supplyingPlant#6609118, productGroup#6609119, product#6609090, plant#6609091, subrange#6609089, orderDateTime#6609095, deliveryDateTime#6609096, availabilityDateTime#6609097, nextAvailabilityDateTime#6609098, logisticUnits#6609114, orderQuantityBaseUom#6609100, orderQuantityBaseUomUuid#6609101, splitIndicator#6609082L, netPriceAmount#6609105, netPriceCurrencyCode#6609106, netPriceQuantity#6609102, netPriceQuantityUom#6609103, netPriceQuantityUomUuid#6609104, sourceOfSupplyUuid#6609086, minimumOrderQuantity#6609108, orderProposalItemId#6609078, orderProposalItemGroupId#6609079, optimizationGroups#6609115, measurements#6609107, previousOrderProposal#6609083L, prodLocSpecificKpis#6609647, channelStreamSpecificKpis#6609662, quantityKpis#6609675, constraintStructArray#6610089]
(58) Project
Output [21]: [shardId#6608407, qty#6608921, orderProposalId#6609077L, originalReplenishmentRunId#6609080L, supplierGroup#6609087, supplier#6609088, supplyingPlant#6609118, productGroup#6609119, product#6609090, plant#6609091, subrange#6609089, orderDateTime#6609095, deliveryDateTime#6609096, logisticUnits#6609114, orderQuantityBaseUom#6609100, orderQuantityBaseUomUuid#6609101, splitIndicator#6609082L, orderProposalItemId#6609078, orderProposalItemGroupId#6609079, previousOrderProposal#6609083L, struct(supplier, supplier#6609088, supplyingPlant, supplyingPlant#6609118, productGroup, productGroup#6609119, product, product#6609090, plant, plant#6609091, supplierSubRange, subrange#6609089, sourceOfSupplyUuid, sourceOfSupplyUuid#6609086, deliveryDateTime, deliveryDateTime#6609096, unitPrice, netPriceAmount#6609105, unitPriceCurrency, netPriceCurrencyCode#6609106, unitPriceQuantity, netPriceQuantity#6609102, unitPriceQuantityUom, netPriceQuantityUom#6609103, unitPriceQuantityUomUuid, ... 31 more fields) AS parentItem#6610291]
Input [37]: [shardId#6608407, qty#6608921, orderProposalId#6609077L, originalReplenishmentRunId#6609080L, supplierGroup#6609087, supplier#6609088, supplyingPlant#6609118, productGroup#6609119, product#6609090, plant#6609091, subrange#6609089, orderDateTime#6609095, deliveryDateTime#6609096, availabilityDateTime#6609097, nextAvailabilityDateTime#6609098, logisticUnits#6609114, orderQuantityBaseUom#6609100, orderQuantityBaseUomUuid#6609101, splitIndicator#6609082L, netPriceAmount#6609105, netPriceCurrencyCode#6609106, netPriceQuantity#6609102, netPriceQuantityUom#6609103, netPriceQuantityUomUuid#6609104, sourceOfSupplyUuid#6609086, orderProposalItemId#6609078, orderProposalItemGroupId#6609079, optimizationGroups#6609115, measurements#6609107, previousOrderProposal#6609083L, prodLocSpecificKpis#6609647, channelStreamSpecificKpis#6609662, quantityKpis#6609675, constraintBenchmark#6610095, calculationAnalysis#6610166, inventoryDateTime#6610218, demandPeriodEndDateTime#6610220]
(59) Project
Output [12]: [shardId#6608407, orderProposalId#6609077L, originalReplenishmentRunId#6609080L, supplierGroup#6609087, supplier#6609088, supplyingPlant#6609118, orderDateTime#6609095, splitIndicator#6609082L, orderProposalItemGroupId#6609079, previousOrderProposal#6609083L, parentItem#6610291, struct(itemId, orderProposalItemId#6609078, supplier, supplier#6609088, supplyingPlant, supplyingPlant#6609118, productGroup, productGroup#6609119, product, product#6609090, plant, plant#6609091, supplierSubRange, subrange#6609089, deliveryDateTime, deliveryDateTime#6609096, orderQuantity, coalesce((qty#6608921 * (cast(element_at(filter(logisticUnits#6609114, lambdafunction(lambda x_12837#6610325.isOrderUnit, lambda x_12837#6610325, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#6609114, lambdafunction(lambda x_12837#6610326.isOrderUnit, lambda x_12837#6610326, false)), 1, None, false).numerator as double))), qty#6608921), orderQuantityUom, coalesce(element_at(filter(logisticUnits#6609114, lambdafunction(lambda x_12837#6610327.isOrderUnit, lambda x_12837#6610327, false)), 1, None, false).uom, orderQuantityBaseUom#6609100), orderQuantityUomUuid, coalesce(element_at(filter(logisticUnits#6609114, lambdafunction(lambda x_12837#6610328.isOrderUnit, lambda x_12837#6610328, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#6609101), orderQuantityInBaseUnit, qty#6608921, orderQuantityBaseUom, ... 13 more fields) AS item#6610322]
Input [21]: [shardId#6608407, qty#6608921, orderProposalId#6609077L, originalReplenishmentRunId#6609080L, supplierGroup#6609087, supplier#6609088, supplyingPlant#6609118, productGroup#6609119, product#6609090, plant#6609091, subrange#6609089, orderDateTime#6609095, deliveryDateTime#6609096, logisticUnits#6609114, orderQuantityBaseUom#6609100, orderQuantityBaseUomUuid#6609101, splitIndicator#6609082L, orderProposalItemId#6609078, orderProposalItemGroupId#6609079, previousOrderProposal#6609083L, parentItem#6610291]
(60) ObjectHashAggregate
Input [12]: [shardId#6608407, orderProposalId#6609077L, originalReplenishmentRunId#6609080L, supplierGroup#6609087, supplier#6609088, supplyingPlant#6609118, orderDateTime#6609095, splitIndicator#6609082L, orderProposalItemGroupId#6609079, previousOrderProposal#6609083L, parentItem#6610291, item#6610322]
Keys [4]: [shardId#6608407, orderProposalId#6609077L, splitIndicator#6609082L, orderProposalItemGroupId#6609079]
Functions [8]: [partial_max(originalReplenishmentRunId#6609080L), partial_max(supplierGroup#6609087), partial_max(supplier#6609088), partial_max(supplyingPlant#6609118), partial_max(orderDateTime#6609095), partial_collect_list(parentItem#6610291, 0, 0), partial_collect_set(previousOrderProposal#6609083L, 0, 0), partial_collect_list(item#6610322, 0, 0)]
Aggregate Attributes [8]: [max#6611573L, max#6611574, max#6611575, max#6611576, max#6611577, buf#6611578, buf#6611579, buf#6611580]
Results [12]: [shardId#6608407, orderProposalId#6609077L, splitIndicator#6609082L, orderProposalItemGroupId#6609079, max#6611581L, max#6611582, max#6611583, max#6611584, max#6611585, buf#6611586, buf#6611587, buf#6611588]
(61) Exchange
Input [12]: [shardId#6608407, orderProposalId#6609077L, splitIndicator#6609082L, orderProposalItemGroupId#6609079, max#6611581L, max#6611582, max#6611583, max#6611584, max#6611585, buf#6611586, buf#6611587, buf#6611588]
Arguments: hashpartitioning(shardId#6608407, orderProposalId#6609077L, splitIndicator#6609082L, orderProposalItemGroupId#6609079, 30), ENSURE_REQUIREMENTS, [plan_id=3473822]
(62) ObjectHashAggregate
Input [12]: [shardId#6608407, orderProposalId#6609077L, splitIndicator#6609082L, orderProposalItemGroupId#6609079, max#6611581L, max#6611582, max#6611583, max#6611584, max#6611585, buf#6611586, buf#6611587, buf#6611588]
Keys [4]: [shardId#6608407, orderProposalId#6609077L, splitIndicator#6609082L, orderProposalItemGroupId#6609079]
Functions [8]: [max(originalReplenishmentRunId#6609080L), max(supplierGroup#6609087), max(supplier#6609088), max(supplyingPlant#6609118), max(orderDateTime#6609095), collect_list(parentItem#6610291, 0, 0), collect_set(previousOrderProposal#6609083L, 0, 0), collect_list(item#6610322, 0, 0)]
Aggregate Attributes [8]: [max(originalReplenishmentRunId#6609080L)#6610391L, max(supplierGroup#6609087)#6610392, max(supplier#6609088)#6610393, max(supplyingPlant#6609118)#6610394, max(orderDateTime#6609095)#6610395, collect_list(parentItem#6610291, 0, 0)#6610396, collect_set(previousOrderProposal#6609083L, 0, 0)#6610398, collect_list(item#6610322, 0, 0)#6610397]
Results [10]: [shardId#6608407, orderProposalId#6609077L, max(originalReplenishmentRunId#6609080L)#6610391L AS originalReplenishmentRunId#6610339L, max(supplierGroup#6609087)#6610392 AS supplierGroup#6610340, max(supplier#6609088)#6610393 AS supplier#6610341, max(supplyingPlant#6609118)#6610394 AS supplyingPlant#6610342, max(orderDateTime#6609095)#6610395 AS orderDateTime#6610343, collect_list(parentItem#6610291, 0, 0)#6610396 AS parentItems#6610344, collect_set(previousOrderProposal#6609083L, 0, 0)#6610398 AS previousOrderProposals#6610346, struct(itemGroupId, coalesce(orderProposalItemGroupId#6609079, cast((monotonically_increasing_id() % 9999999999) as string)), items, collect_list(item#6610322, 0, 0)#6610397) AS itemGroup#6610400]
(63) ObjectHashAggregate
Input [10]: [shardId#6608407, orderProposalId#6609077L, originalReplenishmentRunId#6610339L, supplierGroup#6610340, supplier#6610341, supplyingPlant#6610342, orderDateTime#6610343, parentItems#6610344, previousOrderProposals#6610346, itemGroup#6610400]
Keys [2]: [shardId#6608407, orderProposalId#6609077L]
Functions [8]: [partial_max(originalReplenishmentRunId#6610339L), partial_max(supplierGroup#6610340), partial_max(supplier#6610341), partial_max(supplyingPlant#6610342), partial_max(orderDateTime#6610343), partial_collect_list(itemGroup#6610400, 0, 0), partial_collect_list(parentItems#6610344, 0, 0), partial_collect_set(previousOrderProposals#6610346, 0, 0)]
Aggregate Attributes [8]: [max#6611557L, max#6611558, max#6611559, max#6611560, max#6611561, buf#6611562, buf#6611563, buf#6611564]
Results [10]: [shardId#6608407, orderProposalId#6609077L, max#6611565L, max#6611566, max#6611567, max#6611568, max#6611569, buf#6611570, buf#6611571, buf#6611572]
(64) Exchange
Input [10]: [shardId#6608407, orderProposalId#6609077L, max#6611565L, max#6611566, max#6611567, max#6611568, max#6611569, buf#6611570, buf#6611571, buf#6611572]
Arguments: hashpartitioning(shardId#6608407, orderProposalId#6609077L, 30), ENSURE_REQUIREMENTS, [plan_id=3473825]
(65) ObjectHashAggregate
Input [10]: [shardId#6608407, orderProposalId#6609077L, max#6611565L, max#6611566, max#6611567, max#6611568, max#6611569, buf#6611570, buf#6611571, buf#6611572]
Keys [2]: [shardId#6608407, orderProposalId#6609077L]
Functions [8]: [max(originalReplenishmentRunId#6610339L), max(supplierGroup#6610340), max(supplier#6610341), max(supplyingPlant#6610342), max(orderDateTime#6610343), collect_list(itemGroup#6610400, 0, 0), collect_list(parentItems#6610344, 0, 0), collect_set(previousOrderProposals#6610346, 0, 0)]
Aggregate Attributes [8]: [max(originalReplenishmentRunId#6610339L)#6610422L, max(supplierGroup#6610340)#6610423, max(supplier#6610341)#6610424, max(supplyingPlant#6610342)#6610425, max(orderDateTime#6610343)#6610426, collect_list(itemGroup#6610400, 0, 0)#6610427, collect_list(parentItems#6610344, 0, 0)#6610428, collect_set(previousOrderProposals#6610346, 0, 0)#6610429]
Results [10]: [shardId#6608407, orderProposalId#6609077L, max(originalReplenishmentRunId#6610339L)#6610422L AS originalReplenishmentRunId#6610401L, max(supplierGroup#6610340)#6610423 AS supplierGroup#6610402, max(supplier#6610341)#6610424 AS supplier#6610403, max(supplyingPlant#6610342)#6610425 AS supplyingPlant#6610404, max(orderDateTime#6610343)#6610426 AS orderDateTime#6610405, collect_list(itemGroup#6610400, 0, 0)#6610427 AS itemGroups#6610406, flatten(collect_list(parentItems#6610344, 0, 0)#6610428) AS parentItems#6610407, flatten(collect_set(previousOrderProposals#6610346, 0, 0)#6610429) AS previousOrderProposals#6610408]
(66) Project
Output [2]: [shardId#6608407, struct(orderProposalId, orderProposalId#6609077L, originalReplenishmentRunId, originalReplenishmentRunId#6610401L, supplierGroup, supplierGroup#6610402, optimizationGroups, null, supplier, CASE WHEN isnull(supplierGroup#6610402) THEN supplier#6610403 END, supplyingPlant, supplyingPlant#6610404, orderDateTime, orderDateTime#6610405, itemGroups, itemGroups#6610406, previousOrderProposals, array_distinct(previousOrderProposals#6610408), parentItems, parentItems#6610407) AS orderProposal#6610433]
Input [10]: [shardId#6608407, orderProposalId#6609077L, originalReplenishmentRunId#6610401L, supplierGroup#6610402, supplier#6610403, supplyingPlant#6610404, orderDateTime#6610405, itemGroups#6610406, parentItems#6610407, previousOrderProposals#6610408]
(67) Project
Output [11]: [shardId#6608407, orderProposal#6610433.orderProposalId AS _extract_orderProposalId#6611189L, orderProposal#6610433.originalReplenishmentRunId AS _extract_originalReplenishmentRunId#6611190L, orderProposal#6610433.supplierGroup AS _extract_supplierGroup#6611191, orderProposal#6610433.supplier AS _extract_supplier#6611192, orderProposal#6610433.supplyingPlant AS _extract_supplyingPlant#6611193, orderProposal#6610433.orderDateTime AS _extract_orderDateTime#6611194, orderProposal#6610433.itemGroups AS _extract_itemGroups#6611195, orderProposal#6610433.previousOrderProposals AS _extract_previousOrderProposals#6611196, orderProposal#6610433.parentItems AS _extract_parentItems#6611197, orderProposal#6610433.orderProposalId AS _extract_orderProposalId#6611198L]
Input [2]: [shardId#6608407, orderProposal#6610433]
(68) Exchange
Input [11]: [shardId#6608407, _extract_orderProposalId#6611189L, _extract_originalReplenishmentRunId#6611190L, _extract_supplierGroup#6611191, _extract_supplier#6611192, _extract_supplyingPlant#6611193, _extract_orderDateTime#6611194, _extract_itemGroups#6611195, _extract_previousOrderProposals#6611196, _extract_parentItems#6611197, _extract_orderProposalId#6611198L]
Arguments: hashpartitioning(coalesce(shardId#6608407, ), isnull(shardId#6608407), coalesce(_extract_orderProposalId#6611198L, 0), isnull(_extract_orderProposalId#6611198L), 30), ENSURE_REQUIREMENTS, [plan_id=3473829]
(69) Sort
Input [11]: [shardId#6608407, _extract_orderProposalId#6611189L, _extract_originalReplenishmentRunId#6611190L, _extract_supplierGroup#6611191, _extract_supplier#6611192, _extract_supplyingPlant#6611193, _extract_orderDateTime#6611194, _extract_itemGroups#6611195, _extract_previousOrderProposals#6611196, _extract_parentItems#6611197, _extract_orderProposalId#6611198L]
Arguments: [coalesce(shardId#6608407, ) ASC NULLS FIRST, isnull(shardId#6608407) ASC NULLS FIRST, coalesce(_extract_orderProposalId#6611198L, 0) ASC NULLS FIRST, isnull(_extract_orderProposalId#6611198L) ASC NULLS FIRST], false, 0
(70) InMemoryTableScan
Output [3]: [shardId#6610446, orderProposalId#6610447L, optimizationGroups#6610449]
Arguments: [shardId#6610446, orderProposalId#6610447L, optimizationGroups#6610449], [isnotnull(orderProposalId#6610447L)]
(71) InMemoryRelation
Arguments: [shardId#6610446, orderProposalId#6610447L, items#6610448, optimizationGroups#6610449, isOptimal#6610450, optimizationInsights#6610452], StorageLevel(disk, memory, 2 replicas)
(72) Filter [codegen id : 2]
Input [3]: [shardId#6610446, orderProposalId#6610447L, optimizationGroups#6610449]
Condition : isnotnull(orderProposalId#6610447L)
(73) BroadcastExchange
Input [3]: [shardId#6610446, orderProposalId#6610447L, optimizationGroups#6610449]
Arguments: HashedRelationBroadcastMode(List(input[1, bigint, false]),false), [plan_id=3473834]
(74) InMemoryTableScan
Output [2]: [items#6610084, shardId#6610082]
Arguments: [items#6610084, shardId#6610082], [(size(items#6610084.worklistShardItemId, true) > 0), isnotnull(items#6610084.worklistShardItemId), (shardId#6610082 = 0_1_10000002290)]
(75) InMemoryRelation
Arguments: [shardId#6610082, orderProposalId#6610083L, items#6610084, optimizationGroups#6610085, isOptimal#6610086, optimizationInsights#6610088], StorageLevel(disk, memory, 2 replicas)
(76) Filter [codegen id : 3]
Input [2]: [items#6610084, shardId#6610082]
Condition : (((size(items#6610084.worklistShardItemId, true) > 0) AND isnotnull(items#6610084.worklistShardItemId)) AND (shardId#6610082 = 0_1_10000002290))
(77) Project [codegen id : 3]
Output [1]: [items#6610084.worklistShardItemId AS _extract_worklistShardItemId#6611094]
Input [2]: [items#6610084, shardId#6610082]
(78) Generate [codegen id : 3]
Input [1]: [_extract_worklistShardItemId#6611094]
Arguments: explode(_extract_worklistShardItemId#6611094), false, [item#6610453L]
(79) Project [codegen id : 3]
Output [1]: [item#6610453L AS worklistShardItemId#6610454L]
Input [1]: [item#6610453L]
(80) BroadcastExchange
Input [1]: [worklistShardItemId#6610454L]
Arguments: HashedRelationBroadcastMode(List(input[0, bigint, true]),false), [plan_id=3473842]
(81) Scan parquet
Output [5]: [orderProposalId#6610502L, isFallbackOrderOnly#6610519, worklistShardItemId#6610525L, shardId#6610546, sequenceId#6610524]
Batched: true
Location: PreparedDeltaFileIndex [hdlfs://dac252a8-bd1b-4f30-995e-f6d4a08836d2.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-qty-opt-service/internal/prod-plant-snapshot/10000002290]
PartitionFilters: [isnotnull(shardId#6610546), isnotnull(sequenceId#6610524), (shardId#6610546 = 0_1_10000002290), (sequenceId#6610524 = 3)]
PushedFilters: [IsNotNull(worklistShardItemId), Not(EqualNullSafe(isFallbackOrderOnly,true)), IsNotNull(orderProposalId)]
ReadSchema: struct<orderProposalId:bigint,isFallbackOrderOnly:boolean,worklistShardItemId:bigint>
(82) ColumnarToRow [codegen id : 4]
Input [5]: [orderProposalId#6610502L, isFallbackOrderOnly#6610519, worklistShardItemId#6610525L, shardId#6610546, sequenceId#6610524]
(83) Filter [codegen id : 4]
Input [5]: [orderProposalId#6610502L, isFallbackOrderOnly#6610519, worklistShardItemId#6610525L, shardId#6610546, sequenceId#6610524]
Condition : ((isnotnull(worklistShardItemId#6610525L) AND NOT (isFallbackOrderOnly#6610519 <=> true)) AND isnotnull(orderProposalId#6610502L))
(84) Project [codegen id : 4]
Output [2]: [orderProposalId#6610502L, worklistShardItemId#6610525L]
Input [5]: [orderProposalId#6610502L, isFallbackOrderOnly#6610519, worklistShardItemId#6610525L, shardId#6610546, sequenceId#6610524]
(85) Exchange
Input [2]: [orderProposalId#6610502L, worklistShardItemId#6610525L]
Arguments: hashpartitioning(worklistShardItemId#6610525L, 30), REPARTITION_BY_NUM, [plan_id=3473849]
(86) Project
Output [2]: [worklistShardItemId#6610525L, orderProposalId#6610502L]
Input [2]: [orderProposalId#6610502L, worklistShardItemId#6610525L]
(87) BroadcastHashJoin [codegen id : 5]
Left keys [1]: [worklistShardItemId#6610454L]
Right keys [1]: [worklistShardItemId#6610525L]
Join type: Inner
Join condition: None
(88) Project [codegen id : 5]
Output [1]: [orderProposalId#6610502L]
Input [3]: [worklistShardItemId#6610454L, worklistShardItemId#6610525L, orderProposalId#6610502L]
(89) HashAggregate [codegen id : 5]
Input [1]: [orderProposalId#6610502L]
Keys [1]: [orderProposalId#6610502L]
Functions: []
Aggregate Attributes: []
Results [1]: [orderProposalId#6610502L]
(90) Exchange
Input [1]: [orderProposalId#6610502L]
Arguments: hashpartitioning(orderProposalId#6610502L, 30), ENSURE_REQUIREMENTS, [plan_id=3473856]
(91) HashAggregate
Input [1]: [orderProposalId#6610502L]
Keys [1]: [orderProposalId#6610502L]
Functions: []
Aggregate Attributes: []
Results [1]: [orderProposalId#6610502L]
(92) BroadcastHashJoin [codegen id : 6]
Left keys [1]: [orderProposalId#6610447L]
Right keys [1]: [orderProposalId#6610502L]
Join type: Inner
Join condition: None
(93) Project
Output [3]: [orderProposalId#6610447L, shardId#6610446, coalesce(transform(optimizationGroups#6610449, lambdafunction(struct(optGroupId, lambda x_12841#6610444.optGroupId, minOrderProfile, lambda x_12841#6610444.minOrderProfile, assignmentDetails, lambda x_12841#6610444.assignmentDetails, minOrdBenchmark, struct(dimensionType, lambda x_12841#6610444.minOrderGoal.dimensionType, unit, lambda x_12841#6610444.minOrderGoal.unit, unitUuid, lambda x_12841#6610444.minOrderGoal.unitUuid, goalValue, lambda x_12841#6610444.minOrderGoal.minOrderValue, calcValue, lambda x_12841#6610444.minOrderGoal.calculatedOrderValue)), lambda x_12841#6610444, false)), []) AS optimizationGroups#6610443]
Input [4]: [shardId#6610446, orderProposalId#6610447L, optimizationGroups#6610449, orderProposalId#6610502L]
(94) Exchange
Input [3]: [orderProposalId#6610447L, shardId#6610446, optimizationGroups#6610443]
Arguments: hashpartitioning(coalesce(shardId#6610446, ), isnull(shardId#6610446), coalesce(orderProposalId#6610447L, 0), isnull(orderProposalId#6610447L), 30), ENSURE_REQUIREMENTS, [plan_id=3473862]
(95) Sort [codegen id : 7]
Input [3]: [orderProposalId#6610447L, shardId#6610446, optimizationGroups#6610443]
Arguments: [coalesce(shardId#6610446, ) ASC NULLS FIRST, isnull(shardId#6610446) ASC NULLS FIRST, coalesce(orderProposalId#6610447L, 0) ASC NULLS FIRST, isnull(orderProposalId#6610447L) ASC NULLS FIRST], false, 0
(96) SortMergeJoin
Left keys [4]: [coalesce(shardId#6608407, ), isnull(shardId#6608407), coalesce(_extract_orderProposalId#6611198L, 0), isnull(_extract_orderProposalId#6611198L)]
Right keys [4]: [coalesce(shardId#6610446, ), isnull(shardId#6610446), coalesce(orderProposalId#6610447L, 0), isnull(orderProposalId#6610447L)]
Join type: LeftOuter
Join condition: None
(97) Project
Output [2]: [shardId#6608407, named_struct(orderProposalId, _extract_orderProposalId#6611198L, originalReplenishmentRunId, _extract_originalReplenishmentRunId#6611190L, supplierGroup, _extract_supplierGroup#6611191, optimizationGroups, coalesce(optimizationGroups#6610443, []), supplier, _extract_supplier#6611192, supplyingPlant, _extract_supplyingPlant#6611193, orderDateTime, _extract_orderDateTime#6611194, itemGroups, _extract_itemGroups#6611195, previousOrderProposals, _extract_previousOrderProposals#6611196, parentItems, _extract_parentItems#6611197) AS orderProposal#6610550]
Input [14]: [shardId#6608407, _extract_orderProposalId#6611189L, _extract_originalReplenishmentRunId#6611190L, _extract_supplierGroup#6611191, _extract_supplier#6611192, _extract_supplyingPlant#6611193, _extract_orderDateTime#6611194, _extract_itemGroups#6611195, _extract_previousOrderProposals#6611196, _extract_parentItems#6611197, _extract_orderProposalId#6611198L, orderProposalId#6610447L, shardId#6610446, optimizationGroups#6610443]
(98) Project
Output [3]: [shardId#6608407, orderProposal#6610550, CASE WHEN (size(orderProposal#6610550.parentItems, true) > 2000) THEN xxhash64(orderProposal#6610550.orderProposalId, 42) ELSE xxhash64(pmod(cast(orderProposal#6610550.orderProposalId as decimal(20,0)), 0), 42) END AS resultSeparationId#6612302L]
Input [2]: [orderProposal#6610550, shardId#6608407]
(99) ObjectHashAggregate
Input [3]: [shardId#6608407, orderProposal#6610550, resultSeparationId#6612302L]
Keys [2]: [shardId#6608407, resultSeparationId#6612302L]
Functions [1]: [partial_collect_list(orderProposal#6610550, 0, 0)]
Aggregate Attributes [1]: [buf#6612341]
Results [3]: [shardId#6608407, resultSeparationId#6612302L, buf#6612342]
(100) Exchange
Input [3]: [shardId#6608407, resultSeparationId#6612302L, buf#6612342]
Arguments: hashpartitioning(shardId#6608407, resultSeparationId#6612302L, 30), ENSURE_REQUIREMENTS, [plan_id=3474009]
(101) ObjectHashAggregate
Input [3]: [shardId#6608407, resultSeparationId#6612302L, buf#6612342]
Keys [2]: [shardId#6608407, resultSeparationId#6612302L]
Functions [1]: [collect_list(orderProposal#6610550, 0, 0)]
Aggregate Attributes [1]: [collect_list(orderProposal#6610550, 0, 0)#6612310]
Results [3]: [shardId#6608407, resultSeparationId#6612302L, collect_list(orderProposal#6610550, 0, 0)#6612310 AS orderProposals#6612306]
(102) HashAggregate [codegen id : 1]
Input: []
Keys: []
Functions [1]: [partial_count(1)]
Aggregate Attributes [1]: [count#6612419L]
Results [1]: [count#6612420L]
(103) Exchange
Input [1]: [count#6612420L]
Arguments: SinglePartition, ENSURE_REQUIREMENTS, [plan_id=3474033]
(104) HashAggregate [codegen id : 2]
Input [1]: [count#6612420L]
Keys: []
Functions [1]: [count(1)]
Aggregate Attributes [1]: [count(1)#6612373L]
Results [1]: [count(1)#6612373L AS count#6612369L]