== Physical Plan ==
* HashAggregate (110)
+- Exchange (109)
+- * HashAggregate (108)
+- InMemoryTableScan (1)
+- InMemoryRelation (2)
+- Project (107)
+- Exchange (106)
+- InMemoryTableScan (3)
+- InMemoryRelation (4)
+- ObjectHashAggregate (105)
+- Exchange (104)
+- ObjectHashAggregate (103)
+- Project (102)
+- InMemoryTableScan (5)
+- InMemoryRelation (6)
+- Project (101)
+- SortMergeJoin LeftOuter (100)
:- Sort (71)
: +- Exchange (70)
: +- Project (69)
: +- Project (68)
: +- ObjectHashAggregate (67)
: +- Exchange (66)
: +- ObjectHashAggregate (65)
: +- ObjectHashAggregate (64)
: +- Exchange (63)
: +- ObjectHashAggregate (62)
: +- Project (61)
: +- Project (60)
: +- Project (59)
: +- * Project (58)
: +- * Filter (57)
: +- InMemoryTableScan (7)
: +- InMemoryRelation (8)
: +- * Project (56)
: +- * SortMergeJoin LeftOuter (55)
: :- * Project (47)
: : +- * SortMergeJoin LeftOuter (46)
: : :- * Project (38)
: : : +- * SortMergeJoin LeftOuter (37)
: : : :- * Sort (31)
: : : : +- Exchange (30)
: : : : +- * Project (29)
: : : : +- * SortMergeJoin LeftOuter (28)
: : : : :- * Sort (20)
: : : : : +- Exchange (19)
: : : : : +- * Project (18)
: : : : : +- * Generate (17)
: : : : : +- * Filter (16)
: : : : : +- InMemoryTableScan (9)
: : : : : +- InMemoryRelation (10)
: : : : : +- * Filter (15)
: : : : : +- InMemoryTableScan (11)
: : : : : +- InMemoryRelation (12)
: : : : : +- * Filter (14)
: : : : : +- * Scan ExistingRDD (13)
: : : : +- * Sort (27)
: : : : +- * Project (26)
: : : : +- Exchange (25)
: : : : +- * Project (24)
: : : : +- * Filter (23)
: : : : +- * ColumnarToRow (22)
: : : : +- Scan parquet (21)
: : : +- * Sort (36)
: : : +- Exchange (35)
: : : +- * Project (34)
: : : +- * Filter (33)
: : : +- * Scan ExistingRDD (32)
: : +- * Sort (45)
: : +- ObjectHashAggregate (44)
: : +- Exchange (43)
: : +- ObjectHashAggregate (42)
: : +- * Project (41)
: : +- * Filter (40)
: : +- * Scan ExistingRDD (39)
: +- * Sort (54)
: +- ObjectHashAggregate (53)
: +- Exchange (52)
: +- ObjectHashAggregate (51)
: +- * Project (50)
: +- * Filter (49)
: +- * Scan ExistingRDD (48)
+- * Sort (99)
+- Exchange (98)
+- Project (97)
+- * SortMergeJoin Inner (96)
:- * Sort (76)
: +- Exchange (75)
: +- * Filter (74)
: +- InMemoryTableScan (72)
: +- InMemoryRelation (73)
: +- * Filter (15)
: +- InMemoryTableScan (11)
: +- InMemoryRelation (12)
: +- * Filter (14)
: +- * Scan ExistingRDD (13)
+- * Sort (95)
+- * HashAggregate (94)
+- Exchange (93)
+- * HashAggregate (92)
+- * Project (91)
+- * BroadcastHashJoin Inner BuildLeft (90)
:- BroadcastExchange (83)
: +- * Project (82)
: +- * Generate (81)
: +- * Project (80)
: +- * Filter (79)
: +- InMemoryTableScan (77)
: +- InMemoryRelation (78)
: +- * Filter (15)
: +- InMemoryTableScan (11)
: +- InMemoryRelation (12)
: +- * Filter (14)
: +- * Scan ExistingRDD (13)
+- * Project (89)
+- Exchange (88)
+- * Project (87)
+- * Filter (86)
+- * ColumnarToRow (85)
+- Scan parquet (84)
(1) InMemoryTableScan
Output [1]: [shardId#3461394]
Arguments: [shardId#3461394]
(2) InMemoryRelation
Arguments: [shardId#3461394, orderProposals#3465538], StorageLevel(disk, memory, 2 replicas)
(3) InMemoryTableScan
Output [3]: [shardId#3461394, resultSeparationId#3465534L, orderProposals#3465538]
Arguments: [shardId#3461394, resultSeparationId#3465534L, orderProposals#3465538]
(4) InMemoryRelation
Arguments: [shardId#3461394, resultSeparationId#3465534L, orderProposals#3465538], StorageLevel(disk, memory, 2 replicas)
(5) InMemoryTableScan
Output [2]: [orderProposal#3463782, shardId#3461394]
Arguments: [orderProposal#3463782, shardId#3461394]
(6) InMemoryRelation
Arguments: [shardId#3461394, orderProposal#3463782], StorageLevel(disk, memory, 2 replicas)
(7) InMemoryTableScan
Output [39]: [availabilityDateTime#3462084, channelStreamSpecificKpis#3462885, constraintLabels#3462096, constraintOperators#3462097, constraintValues#3462099, deliveryDateTime#3462083, isFallbackOrderOnly#3462086, logisticUnits#3462101, measurements#3462094, minimumOrderQuantity#3462095, netPriceAmount#3462092, netPriceCurrencyCode#3462093, netPriceQuantity#3462089, netPriceQuantityUom#3462090, netPriceQuantityUomUuid#3462091, nextAvailabilityDateTime#3462085, optimizationGroups#3462102, orderDateTime#3462082, orderProposalId#3462064L, orderProposalItemGroupId#3462066, orderProposalItemId#3462065, orderQuantityBaseUom#3462087, orderQuantityBaseUomUuid#3462088, originalReplenishmentRunId#3462067L, plant#3462078, previousOrderProposal#3462070L, prodLocSpecificKpis#3462870, product#3462077, productGroup#3462106, qty#3461908, quantityAfterProdPlantOptimization#3461907, quantityKpis#3462898, shardId#3461394, sourceOfSupplyUuid#3462073, splitIndicator#3462069L, subrange#3462076, supplier#3462075, supplierGroup#3462074, supplyingPlant#3462105]
Arguments: [availabilityDateTime#3462084, channelStreamSpecificKpis#3462885, constraintLabels#3462096, constraintOperators#3462097, constraintValues#3462099, deliveryDateTime#3462083, isFallbackOrderOnly#3462086, logisticUnits#3462101, measurements#3462094, minimumOrderQuantity#3462095, netPriceAmount#3462092, netPriceCurrencyCode#3462093, netPriceQuantity#3462089, netPriceQuantityUom#3462090, netPriceQuantityUomUuid#3462091, nextAvailabilityDateTime#3462085, optimizationGroups#3462102, orderDateTime#3462082, orderProposalId#3462064L, orderProposalItemGroupId#3462066, orderProposalItemId#3462065, orderQuantityBaseUom#3462087, orderQuantityBaseUomUuid#3462088, originalReplenishmentRunId#3462067L, plant#3462078, ... 14 more fields], [NOT (isFallbackOrderOnly#3462086 <=> true)]
(8) InMemoryRelation
Arguments: [shardId#3461394, worklistShardItemId#3461906L, quantityAfterProdPlantOptimization#3461907, qty#3461908, orderProposalId#3462064L, originalReplenishmentRunId#3462067L, supplierGroup#3462074, supplier#3462075, supplyingPlant#3462105, productGroup#3462106, product#3462077, plant#3462078, subrange#3462076, orderDateTime#3462082, deliveryDateTime#3462083, availabilityDateTime#3462084, nextAvailabilityDateTime#3462085, constraintValues#3462099, constraintOperators#3462097, constraintLabels#3462096, logisticUnits#3462101, orderQuantityBaseUom#3462087, orderQuantityBaseUomUuid#3462088, splitIndicator#3462069L, netPriceAmount#3462092, ... 17 more fields], StorageLevel(disk, memory, 2 replicas)
(9) InMemoryTableScan
Output [2]: [shardId#3461394, items#3461396]
Arguments: [shardId#3461394, items#3461396], [(size(items#3461396, true) > 0), isnotnull(items#3461396)]
(10) InMemoryRelation
Arguments: [shardId#3461394, orderProposalId#3461395L, items#3461396, optimizationGroups#3461397, isOptimal#3461398, optimizationInsights#3461400], StorageLevel(disk, memory, 2 replicas)
(11) InMemoryTableScan
Output [6]: [shardId#3461394, orderProposalId#3461395L, items#3461396, optimizationGroups#3461397, isOptimal#3461398, optimizationInsights#3461400]
Arguments: [shardId#3461394, orderProposalId#3461395L, items#3461396, optimizationGroups#3461397, isOptimal#3461398, optimizationInsights#3461400], [isnotnull(shardId#3461394), (shardId#3461394 = 0_5_10000000532)]
(12) InMemoryRelation
Arguments: [shardId#3461394, orderProposalId#3461395L, items#3461396, optimizationGroups#3461397, isOptimal#3461398, lastModified#3461399, optimizationInsights#3461400], StorageLevel(disk, memory, 2 replicas)
(13) Scan ExistingRDD [codegen id : 1]
Output [7]: [shardId#3461394, orderProposalId#3461395L, items#3461396, optimizationGroups#3461397, isOptimal#3461398, lastModified#3461399, optimizationInsights#3461400]
Arguments: [shardId#3461394, orderProposalId#3461395L, items#3461396, optimizationGroups#3461397, isOptimal#3461398, lastModified#3461399, optimizationInsights#3461400], MapPartitionsRDD[147226] at start at FileStorageAdapterImpl.java:596, ExistingRDD, UnknownPartitioning(0)
(14) Filter [codegen id : 1]
Input [7]: [shardId#3461394, orderProposalId#3461395L, items#3461396, optimizationGroups#3461397, isOptimal#3461398, lastModified#3461399, optimizationInsights#3461400]
Condition : (isnotnull(shardId#3461394) AND (shardId#3461394 = 0_5_10000000532))
(15) Filter [codegen id : 1]
Input [6]: [shardId#3461394, orderProposalId#3461395L, items#3461396, optimizationGroups#3461397, isOptimal#3461398, optimizationInsights#3461400]
Condition : (isnotnull(shardId#3461394) AND (shardId#3461394 = 0_5_10000000532))
(16) Filter [codegen id : 1]
Input [2]: [shardId#3461394, items#3461396]
Condition : ((size(items#3461396, true) > 0) AND isnotnull(items#3461396))
(17) Generate [codegen id : 1]
Input [2]: [shardId#3461394, items#3461396]
Arguments: explode(items#3461396), [shardId#3461394], false, [item#3461905]
(18) Project [codegen id : 1]
Output [4]: [shardId#3461394, item#3461905.worklistShardItemId AS worklistShardItemId#3461906L, item#3461905.quantityAfterProdPlantOptimization AS quantityAfterProdPlantOptimization#3461907, item#3461905.qty AS qty#3461908]
Input [2]: [shardId#3461394, item#3461905]
(19) Exchange
Input [4]: [shardId#3461394, worklistShardItemId#3461906L, quantityAfterProdPlantOptimization#3461907, qty#3461908]
Arguments: hashpartitioning(worklistShardItemId#3461906L, 30), ENSURE_REQUIREMENTS, [plan_id=995018]
(20) Sort [codegen id : 2]
Input [4]: [shardId#3461394, worklistShardItemId#3461906L, quantityAfterProdPlantOptimization#3461907, qty#3461908]
Arguments: [worklistShardItemId#3461906L ASC NULLS FIRST], false, 0
(21) Scan parquet
Output [38]: [orderProposalId#3462107L, orderProposalItemId#3462108, supplierGroup#3462109, supplier#3462110, plant#3462111, deliveryDateTime#3462112, subrange#3462113, supplyingPlant#3462114, productGroup#3462115, product#3462116, orderDateTime#3462117, availabilityDateTime#3462118, nextAvailabilityDateTime#3462119, sourceOfSupplyUuid#3462121, isFallbackOrderOnly#3462124, splitIndicator#3462126L, previousOrderProposal#3462127L, worklistShardItemId#3462130L, orderProposalItemGroupId#3462131, externalProductId#3462132, externalPlantId#3462133, logisticUnits#3462134, orderQuantityBaseUom#3462135, orderQuantityBaseUomUuid#3462136, minimumOrderQuantity#3462137, constraintLabels#3462138, constraintOperators#3462139, constraintValues#3462140, netPriceAmount#3462143, netPriceCurrencyCode#3462144, netPriceQuantity#3462145, netPriceQuantityUom#3462146, netPriceQuantityUomUuid#3462147, measurements#3462148, originalReplenishmentRunId#3462149L, optimizationGroups#3462150, shardId#3462151, sequenceId#3462129]
Batched: true
Location: PreparedDeltaFileIndex [hdlfs://7da5304c-1f57-47fa-b75a-0f0b4349c280.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-qty-opt-service/internal/prod-plant-snapshot/10000000532]
PartitionFilters: [isnotnull(shardId#3462151), isnotnull(sequenceId#3462129), (shardId#3462151 = 0_5_10000000532), (sequenceId#3462129 = 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>>
(22) ColumnarToRow [codegen id : 3]
Input [38]: [orderProposalId#3462107L, orderProposalItemId#3462108, supplierGroup#3462109, supplier#3462110, plant#3462111, deliveryDateTime#3462112, subrange#3462113, supplyingPlant#3462114, productGroup#3462115, product#3462116, orderDateTime#3462117, availabilityDateTime#3462118, nextAvailabilityDateTime#3462119, sourceOfSupplyUuid#3462121, isFallbackOrderOnly#3462124, splitIndicator#3462126L, previousOrderProposal#3462127L, worklistShardItemId#3462130L, orderProposalItemGroupId#3462131, externalProductId#3462132, externalPlantId#3462133, logisticUnits#3462134, orderQuantityBaseUom#3462135, orderQuantityBaseUomUuid#3462136, minimumOrderQuantity#3462137, constraintLabels#3462138, constraintOperators#3462139, constraintValues#3462140, netPriceAmount#3462143, netPriceCurrencyCode#3462144, netPriceQuantity#3462145, netPriceQuantityUom#3462146, netPriceQuantityUomUuid#3462147, measurements#3462148, originalReplenishmentRunId#3462149L, optimizationGroups#3462150, shardId#3462151, sequenceId#3462129]
(23) Filter [codegen id : 3]
Input [38]: [orderProposalId#3462107L, orderProposalItemId#3462108, supplierGroup#3462109, supplier#3462110, plant#3462111, deliveryDateTime#3462112, subrange#3462113, supplyingPlant#3462114, productGroup#3462115, product#3462116, orderDateTime#3462117, availabilityDateTime#3462118, nextAvailabilityDateTime#3462119, sourceOfSupplyUuid#3462121, isFallbackOrderOnly#3462124, splitIndicator#3462126L, previousOrderProposal#3462127L, worklistShardItemId#3462130L, orderProposalItemGroupId#3462131, externalProductId#3462132, externalPlantId#3462133, logisticUnits#3462134, orderQuantityBaseUom#3462135, orderQuantityBaseUomUuid#3462136, minimumOrderQuantity#3462137, constraintLabels#3462138, constraintOperators#3462139, constraintValues#3462140, netPriceAmount#3462143, netPriceCurrencyCode#3462144, netPriceQuantity#3462145, netPriceQuantityUom#3462146, netPriceQuantityUomUuid#3462147, measurements#3462148, originalReplenishmentRunId#3462149L, optimizationGroups#3462150, shardId#3462151, sequenceId#3462129]
Condition : isnotnull(worklistShardItemId#3462130L)
(24) Project [codegen id : 3]
Output [36]: [orderProposalId#3462107L, orderProposalItemId#3462108, supplierGroup#3462109, supplier#3462110, plant#3462111, deliveryDateTime#3462112, subrange#3462113, supplyingPlant#3462114, productGroup#3462115, product#3462116, orderDateTime#3462117, availabilityDateTime#3462118, nextAvailabilityDateTime#3462119, sourceOfSupplyUuid#3462121, isFallbackOrderOnly#3462124, splitIndicator#3462126L, previousOrderProposal#3462127L, worklistShardItemId#3462130L, orderProposalItemGroupId#3462131, externalProductId#3462132, externalPlantId#3462133, logisticUnits#3462134, orderQuantityBaseUom#3462135, orderQuantityBaseUomUuid#3462136, minimumOrderQuantity#3462137, constraintLabels#3462138, constraintOperators#3462139, constraintValues#3462140, netPriceAmount#3462143, netPriceCurrencyCode#3462144, netPriceQuantity#3462145, netPriceQuantityUom#3462146, netPriceQuantityUomUuid#3462147, measurements#3462148, originalReplenishmentRunId#3462149L, optimizationGroups#3462150]
Input [38]: [orderProposalId#3462107L, orderProposalItemId#3462108, supplierGroup#3462109, supplier#3462110, plant#3462111, deliveryDateTime#3462112, subrange#3462113, supplyingPlant#3462114, productGroup#3462115, product#3462116, orderDateTime#3462117, availabilityDateTime#3462118, nextAvailabilityDateTime#3462119, sourceOfSupplyUuid#3462121, isFallbackOrderOnly#3462124, splitIndicator#3462126L, previousOrderProposal#3462127L, worklistShardItemId#3462130L, orderProposalItemGroupId#3462131, externalProductId#3462132, externalPlantId#3462133, logisticUnits#3462134, orderQuantityBaseUom#3462135, orderQuantityBaseUomUuid#3462136, minimumOrderQuantity#3462137, constraintLabels#3462138, constraintOperators#3462139, constraintValues#3462140, netPriceAmount#3462143, netPriceCurrencyCode#3462144, netPriceQuantity#3462145, netPriceQuantityUom#3462146, netPriceQuantityUomUuid#3462147, measurements#3462148, originalReplenishmentRunId#3462149L, optimizationGroups#3462150, shardId#3462151, sequenceId#3462129]
(25) Exchange
Input [36]: [orderProposalId#3462107L, orderProposalItemId#3462108, supplierGroup#3462109, supplier#3462110, plant#3462111, deliveryDateTime#3462112, subrange#3462113, supplyingPlant#3462114, productGroup#3462115, product#3462116, orderDateTime#3462117, availabilityDateTime#3462118, nextAvailabilityDateTime#3462119, sourceOfSupplyUuid#3462121, isFallbackOrderOnly#3462124, splitIndicator#3462126L, previousOrderProposal#3462127L, worklistShardItemId#3462130L, orderProposalItemGroupId#3462131, externalProductId#3462132, externalPlantId#3462133, logisticUnits#3462134, orderQuantityBaseUom#3462135, orderQuantityBaseUomUuid#3462136, minimumOrderQuantity#3462137, constraintLabels#3462138, constraintOperators#3462139, constraintValues#3462140, netPriceAmount#3462143, netPriceCurrencyCode#3462144, netPriceQuantity#3462145, netPriceQuantityUom#3462146, netPriceQuantityUomUuid#3462147, measurements#3462148, originalReplenishmentRunId#3462149L, optimizationGroups#3462150]
Arguments: hashpartitioning(worklistShardItemId#3462130L, 30), REPARTITION_BY_NUM, [plan_id=995028]
(26) Project [codegen id : 4]
Output [36]: [worklistShardItemId#3462130L, orderProposalId#3462107L, orderProposalItemId#3462108, orderProposalItemGroupId#3462131, originalReplenishmentRunId#3462149L, splitIndicator#3462126L, previousOrderProposal#3462127L, sourceOfSupplyUuid#3462121, supplierGroup#3462109, supplier#3462110, subrange#3462113, product#3462116, plant#3462111, orderDateTime#3462117, deliveryDateTime#3462112, availabilityDateTime#3462118, nextAvailabilityDateTime#3462119, isFallbackOrderOnly#3462124, orderQuantityBaseUom#3462135, orderQuantityBaseUomUuid#3462136, netPriceQuantity#3462145, netPriceQuantityUom#3462146, netPriceQuantityUomUuid#3462147, netPriceAmount#3462143, netPriceCurrencyCode#3462144, measurements#3462148, minimumOrderQuantity#3462137, constraintLabels#3462138, constraintOperators#3462139, constraintValues#3462140, logisticUnits#3462134, optimizationGroups#3462150, externalProductId#3462132, externalPlantId#3462133, supplyingPlant#3462114, productGroup#3462115]
Input [36]: [orderProposalId#3462107L, orderProposalItemId#3462108, supplierGroup#3462109, supplier#3462110, plant#3462111, deliveryDateTime#3462112, subrange#3462113, supplyingPlant#3462114, productGroup#3462115, product#3462116, orderDateTime#3462117, availabilityDateTime#3462118, nextAvailabilityDateTime#3462119, sourceOfSupplyUuid#3462121, isFallbackOrderOnly#3462124, splitIndicator#3462126L, previousOrderProposal#3462127L, worklistShardItemId#3462130L, orderProposalItemGroupId#3462131, externalProductId#3462132, externalPlantId#3462133, logisticUnits#3462134, orderQuantityBaseUom#3462135, orderQuantityBaseUomUuid#3462136, minimumOrderQuantity#3462137, constraintLabels#3462138, constraintOperators#3462139, constraintValues#3462140, netPriceAmount#3462143, netPriceCurrencyCode#3462144, netPriceQuantity#3462145, netPriceQuantityUom#3462146, netPriceQuantityUomUuid#3462147, measurements#3462148, originalReplenishmentRunId#3462149L, optimizationGroups#3462150]
(27) Sort [codegen id : 4]
Input [36]: [worklistShardItemId#3462130L, orderProposalId#3462107L, orderProposalItemId#3462108, orderProposalItemGroupId#3462131, originalReplenishmentRunId#3462149L, splitIndicator#3462126L, previousOrderProposal#3462127L, sourceOfSupplyUuid#3462121, supplierGroup#3462109, supplier#3462110, subrange#3462113, product#3462116, plant#3462111, orderDateTime#3462117, deliveryDateTime#3462112, availabilityDateTime#3462118, nextAvailabilityDateTime#3462119, isFallbackOrderOnly#3462124, orderQuantityBaseUom#3462135, orderQuantityBaseUomUuid#3462136, netPriceQuantity#3462145, netPriceQuantityUom#3462146, netPriceQuantityUomUuid#3462147, netPriceAmount#3462143, netPriceCurrencyCode#3462144, measurements#3462148, minimumOrderQuantity#3462137, constraintLabels#3462138, constraintOperators#3462139, constraintValues#3462140, logisticUnits#3462134, optimizationGroups#3462150, externalProductId#3462132, externalPlantId#3462133, supplyingPlant#3462114, productGroup#3462115]
Arguments: [worklistShardItemId#3462130L ASC NULLS FIRST], false, 0
(28) SortMergeJoin [codegen id : 5]
Left keys [1]: [worklistShardItemId#3461906L]
Right keys [1]: [worklistShardItemId#3462130L]
Join type: LeftOuter
Join condition: (shardId#3461394 = 0_5_10000000532)
(29) Project [codegen id : 5]
Output [39]: [shardId#3461394, worklistShardItemId#3461906L, quantityAfterProdPlantOptimization#3461907, qty#3461908, orderProposalId#3462107L, originalReplenishmentRunId#3462149L, supplierGroup#3462109, supplier#3462110, supplyingPlant#3462114, productGroup#3462115, product#3462116, plant#3462111, subrange#3462113, orderDateTime#3462117, deliveryDateTime#3462112, availabilityDateTime#3462118, nextAvailabilityDateTime#3462119, constraintValues#3462140, constraintOperators#3462139, constraintLabels#3462138, logisticUnits#3462134, orderQuantityBaseUom#3462135, orderQuantityBaseUomUuid#3462136, splitIndicator#3462126L, netPriceAmount#3462143, netPriceCurrencyCode#3462144, netPriceQuantity#3462145, netPriceQuantityUom#3462146, netPriceQuantityUomUuid#3462147, sourceOfSupplyUuid#3462121, minimumOrderQuantity#3462137, orderProposalItemId#3462108, orderProposalItemGroupId#3462131, optimizationGroups#3462150, measurements#3462148, externalProductId#3462132, externalPlantId#3462133, previousOrderProposal#3462127L, isFallbackOrderOnly#3462124]
Input [40]: [shardId#3461394, worklistShardItemId#3461906L, quantityAfterProdPlantOptimization#3461907, qty#3461908, worklistShardItemId#3462130L, orderProposalId#3462107L, orderProposalItemId#3462108, orderProposalItemGroupId#3462131, originalReplenishmentRunId#3462149L, splitIndicator#3462126L, previousOrderProposal#3462127L, sourceOfSupplyUuid#3462121, supplierGroup#3462109, supplier#3462110, subrange#3462113, product#3462116, plant#3462111, orderDateTime#3462117, deliveryDateTime#3462112, availabilityDateTime#3462118, nextAvailabilityDateTime#3462119, isFallbackOrderOnly#3462124, orderQuantityBaseUom#3462135, orderQuantityBaseUomUuid#3462136, netPriceQuantity#3462145, netPriceQuantityUom#3462146, netPriceQuantityUomUuid#3462147, netPriceAmount#3462143, netPriceCurrencyCode#3462144, measurements#3462148, minimumOrderQuantity#3462137, constraintLabels#3462138, constraintOperators#3462139, constraintValues#3462140, logisticUnits#3462134, optimizationGroups#3462150, externalProductId#3462132, externalPlantId#3462133, supplyingPlant#3462114, productGroup#3462115]
(30) Exchange
Input [39]: [shardId#3461394, worklistShardItemId#3461906L, quantityAfterProdPlantOptimization#3461907, qty#3461908, orderProposalId#3462107L, originalReplenishmentRunId#3462149L, supplierGroup#3462109, supplier#3462110, supplyingPlant#3462114, productGroup#3462115, product#3462116, plant#3462111, subrange#3462113, orderDateTime#3462117, deliveryDateTime#3462112, availabilityDateTime#3462118, nextAvailabilityDateTime#3462119, constraintValues#3462140, constraintOperators#3462139, constraintLabels#3462138, logisticUnits#3462134, orderQuantityBaseUom#3462135, orderQuantityBaseUomUuid#3462136, splitIndicator#3462126L, netPriceAmount#3462143, netPriceCurrencyCode#3462144, netPriceQuantity#3462145, netPriceQuantityUom#3462146, netPriceQuantityUomUuid#3462147, sourceOfSupplyUuid#3462121, minimumOrderQuantity#3462137, orderProposalItemId#3462108, orderProposalItemGroupId#3462131, optimizationGroups#3462150, measurements#3462148, externalProductId#3462132, externalPlantId#3462133, previousOrderProposal#3462127L, isFallbackOrderOnly#3462124]
Arguments: hashpartitioning(shardId#3461394, worklistShardItemId#3461906L, 30), ENSURE_REQUIREMENTS, [plan_id=995037]
(31) Sort [codegen id : 6]
Input [39]: [shardId#3461394, worklistShardItemId#3461906L, quantityAfterProdPlantOptimization#3461907, qty#3461908, orderProposalId#3462107L, originalReplenishmentRunId#3462149L, supplierGroup#3462109, supplier#3462110, supplyingPlant#3462114, productGroup#3462115, product#3462116, plant#3462111, subrange#3462113, orderDateTime#3462117, deliveryDateTime#3462112, availabilityDateTime#3462118, nextAvailabilityDateTime#3462119, constraintValues#3462140, constraintOperators#3462139, constraintLabels#3462138, logisticUnits#3462134, orderQuantityBaseUom#3462135, orderQuantityBaseUomUuid#3462136, splitIndicator#3462126L, netPriceAmount#3462143, netPriceCurrencyCode#3462144, netPriceQuantity#3462145, netPriceQuantityUom#3462146, netPriceQuantityUomUuid#3462147, sourceOfSupplyUuid#3462121, minimumOrderQuantity#3462137, orderProposalItemId#3462108, orderProposalItemGroupId#3462131, optimizationGroups#3462150, measurements#3462148, externalProductId#3462132, externalPlantId#3462133, previousOrderProposal#3462127L, isFallbackOrderOnly#3462124]
Arguments: [shardId#3461394 ASC NULLS FIRST, worklistShardItemId#3461906L ASC NULLS FIRST], false, 0
(32) Scan ExistingRDD [codegen id : 7]
Output [6]: [shardId#3462863, worklistShardItemId#3462864L, qty#3462865, demandChannel#3462866, demandStream#3462867, kpis#3462868]
Arguments: [shardId#3462863, worklistShardItemId#3462864L, qty#3462865, demandChannel#3462866, demandStream#3462867, kpis#3462868], MapPartitionsRDD[147310] at start at FileStorageAdapterImpl.java:596, ExistingRDD, UnknownPartitioning(0)
(33) Filter [codegen id : 7]
Input [6]: [shardId#3462863, worklistShardItemId#3462864L, qty#3462865, demandChannel#3462866, demandStream#3462867, kpis#3462868]
Condition : (((isnull(qty#3462865) AND isnull(demandChannel#3462866)) AND isnull(demandStream#3462867)) AND (isnotnull(shardId#3462863) AND isnotnull(worklistShardItemId#3462864L)))
(34) Project [codegen id : 7]
Output [3]: [shardId#3462863, worklistShardItemId#3462864L, coalesce(kpis#3462868, []) AS prodLocSpecificKpis#3462869]
Input [6]: [shardId#3462863, worklistShardItemId#3462864L, qty#3462865, demandChannel#3462866, demandStream#3462867, kpis#3462868]
(35) Exchange
Input [3]: [shardId#3462863, worklistShardItemId#3462864L, prodLocSpecificKpis#3462869]
Arguments: hashpartitioning(shardId#3462863, worklistShardItemId#3462864L, 30), ENSURE_REQUIREMENTS, [plan_id=995043]
(36) Sort [codegen id : 8]
Input [3]: [shardId#3462863, worklistShardItemId#3462864L, prodLocSpecificKpis#3462869]
Arguments: [shardId#3462863 ASC NULLS FIRST, worklistShardItemId#3462864L ASC NULLS FIRST], false, 0
(37) SortMergeJoin [codegen id : 9]
Left keys [2]: [shardId#3461394, worklistShardItemId#3461906L]
Right keys [2]: [shardId#3462863, worklistShardItemId#3462864L]
Join type: LeftOuter
Join condition: None
(38) Project [codegen id : 9]
Output [40]: [shardId#3461394, worklistShardItemId#3461906L, quantityAfterProdPlantOptimization#3461907, qty#3461908, orderProposalId#3462107L, originalReplenishmentRunId#3462149L, supplierGroup#3462109, supplier#3462110, supplyingPlant#3462114, productGroup#3462115, product#3462116, plant#3462111, subrange#3462113, orderDateTime#3462117, deliveryDateTime#3462112, availabilityDateTime#3462118, nextAvailabilityDateTime#3462119, constraintValues#3462140, constraintOperators#3462139, constraintLabels#3462138, logisticUnits#3462134, orderQuantityBaseUom#3462135, orderQuantityBaseUomUuid#3462136, splitIndicator#3462126L, netPriceAmount#3462143, netPriceCurrencyCode#3462144, netPriceQuantity#3462145, netPriceQuantityUom#3462146, netPriceQuantityUomUuid#3462147, sourceOfSupplyUuid#3462121, minimumOrderQuantity#3462137, orderProposalItemId#3462108, orderProposalItemGroupId#3462131, optimizationGroups#3462150, measurements#3462148, externalProductId#3462132, externalPlantId#3462133, previousOrderProposal#3462127L, isFallbackOrderOnly#3462124, coalesce(prodLocSpecificKpis#3462869, []) AS prodLocSpecificKpis#3462870]
Input [42]: [shardId#3461394, worklistShardItemId#3461906L, quantityAfterProdPlantOptimization#3461907, qty#3461908, orderProposalId#3462107L, originalReplenishmentRunId#3462149L, supplierGroup#3462109, supplier#3462110, supplyingPlant#3462114, productGroup#3462115, product#3462116, plant#3462111, subrange#3462113, orderDateTime#3462117, deliveryDateTime#3462112, availabilityDateTime#3462118, nextAvailabilityDateTime#3462119, constraintValues#3462140, constraintOperators#3462139, constraintLabels#3462138, logisticUnits#3462134, orderQuantityBaseUom#3462135, orderQuantityBaseUomUuid#3462136, splitIndicator#3462126L, netPriceAmount#3462143, netPriceCurrencyCode#3462144, netPriceQuantity#3462145, netPriceQuantityUom#3462146, netPriceQuantityUomUuid#3462147, sourceOfSupplyUuid#3462121, minimumOrderQuantity#3462137, orderProposalItemId#3462108, orderProposalItemGroupId#3462131, optimizationGroups#3462150, measurements#3462148, externalProductId#3462132, externalPlantId#3462133, previousOrderProposal#3462127L, isFallbackOrderOnly#3462124, shardId#3462863, worklistShardItemId#3462864L, prodLocSpecificKpis#3462869]
(39) Scan ExistingRDD [codegen id : 10]
Output [6]: [shardId#3462879, worklistShardItemId#3462880L, qty#3462881, demandChannel#3462882, demandStream#3462883, kpis#3462884]
Arguments: [shardId#3462879, worklistShardItemId#3462880L, qty#3462881, demandChannel#3462882, demandStream#3462883, kpis#3462884], MapPartitionsRDD[147310] at start at FileStorageAdapterImpl.java:596, ExistingRDD, UnknownPartitioning(0)
(40) Filter [codegen id : 10]
Input [6]: [shardId#3462879, worklistShardItemId#3462880L, qty#3462881, demandChannel#3462882, demandStream#3462883, kpis#3462884]
Condition : ((((isnull(qty#3462881) AND isnotnull(demandChannel#3462882)) AND isnotnull(demandStream#3462883)) AND (size(kpis#3462884, true) > 0)) AND (isnotnull(shardId#3462879) AND isnotnull(worklistShardItemId#3462880L)))
(41) Project [codegen id : 10]
Output [5]: [shardId#3462879, worklistShardItemId#3462880L, demandChannel#3462882, demandStream#3462883, kpis#3462884]
Input [6]: [shardId#3462879, worklistShardItemId#3462880L, qty#3462881, demandChannel#3462882, demandStream#3462883, kpis#3462884]
(42) ObjectHashAggregate
Input [5]: [shardId#3462879, worklistShardItemId#3462880L, demandChannel#3462882, demandStream#3462883, kpis#3462884]
Keys [2]: [shardId#3462879, worklistShardItemId#3462880L]
Functions [1]: [partial_collect_list(struct(demandChannel, demandChannel#3462882, demandStream, demandStream#3462883, kpis, kpis#3462884), 0, 0)]
Aggregate Attributes [1]: [buf#3463059]
Results [3]: [shardId#3462879, worklistShardItemId#3462880L, buf#3463060]
(43) Exchange
Input [3]: [shardId#3462879, worklistShardItemId#3462880L, buf#3463060]
Arguments: hashpartitioning(shardId#3462879, worklistShardItemId#3462880L, 30), ENSURE_REQUIREMENTS, [plan_id=995054]
(44) ObjectHashAggregate
Input [3]: [shardId#3462879, worklistShardItemId#3462880L, buf#3463060]
Keys [2]: [shardId#3462879, worklistShardItemId#3462880L]
Functions [1]: [collect_list(struct(demandChannel, demandChannel#3462882, demandStream, demandStream#3462883, kpis, kpis#3462884), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(demandChannel, demandChannel#3462882, demandStream, demandStream#3462883, kpis, kpis#3462884), 0, 0)#3462878]
Results [3]: [shardId#3462879, worklistShardItemId#3462880L, collect_list(struct(demandChannel, demandChannel#3462882, demandStream, demandStream#3462883, kpis, kpis#3462884), 0, 0)#3462878 AS channelStreamSpecificKpis#3462871]
(45) Sort [codegen id : 11]
Input [3]: [shardId#3462879, worklistShardItemId#3462880L, channelStreamSpecificKpis#3462871]
Arguments: [shardId#3462879 ASC NULLS FIRST, worklistShardItemId#3462880L ASC NULLS FIRST], false, 0
(46) SortMergeJoin [codegen id : 12]
Left keys [2]: [shardId#3461394, worklistShardItemId#3461906L]
Right keys [2]: [shardId#3462879, worklistShardItemId#3462880L]
Join type: LeftOuter
Join condition: None
(47) Project [codegen id : 12]
Output [41]: [shardId#3461394, worklistShardItemId#3461906L, quantityAfterProdPlantOptimization#3461907, qty#3461908, orderProposalId#3462107L, originalReplenishmentRunId#3462149L, supplierGroup#3462109, supplier#3462110, supplyingPlant#3462114, productGroup#3462115, product#3462116, plant#3462111, subrange#3462113, orderDateTime#3462117, deliveryDateTime#3462112, availabilityDateTime#3462118, nextAvailabilityDateTime#3462119, constraintValues#3462140, constraintOperators#3462139, constraintLabels#3462138, logisticUnits#3462134, orderQuantityBaseUom#3462135, orderQuantityBaseUomUuid#3462136, splitIndicator#3462126L, netPriceAmount#3462143, netPriceCurrencyCode#3462144, netPriceQuantity#3462145, netPriceQuantityUom#3462146, netPriceQuantityUomUuid#3462147, sourceOfSupplyUuid#3462121, minimumOrderQuantity#3462137, orderProposalItemId#3462108, orderProposalItemGroupId#3462131, optimizationGroups#3462150, measurements#3462148, externalProductId#3462132, externalPlantId#3462133, previousOrderProposal#3462127L, isFallbackOrderOnly#3462124, prodLocSpecificKpis#3462870, coalesce(channelStreamSpecificKpis#3462871, []) AS channelStreamSpecificKpis#3462885]
Input [43]: [shardId#3461394, worklistShardItemId#3461906L, quantityAfterProdPlantOptimization#3461907, qty#3461908, orderProposalId#3462107L, originalReplenishmentRunId#3462149L, supplierGroup#3462109, supplier#3462110, supplyingPlant#3462114, productGroup#3462115, product#3462116, plant#3462111, subrange#3462113, orderDateTime#3462117, deliveryDateTime#3462112, availabilityDateTime#3462118, nextAvailabilityDateTime#3462119, constraintValues#3462140, constraintOperators#3462139, constraintLabels#3462138, logisticUnits#3462134, orderQuantityBaseUom#3462135, orderQuantityBaseUomUuid#3462136, splitIndicator#3462126L, netPriceAmount#3462143, netPriceCurrencyCode#3462144, netPriceQuantity#3462145, netPriceQuantityUom#3462146, netPriceQuantityUomUuid#3462147, sourceOfSupplyUuid#3462121, minimumOrderQuantity#3462137, orderProposalItemId#3462108, orderProposalItemGroupId#3462131, optimizationGroups#3462150, measurements#3462148, externalProductId#3462132, externalPlantId#3462133, previousOrderProposal#3462127L, isFallbackOrderOnly#3462124, prodLocSpecificKpis#3462870, shardId#3462879, worklistShardItemId#3462880L, channelStreamSpecificKpis#3462871]
(48) Scan ExistingRDD [codegen id : 13]
Output [6]: [shardId#3462892, worklistShardItemId#3462893L, qty#3462894, demandChannel#3462895, demandStream#3462896, kpis#3462897]
Arguments: [shardId#3462892, worklistShardItemId#3462893L, qty#3462894, demandChannel#3462895, demandStream#3462896, kpis#3462897], MapPartitionsRDD[147310] at start at FileStorageAdapterImpl.java:596, ExistingRDD, UnknownPartitioning(0)
(49) Filter [codegen id : 13]
Input [6]: [shardId#3462892, worklistShardItemId#3462893L, qty#3462894, demandChannel#3462895, demandStream#3462896, kpis#3462897]
Condition : ((isnotnull(qty#3462894) AND isnotnull(kpis#3462897)) AND (isnotnull(shardId#3462892) AND isnotnull(worklistShardItemId#3462893L)))
(50) Project [codegen id : 13]
Output [4]: [shardId#3462892, worklistShardItemId#3462893L, qty#3462894, kpis#3462897]
Input [6]: [shardId#3462892, worklistShardItemId#3462893L, qty#3462894, demandChannel#3462895, demandStream#3462896, kpis#3462897]
(51) ObjectHashAggregate
Input [4]: [shardId#3462892, worklistShardItemId#3462893L, qty#3462894, kpis#3462897]
Keys [2]: [shardId#3462892, worklistShardItemId#3462893L]
Functions [1]: [partial_collect_list(struct(qty, qty#3462894, kpis, kpis#3462897), 0, 0)]
Aggregate Attributes [1]: [buf#3463061]
Results [3]: [shardId#3462892, worklistShardItemId#3462893L, buf#3463062]
(52) Exchange
Input [3]: [shardId#3462892, worklistShardItemId#3462893L, buf#3463062]
Arguments: hashpartitioning(shardId#3462892, worklistShardItemId#3462893L, 30), ENSURE_REQUIREMENTS, [plan_id=995066]
(53) ObjectHashAggregate
Input [3]: [shardId#3462892, worklistShardItemId#3462893L, buf#3463062]
Keys [2]: [shardId#3462892, worklistShardItemId#3462893L]
Functions [1]: [collect_list(struct(qty, qty#3462894, kpis, kpis#3462897), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(qty, qty#3462894, kpis, kpis#3462897), 0, 0)#3462891]
Results [3]: [shardId#3462892, worklistShardItemId#3462893L, map_from_entries(collect_list(struct(qty, qty#3462894, kpis, kpis#3462897), 0, 0)#3462891) AS quantityKpis#3462886]
(54) Sort [codegen id : 14]
Input [3]: [shardId#3462892, worklistShardItemId#3462893L, quantityKpis#3462886]
Arguments: [shardId#3462892 ASC NULLS FIRST, worklistShardItemId#3462893L ASC NULLS FIRST], false, 0
(55) SortMergeJoin [codegen id : 15]
Left keys [2]: [shardId#3461394, worklistShardItemId#3461906L]
Right keys [2]: [shardId#3462892, worklistShardItemId#3462893L]
Join type: LeftOuter
Join condition: None
(56) Project [codegen id : 15]
Output [42]: [shardId#3461394, worklistShardItemId#3461906L, quantityAfterProdPlantOptimization#3461907, qty#3461908, orderProposalId#3462107L, originalReplenishmentRunId#3462149L, supplierGroup#3462109, supplier#3462110, supplyingPlant#3462114, productGroup#3462115, product#3462116, plant#3462111, subrange#3462113, orderDateTime#3462117, deliveryDateTime#3462112, availabilityDateTime#3462118, nextAvailabilityDateTime#3462119, constraintValues#3462140, constraintOperators#3462139, constraintLabels#3462138, logisticUnits#3462134, orderQuantityBaseUom#3462135, orderQuantityBaseUomUuid#3462136, splitIndicator#3462126L, netPriceAmount#3462143, netPriceCurrencyCode#3462144, netPriceQuantity#3462145, netPriceQuantityUom#3462146, netPriceQuantityUomUuid#3462147, sourceOfSupplyUuid#3462121, minimumOrderQuantity#3462137, orderProposalItemId#3462108, orderProposalItemGroupId#3462131, optimizationGroups#3462150, measurements#3462148, externalProductId#3462132, externalPlantId#3462133, previousOrderProposal#3462127L, isFallbackOrderOnly#3462124, prodLocSpecificKpis#3462870, channelStreamSpecificKpis#3462885, coalesce(quantityKpis#3462886, map(keys: [], values: [])) AS quantityKpis#3462898]
Input [44]: [shardId#3461394, worklistShardItemId#3461906L, quantityAfterProdPlantOptimization#3461907, qty#3461908, orderProposalId#3462107L, originalReplenishmentRunId#3462149L, supplierGroup#3462109, supplier#3462110, supplyingPlant#3462114, productGroup#3462115, product#3462116, plant#3462111, subrange#3462113, orderDateTime#3462117, deliveryDateTime#3462112, availabilityDateTime#3462118, nextAvailabilityDateTime#3462119, constraintValues#3462140, constraintOperators#3462139, constraintLabels#3462138, logisticUnits#3462134, orderQuantityBaseUom#3462135, orderQuantityBaseUomUuid#3462136, splitIndicator#3462126L, netPriceAmount#3462143, netPriceCurrencyCode#3462144, netPriceQuantity#3462145, netPriceQuantityUom#3462146, netPriceQuantityUomUuid#3462147, sourceOfSupplyUuid#3462121, minimumOrderQuantity#3462137, orderProposalItemId#3462108, orderProposalItemGroupId#3462131, optimizationGroups#3462150, measurements#3462148, externalProductId#3462132, externalPlantId#3462133, previousOrderProposal#3462127L, isFallbackOrderOnly#3462124, prodLocSpecificKpis#3462870, channelStreamSpecificKpis#3462885, shardId#3462892, worklistShardItemId#3462893L, quantityKpis#3462886]
(57) Filter [codegen id : 1]
Input [39]: [availabilityDateTime#3462084, channelStreamSpecificKpis#3462885, constraintLabels#3462096, constraintOperators#3462097, constraintValues#3462099, deliveryDateTime#3462083, isFallbackOrderOnly#3462086, logisticUnits#3462101, measurements#3462094, minimumOrderQuantity#3462095, netPriceAmount#3462092, netPriceCurrencyCode#3462093, netPriceQuantity#3462089, netPriceQuantityUom#3462090, netPriceQuantityUomUuid#3462091, nextAvailabilityDateTime#3462085, optimizationGroups#3462102, orderDateTime#3462082, orderProposalId#3462064L, orderProposalItemGroupId#3462066, orderProposalItemId#3462065, orderQuantityBaseUom#3462087, orderQuantityBaseUomUuid#3462088, originalReplenishmentRunId#3462067L, plant#3462078, previousOrderProposal#3462070L, prodLocSpecificKpis#3462870, product#3462077, productGroup#3462106, qty#3461908, quantityAfterProdPlantOptimization#3461907, quantityKpis#3462898, shardId#3461394, sourceOfSupplyUuid#3462073, splitIndicator#3462069L, subrange#3462076, supplier#3462075, supplierGroup#3462074, supplyingPlant#3462105]
Condition : NOT (isFallbackOrderOnly#3462086 <=> true)
(58) Project [codegen id : 1]
Output [36]: [shardId#3461394, quantityAfterProdPlantOptimization#3461907, qty#3461908, orderProposalId#3462064L, originalReplenishmentRunId#3462067L, supplierGroup#3462074, supplier#3462075, supplyingPlant#3462105, productGroup#3462106, product#3462077, plant#3462078, subrange#3462076, orderDateTime#3462082, deliveryDateTime#3462083, availabilityDateTime#3462084, nextAvailabilityDateTime#3462085, logisticUnits#3462101, orderQuantityBaseUom#3462087, orderQuantityBaseUomUuid#3462088, splitIndicator#3462069L, netPriceAmount#3462092, netPriceCurrencyCode#3462093, netPriceQuantity#3462089, netPriceQuantityUom#3462090, netPriceQuantityUomUuid#3462091, sourceOfSupplyUuid#3462073, minimumOrderQuantity#3462095, orderProposalItemId#3462065, orderProposalItemGroupId#3462066, optimizationGroups#3462102, measurements#3462094, previousOrderProposal#3462070L, prodLocSpecificKpis#3462870, channelStreamSpecificKpis#3462885, quantityKpis#3462898, arrays_zip(constraintLabels#3462096, constraintOperators#3462097, constraintValues#3462099, constraintLabels, constraintOperators, constraintValues) AS constraintStructArray#3463312]
Input [39]: [availabilityDateTime#3462084, channelStreamSpecificKpis#3462885, constraintLabels#3462096, constraintOperators#3462097, constraintValues#3462099, deliveryDateTime#3462083, isFallbackOrderOnly#3462086, logisticUnits#3462101, measurements#3462094, minimumOrderQuantity#3462095, netPriceAmount#3462092, netPriceCurrencyCode#3462093, netPriceQuantity#3462089, netPriceQuantityUom#3462090, netPriceQuantityUomUuid#3462091, nextAvailabilityDateTime#3462085, optimizationGroups#3462102, orderDateTime#3462082, orderProposalId#3462064L, orderProposalItemGroupId#3462066, orderProposalItemId#3462065, orderQuantityBaseUom#3462087, orderQuantityBaseUomUuid#3462088, originalReplenishmentRunId#3462067L, plant#3462078, previousOrderProposal#3462070L, prodLocSpecificKpis#3462870, product#3462077, productGroup#3462106, qty#3461908, quantityAfterProdPlantOptimization#3461907, quantityKpis#3462898, shardId#3461394, sourceOfSupplyUuid#3462073, splitIndicator#3462069L, subrange#3462076, supplier#3462075, supplierGroup#3462074, supplyingPlant#3462105]
(59) Project
Output [37]: [shardId#3461394, qty#3461908, orderProposalId#3462064L, originalReplenishmentRunId#3462067L, supplierGroup#3462074, supplier#3462075, supplyingPlant#3462105, productGroup#3462106, product#3462077, plant#3462078, subrange#3462076, orderDateTime#3462082, deliveryDateTime#3462083, availabilityDateTime#3462084, nextAvailabilityDateTime#3462085, logisticUnits#3462101, orderQuantityBaseUom#3462087, orderQuantityBaseUomUuid#3462088, splitIndicator#3462069L, netPriceAmount#3462092, netPriceCurrencyCode#3462093, netPriceQuantity#3462089, netPriceQuantityUom#3462090, netPriceQuantityUomUuid#3462091, sourceOfSupplyUuid#3462073, orderProposalItemId#3462065, orderProposalItemGroupId#3462066, optimizationGroups#3462102, measurements#3462094, previousOrderProposal#3462070L, prodLocSpecificKpis#3462870, channelStreamSpecificKpis#3462885, quantityKpis#3462898, struct(minServiceLevel, array_min(filter(constraintStructArray#3463312, lambdafunction((lambda x_11470#3463319.constraintLabels = ServiceLevel), lambda x_11470#3463319, false)).constraintValues), minServiceLevelMinStock, array_min(filter(constraintStructArray#3463312, lambdafunction((lambda x_11471#3463320.constraintLabels = ServiceLevelMinimumStock), lambda x_11471#3463320, false)).constraintValues), maxServiceLevelEndOfListing, array_min(filter(constraintStructArray#3463312, lambdafunction((lambda x_11472#3463321.constraintLabels = ServiceLevelAtStartOfDelisting), lambda x_11472#3463321, false)).constraintValues), maxRoc, array_min(filter(constraintStructArray#3463312, lambdafunction((lambda x_11473#3463322.constraintLabels = RangeOfCoverage), lambda x_11473#3463322, false)).constraintValues), minimumOrderQuantity, minimumOrderQuantity#3462095, endOfListingDateTime, coalesce(filter(prodLocSpecificKpis#3462870, lambdafunction((lambda x_11474#3463323.label = NonListingStartTimestamp), lambda x_11474#3463323, false))[0].dateTime, 1970-01-01 00:00:00)) AS constraintBenchmark#3463318, CASE WHEN (qty#3461908 <=> quantityAfterProdPlantOptimization#3461907) THEN array(struct(isProposedCandidate, true, isProdlocOptimalCandidate, true, candidateOrderQuantity, coalesce((qty#3461908 * (cast(element_at(filter(logisticUnits#3462101, lambdafunction(lambda x_11475#3463391.isOrderUnit, lambda x_11475#3463391, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#3462101, lambdafunction(lambda x_11475#3463392.isOrderUnit, lambda x_11475#3463392, false)), 1, None, false).numerator as double))), qty#3461908), orderQuantityUom, coalesce(element_at(filter(logisticUnits#3462101, lambdafunction(lambda x_11475#3463393.isOrderUnit, lambda x_11475#3463393, false)), 1, None, false).uom, orderQuantityBaseUom#3462087), orderQuantityUomUuid, coalesce(element_at(filter(logisticUnits#3462101, lambdafunction(lambda x_11475#3463394.isOrderUnit, lambda x_11475#3463394, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#3462088), candidateOrderQuantityInBaseUnit, qty#3461908, orderQuantityBaseUom, orderQuantityBaseUom#3462087, orderQuantityBaseUomUuid, orderQuantityBaseUomUuid#3462088, candidateOrderQuantityInPreferredUnit, coalesce(array_min(transform(filter(logisticUnits#3462101, lambdafunction((lambda x_11477#3463395.isPreferred AND (((qty#3461908 * cast(lambda x_11477#3463395.denominator as double)) % cast(lambda x_11477#3463395.numerator as double)) = 0.0)), lambda x_11477#3463395, false)), lambdafunction(struct(inPreferredQuantity, ((qty#3461908 * cast(lambda x_11478#3463436.denominator as double)) / cast(lambda x_11478#3463436.numerator as double)), uom, lambda x_11478#3463436.uom, uomUuid, lambda x_11478#3463436.uomUuid), lambda x_11478#3463436, false))).inPreferredQuantity, coalesce((qty#3461908 * (cast(element_at(filter(logisticUnits#3462101, lambdafunction(lambda x_11476#3463396.isOrderUnit, lambda x_11476#3463396, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#3462101, lambdafunction(lambda x_11476#3463397.isOrderUnit, lambda x_11476#3463397, false)), 1, None, false).numerator as double))), qty#3461908)), orderQuantityPreferredUom, coalesce(array_min(transform(filter(logisticUnits#3462101, lambdafunction((lambda x_11477#3463398.isPreferred AND (((qty#3461908 * cast(lambda x_11477#3463398.denominator as double)) % cast(lambda x_11477#3463398.numerator as double)) = 0.0)), lambda x_11477#3463398, false)), lambdafunction(struct(inPreferredQuantity, ((qty#3461908 * cast(lambda x_11478#3463437.denominator as double)) / cast(lambda x_11478#3463437.numerator as double)), uom, lambda x_11478#3463437.uom, uomUuid, lambda x_11478#3463437.uomUuid), lambda x_11478#3463437, false))).uom, coalesce(element_at(filter(logisticUnits#3462101, lambdafunction(lambda x_11476#3463399.isOrderUnit, lambda x_11476#3463399, false)), 1, None, false).uom, orderQuantityBaseUom#3462087)), orderQuantityPreferredUomUuid, coalesce(array_min(transform(filter(logisticUnits#3462101, lambdafunction((lambda x_11477#3463400.isPreferred AND (((qty#3461908 * cast(lambda x_11477#3463400.denominator as double)) % cast(lambda x_11477#3463400.numerator as double)) = 0.0)), lambda x_11477#3463400, false)), lambdafunction(struct(inPreferredQuantity, ((qty#3461908 * cast(lambda x_11478#3463438.denominator as double)) / cast(lambda x_11478#3463438.numerator as double)), uom, lambda x_11478#3463438.uom, uomUuid, lambda x_11478#3463438.uomUuid), lambda x_11478#3463438, false))).uomUuid, coalesce(element_at(filter(logisticUnits#3462101, lambdafunction(lambda x_11476#3463401.isOrderUnit, lambda x_11476#3463401, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#3462088)), serviceLevel, coalesce(filter(element_at(quantityKpis#3462898, qty#3461908, None, false), lambdafunction((lambda x_11483#3463402.label = ServiceLevel), lambda x_11483#3463402, false))[0].value, 0.0), serviceLevelMinStock, ... 5 more fields)) ELSE array(struct(isProposedCandidate, true, isProdlocOptimalCandidate, false, candidateOrderQuantity, coalesce((qty#3461908 * (cast(element_at(filter(logisticUnits#3462101, lambdafunction(lambda x_11475#3463406.isOrderUnit, lambda x_11475#3463406, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#3462101, lambdafunction(lambda x_11475#3463407.isOrderUnit, lambda x_11475#3463407, false)), 1, None, false).numerator as double))), qty#3461908), orderQuantityUom, coalesce(element_at(filter(logisticUnits#3462101, lambdafunction(lambda x_11475#3463408.isOrderUnit, lambda x_11475#3463408, false)), 1, None, false).uom, orderQuantityBaseUom#3462087), orderQuantityUomUuid, coalesce(element_at(filter(logisticUnits#3462101, lambdafunction(lambda x_11475#3463409.isOrderUnit, lambda x_11475#3463409, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#3462088), candidateOrderQuantityInBaseUnit, qty#3461908, orderQuantityBaseUom, orderQuantityBaseUom#3462087, orderQuantityBaseUomUuid, orderQuantityBaseUomUuid#3462088, candidateOrderQuantityInPreferredUnit, coalesce(array_min(transform(filter(logisticUnits#3462101, lambdafunction((lambda x_11477#3463410.isPreferred AND (((qty#3461908 * cast(lambda x_11477#3463410.denominator as double)) % cast(lambda x_11477#3463410.numerator as double)) = 0.0)), lambda x_11477#3463410, false)), lambdafunction(struct(inPreferredQuantity, ((qty#3461908 * cast(lambda x_11478#3463439.denominator as double)) / cast(lambda x_11478#3463439.numerator as double)), uom, lambda x_11478#3463439.uom, uomUuid, lambda x_11478#3463439.uomUuid), lambda x_11478#3463439, false))).inPreferredQuantity, coalesce((qty#3461908 * (cast(element_at(filter(logisticUnits#3462101, lambdafunction(lambda x_11476#3463411.isOrderUnit, lambda x_11476#3463411, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#3462101, lambdafunction(lambda x_11476#3463412.isOrderUnit, lambda x_11476#3463412, false)), 1, None, false).numerator as double))), qty#3461908)), orderQuantityPreferredUom, coalesce(array_min(transform(filter(logisticUnits#3462101, lambdafunction((lambda x_11477#3463413.isPreferred AND (((qty#3461908 * cast(lambda x_11477#3463413.denominator as double)) % cast(lambda x_11477#3463413.numerator as double)) = 0.0)), lambda x_11477#3463413, false)), lambdafunction(struct(inPreferredQuantity, ((qty#3461908 * cast(lambda x_11478#3463440.denominator as double)) / cast(lambda x_11478#3463440.numerator as double)), uom, lambda x_11478#3463440.uom, uomUuid, lambda x_11478#3463440.uomUuid), lambda x_11478#3463440, false))).uom, coalesce(element_at(filter(logisticUnits#3462101, lambdafunction(lambda x_11476#3463414.isOrderUnit, lambda x_11476#3463414, false)), 1, None, false).uom, orderQuantityBaseUom#3462087)), orderQuantityPreferredUomUuid, coalesce(array_min(transform(filter(logisticUnits#3462101, lambdafunction((lambda x_11477#3463415.isPreferred AND (((qty#3461908 * cast(lambda x_11477#3463415.denominator as double)) % cast(lambda x_11477#3463415.numerator as double)) = 0.0)), lambda x_11477#3463415, false)), lambdafunction(struct(inPreferredQuantity, ((qty#3461908 * cast(lambda x_11478#3463441.denominator as double)) / cast(lambda x_11478#3463441.numerator as double)), uom, lambda x_11478#3463441.uom, uomUuid, lambda x_11478#3463441.uomUuid), lambda x_11478#3463441, false))).uomUuid, coalesce(element_at(filter(logisticUnits#3462101, lambdafunction(lambda x_11476#3463416.isOrderUnit, lambda x_11476#3463416, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#3462088)), serviceLevel, coalesce(filter(element_at(quantityKpis#3462898, qty#3461908, None, false), lambdafunction((lambda x_11487#3463417.label = ServiceLevel), lambda x_11487#3463417, false))[0].value, 0.0), serviceLevelMinStock, ... 5 more fields), struct(isProposedCandidate, false, isProdlocOptimalCandidate, true, candidateOrderQuantity, coalesce((quantityAfterProdPlantOptimization#3461907 * (cast(element_at(filter(logisticUnits#3462101, lambdafunction(lambda x_11479#3463421.isOrderUnit, lambda x_11479#3463421, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#3462101, lambdafunction(lambda x_11479#3463422.isOrderUnit, lambda x_11479#3463422, false)), 1, None, false).numerator as double))), quantityAfterProdPlantOptimization#3461907), orderQuantityUom, coalesce(element_at(filter(logisticUnits#3462101, lambdafunction(lambda x_11479#3463423.isOrderUnit, lambda x_11479#3463423, false)), 1, None, false).uom, orderQuantityBaseUom#3462087), orderQuantityUomUuid, coalesce(element_at(filter(logisticUnits#3462101, lambdafunction(lambda x_11479#3463424.isOrderUnit, lambda x_11479#3463424, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#3462088), candidateOrderQuantityInBaseUnit, quantityAfterProdPlantOptimization#3461907, orderQuantityBaseUom, orderQuantityBaseUom#3462087, orderQuantityBaseUomUuid, orderQuantityBaseUomUuid#3462088, candidateOrderQuantityInPreferredUnit, coalesce(array_min(transform(filter(logisticUnits#3462101, lambdafunction((lambda x_11481#3463425.isPreferred AND (((quantityAfterProdPlantOptimization#3461907 * cast(lambda x_11481#3463425.denominator as double)) % cast(lambda x_11481#3463425.numerator as double)) = 0.0)), lambda x_11481#3463425, false)), lambdafunction(struct(inPreferredQuantity, ((quantityAfterProdPlantOptimization#3461907 * cast(lambda x_11482#3463442.denominator as double)) / cast(lambda x_11482#3463442.numerator as double)), uom, lambda x_11482#3463442.uom, uomUuid, lambda x_11482#3463442.uomUuid), lambda x_11482#3463442, false))).inPreferredQuantity, coalesce((quantityAfterProdPlantOptimization#3461907 * (cast(element_at(filter(logisticUnits#3462101, lambdafunction(lambda x_11480#3463426.isOrderUnit, lambda x_11480#3463426, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#3462101, lambdafunction(lambda x_11480#3463427.isOrderUnit, lambda x_11480#3463427, false)), 1, None, false).numerator as double))), quantityAfterProdPlantOptimization#3461907)), orderQuantityPreferredUom, coalesce(array_min(transform(filter(logisticUnits#3462101, lambdafunction((lambda x_11481#3463428.isPreferred AND (((quantityAfterProdPlantOptimization#3461907 * cast(lambda x_11481#3463428.denominator as double)) % cast(lambda x_11481#3463428.numerator as double)) = 0.0)), lambda x_11481#3463428, false)), lambdafunction(struct(inPreferredQuantity, ((quantityAfterProdPlantOptimization#3461907 * cast(lambda x_11482#3463443.denominator as double)) / cast(lambda x_11482#3463443.numerator as double)), uom, lambda x_11482#3463443.uom, uomUuid, lambda x_11482#3463443.uomUuid), lambda x_11482#3463443, false))).uom, coalesce(element_at(filter(logisticUnits#3462101, lambdafunction(lambda x_11480#3463429.isOrderUnit, lambda x_11480#3463429, false)), 1, None, false).uom, orderQuantityBaseUom#3462087)), orderQuantityPreferredUomUuid, coalesce(array_min(transform(filter(logisticUnits#3462101, lambdafunction((lambda x_11481#3463430.isPreferred AND (((quantityAfterProdPlantOptimization#3461907 * cast(lambda x_11481#3463430.denominator as double)) % cast(lambda x_11481#3463430.numerator as double)) = 0.0)), lambda x_11481#3463430, false)), lambdafunction(struct(inPreferredQuantity, ((quantityAfterProdPlantOptimization#3461907 * cast(lambda x_11482#3463444.denominator as double)) / cast(lambda x_11482#3463444.numerator as double)), uom, lambda x_11482#3463444.uom, uomUuid, lambda x_11482#3463444.uomUuid), lambda x_11482#3463444, false))).uomUuid, coalesce(element_at(filter(logisticUnits#3462101, lambdafunction(lambda x_11480#3463431.isOrderUnit, lambda x_11480#3463431, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#3462088)), serviceLevel, coalesce(filter(element_at(quantityKpis#3462898, quantityAfterProdPlantOptimization#3461907, None, false), lambdafunction((lambda x_11491#3463432.label = ServiceLevel), lambda x_11491#3463432, false))[0].value, 0.0), serviceLevelMinStock, ... 5 more fields)) END AS calculationAnalysis#3463390, coalesce(filter(prodLocSpecificKpis#3462870, lambdafunction((lambda x_11495#3463446.label = InitialStockQty), lambda x_11495#3463446, false))[0].dateTime, 1970-01-01 00:00:00) AS inventoryDateTime#3463445, coalesce(filter(prodLocSpecificKpis#3462870, lambdafunction((lambda x_11496#3463448.label = DemandPeriodEndTimestamp), lambda x_11496#3463448, false))[0].dateTime, 1970-01-01 00:00:00) AS demandPeriodEndDateTime#3463447]
Input [36]: [shardId#3461394, quantityAfterProdPlantOptimization#3461907, qty#3461908, orderProposalId#3462064L, originalReplenishmentRunId#3462067L, supplierGroup#3462074, supplier#3462075, supplyingPlant#3462105, productGroup#3462106, product#3462077, plant#3462078, subrange#3462076, orderDateTime#3462082, deliveryDateTime#3462083, availabilityDateTime#3462084, nextAvailabilityDateTime#3462085, logisticUnits#3462101, orderQuantityBaseUom#3462087, orderQuantityBaseUomUuid#3462088, splitIndicator#3462069L, netPriceAmount#3462092, netPriceCurrencyCode#3462093, netPriceQuantity#3462089, netPriceQuantityUom#3462090, netPriceQuantityUomUuid#3462091, sourceOfSupplyUuid#3462073, minimumOrderQuantity#3462095, orderProposalItemId#3462065, orderProposalItemGroupId#3462066, optimizationGroups#3462102, measurements#3462094, previousOrderProposal#3462070L, prodLocSpecificKpis#3462870, channelStreamSpecificKpis#3462885, quantityKpis#3462898, constraintStructArray#3463312]
(60) Project
Output [21]: [shardId#3461394, qty#3461908, orderProposalId#3462064L, originalReplenishmentRunId#3462067L, supplierGroup#3462074, supplier#3462075, supplyingPlant#3462105, productGroup#3462106, product#3462077, plant#3462078, subrange#3462076, orderDateTime#3462082, deliveryDateTime#3462083, logisticUnits#3462101, orderQuantityBaseUom#3462087, orderQuantityBaseUomUuid#3462088, splitIndicator#3462069L, orderProposalItemId#3462065, orderProposalItemGroupId#3462066, previousOrderProposal#3462070L, struct(itemId, orderProposalItemId#3462065, itemGroupId, orderProposalItemGroupId#3462066, supplier, supplier#3462075, supplyingPlant, supplyingPlant#3462105, productGroup, productGroup#3462106, product, product#3462077, plant, plant#3462078, supplierSubRange, subrange#3462076, sourceOfSupplyUuid, sourceOfSupplyUuid#3462073, deliveryDateTime, deliveryDateTime#3462083, unitPrice, netPriceAmount#3462092, unitPriceCurrency, netPriceCurrencyCode#3462093, unitPriceQuantity, ... 37 more fields) AS parentItem#3463521]
Input [37]: [shardId#3461394, qty#3461908, orderProposalId#3462064L, originalReplenishmentRunId#3462067L, supplierGroup#3462074, supplier#3462075, supplyingPlant#3462105, productGroup#3462106, product#3462077, plant#3462078, subrange#3462076, orderDateTime#3462082, deliveryDateTime#3462083, availabilityDateTime#3462084, nextAvailabilityDateTime#3462085, logisticUnits#3462101, orderQuantityBaseUom#3462087, orderQuantityBaseUomUuid#3462088, splitIndicator#3462069L, netPriceAmount#3462092, netPriceCurrencyCode#3462093, netPriceQuantity#3462089, netPriceQuantityUom#3462090, netPriceQuantityUomUuid#3462091, sourceOfSupplyUuid#3462073, orderProposalItemId#3462065, orderProposalItemGroupId#3462066, optimizationGroups#3462102, measurements#3462094, previousOrderProposal#3462070L, prodLocSpecificKpis#3462870, channelStreamSpecificKpis#3462885, quantityKpis#3462898, constraintBenchmark#3463318, calculationAnalysis#3463390, inventoryDateTime#3463445, demandPeriodEndDateTime#3463447]
(61) Project
Output [12]: [shardId#3461394, orderProposalId#3462064L, originalReplenishmentRunId#3462067L, supplierGroup#3462074, supplier#3462075, supplyingPlant#3462105, orderDateTime#3462082, splitIndicator#3462069L, orderProposalItemGroupId#3462066, previousOrderProposal#3462070L, parentItem#3463521, struct(itemId, orderProposalItemId#3462065, supplier, supplier#3462075, supplyingPlant, supplyingPlant#3462105, productGroup, productGroup#3462106, product, product#3462077, plant, plant#3462078, supplierSubRange, subrange#3462076, deliveryDateTime, deliveryDateTime#3462083, orderQuantity, coalesce((qty#3461908 * (cast(element_at(filter(logisticUnits#3462101, lambdafunction(lambda x_11520#3463555.isOrderUnit, lambda x_11520#3463555, false)), 1, None, false).denominator as double) / cast(element_at(filter(logisticUnits#3462101, lambdafunction(lambda x_11520#3463556.isOrderUnit, lambda x_11520#3463556, false)), 1, None, false).numerator as double))), qty#3461908), orderQuantityUom, coalesce(element_at(filter(logisticUnits#3462101, lambdafunction(lambda x_11520#3463557.isOrderUnit, lambda x_11520#3463557, false)), 1, None, false).uom, orderQuantityBaseUom#3462087), orderQuantityUomUuid, coalesce(element_at(filter(logisticUnits#3462101, lambdafunction(lambda x_11520#3463558.isOrderUnit, lambda x_11520#3463558, false)), 1, None, false).uomUuid, orderQuantityBaseUomUuid#3462088), orderQuantityInBaseUnit, qty#3461908, orderQuantityBaseUom, ... 13 more fields) AS item#3463552]
Input [21]: [shardId#3461394, qty#3461908, orderProposalId#3462064L, originalReplenishmentRunId#3462067L, supplierGroup#3462074, supplier#3462075, supplyingPlant#3462105, productGroup#3462106, product#3462077, plant#3462078, subrange#3462076, orderDateTime#3462082, deliveryDateTime#3462083, logisticUnits#3462101, orderQuantityBaseUom#3462087, orderQuantityBaseUomUuid#3462088, splitIndicator#3462069L, orderProposalItemId#3462065, orderProposalItemGroupId#3462066, previousOrderProposal#3462070L, parentItem#3463521]
(62) ObjectHashAggregate
Input [12]: [shardId#3461394, orderProposalId#3462064L, originalReplenishmentRunId#3462067L, supplierGroup#3462074, supplier#3462075, supplyingPlant#3462105, orderDateTime#3462082, splitIndicator#3462069L, orderProposalItemGroupId#3462066, previousOrderProposal#3462070L, parentItem#3463521, item#3463552]
Keys [4]: [shardId#3461394, orderProposalId#3462064L, splitIndicator#3462069L, orderProposalItemGroupId#3462066]
Functions [8]: [partial_max(originalReplenishmentRunId#3462067L), partial_max(supplierGroup#3462074), partial_max(supplier#3462075), partial_max(supplyingPlant#3462105), partial_max(orderDateTime#3462082), partial_collect_list(parentItem#3463521, 0, 0), partial_collect_set(previousOrderProposal#3462070L, 0, 0), partial_collect_list(item#3463552, 0, 0)]
Aggregate Attributes [8]: [max#3464805L, max#3464806, max#3464807, max#3464808, max#3464809, buf#3464810, buf#3464811, buf#3464812]
Results [12]: [shardId#3461394, orderProposalId#3462064L, splitIndicator#3462069L, orderProposalItemGroupId#3462066, max#3464813L, max#3464814, max#3464815, max#3464816, max#3464817, buf#3464818, buf#3464819, buf#3464820]
(63) Exchange
Input [12]: [shardId#3461394, orderProposalId#3462064L, splitIndicator#3462069L, orderProposalItemGroupId#3462066, max#3464813L, max#3464814, max#3464815, max#3464816, max#3464817, buf#3464818, buf#3464819, buf#3464820]
Arguments: hashpartitioning(shardId#3461394, orderProposalId#3462064L, splitIndicator#3462069L, orderProposalItemGroupId#3462066, 30), ENSURE_REQUIREMENTS, [plan_id=995322]
(64) ObjectHashAggregate
Input [12]: [shardId#3461394, orderProposalId#3462064L, splitIndicator#3462069L, orderProposalItemGroupId#3462066, max#3464813L, max#3464814, max#3464815, max#3464816, max#3464817, buf#3464818, buf#3464819, buf#3464820]
Keys [4]: [shardId#3461394, orderProposalId#3462064L, splitIndicator#3462069L, orderProposalItemGroupId#3462066]
Functions [8]: [max(originalReplenishmentRunId#3462067L), max(supplierGroup#3462074), max(supplier#3462075), max(supplyingPlant#3462105), max(orderDateTime#3462082), collect_list(parentItem#3463521, 0, 0), collect_set(previousOrderProposal#3462070L, 0, 0), collect_list(item#3463552, 0, 0)]
Aggregate Attributes [8]: [max(originalReplenishmentRunId#3462067L)#3463621L, max(supplierGroup#3462074)#3463622, max(supplier#3462075)#3463623, max(supplyingPlant#3462105)#3463624, max(orderDateTime#3462082)#3463625, collect_list(parentItem#3463521, 0, 0)#3463626, collect_set(previousOrderProposal#3462070L, 0, 0)#3463628, collect_list(item#3463552, 0, 0)#3463627]
Results [10]: [shardId#3461394, orderProposalId#3462064L, max(originalReplenishmentRunId#3462067L)#3463621L AS originalReplenishmentRunId#3463569L, max(supplierGroup#3462074)#3463622 AS supplierGroup#3463570, max(supplier#3462075)#3463623 AS supplier#3463571, max(supplyingPlant#3462105)#3463624 AS supplyingPlant#3463572, max(orderDateTime#3462082)#3463625 AS orderDateTime#3463573, collect_list(parentItem#3463521, 0, 0)#3463626 AS parentItems#3463574, collect_set(previousOrderProposal#3462070L, 0, 0)#3463628 AS previousOrderProposals#3463576, struct(itemGroupId, orderProposalItemGroupId#3462066, items, collect_list(item#3463552, 0, 0)#3463627) AS itemGroup#3463630]
(65) ObjectHashAggregate
Input [10]: [shardId#3461394, orderProposalId#3462064L, originalReplenishmentRunId#3463569L, supplierGroup#3463570, supplier#3463571, supplyingPlant#3463572, orderDateTime#3463573, parentItems#3463574, previousOrderProposals#3463576, itemGroup#3463630]
Keys [2]: [shardId#3461394, orderProposalId#3462064L]
Functions [8]: [partial_max(originalReplenishmentRunId#3463569L), partial_max(supplierGroup#3463570), partial_max(supplier#3463571), partial_max(supplyingPlant#3463572), partial_max(orderDateTime#3463573), partial_collect_list(itemGroup#3463630, 0, 0), partial_collect_list(parentItems#3463574, 0, 0), partial_collect_set(previousOrderProposals#3463576, 0, 0)]
Aggregate Attributes [8]: [max#3464789L, max#3464790, max#3464791, max#3464792, max#3464793, buf#3464794, buf#3464795, buf#3464796]
Results [10]: [shardId#3461394, orderProposalId#3462064L, max#3464797L, max#3464798, max#3464799, max#3464800, max#3464801, buf#3464802, buf#3464803, buf#3464804]
(66) Exchange
Input [10]: [shardId#3461394, orderProposalId#3462064L, max#3464797L, max#3464798, max#3464799, max#3464800, max#3464801, buf#3464802, buf#3464803, buf#3464804]
Arguments: hashpartitioning(shardId#3461394, orderProposalId#3462064L, 30), ENSURE_REQUIREMENTS, [plan_id=995325]
(67) ObjectHashAggregate
Input [10]: [shardId#3461394, orderProposalId#3462064L, max#3464797L, max#3464798, max#3464799, max#3464800, max#3464801, buf#3464802, buf#3464803, buf#3464804]
Keys [2]: [shardId#3461394, orderProposalId#3462064L]
Functions [8]: [max(originalReplenishmentRunId#3463569L), max(supplierGroup#3463570), max(supplier#3463571), max(supplyingPlant#3463572), max(orderDateTime#3463573), collect_list(itemGroup#3463630, 0, 0), collect_list(parentItems#3463574, 0, 0), collect_set(previousOrderProposals#3463576, 0, 0)]
Aggregate Attributes [8]: [max(originalReplenishmentRunId#3463569L)#3463652L, max(supplierGroup#3463570)#3463653, max(supplier#3463571)#3463654, max(supplyingPlant#3463572)#3463655, max(orderDateTime#3463573)#3463656, collect_list(itemGroup#3463630, 0, 0)#3463657, collect_list(parentItems#3463574, 0, 0)#3463658, collect_set(previousOrderProposals#3463576, 0, 0)#3463659]
Results [10]: [shardId#3461394, orderProposalId#3462064L, max(originalReplenishmentRunId#3463569L)#3463652L AS originalReplenishmentRunId#3463631L, max(supplierGroup#3463570)#3463653 AS supplierGroup#3463632, max(supplier#3463571)#3463654 AS supplier#3463633, max(supplyingPlant#3463572)#3463655 AS supplyingPlant#3463634, max(orderDateTime#3463573)#3463656 AS orderDateTime#3463635, collect_list(itemGroup#3463630, 0, 0)#3463657 AS itemGroups#3463636, flatten(collect_list(parentItems#3463574, 0, 0)#3463658) AS parentItems#3463637, flatten(collect_set(previousOrderProposals#3463576, 0, 0)#3463659) AS previousOrderProposals#3463638]
(68) Project
Output [2]: [shardId#3461394, struct(orderProposalId, orderProposalId#3462064L, originalReplenishmentRunId, originalReplenishmentRunId#3463631L, supplierGroup, supplierGroup#3463632, optimizationGroups, null, supplier, CASE WHEN isnull(supplierGroup#3463632) THEN supplier#3463633 END, supplyingPlant, supplyingPlant#3463634, orderDateTime, orderDateTime#3463635, itemGroups, itemGroups#3463636, previousOrderProposals, array_distinct(previousOrderProposals#3463638), parentItems, parentItems#3463637) AS orderProposal#3463663]
Input [10]: [shardId#3461394, orderProposalId#3462064L, originalReplenishmentRunId#3463631L, supplierGroup#3463632, supplier#3463633, supplyingPlant#3463634, orderDateTime#3463635, itemGroups#3463636, parentItems#3463637, previousOrderProposals#3463638]
(69) Project
Output [11]: [shardId#3461394, orderProposal#3463663.orderProposalId AS _extract_orderProposalId#3464421L, orderProposal#3463663.originalReplenishmentRunId AS _extract_originalReplenishmentRunId#3464422L, orderProposal#3463663.supplierGroup AS _extract_supplierGroup#3464423, orderProposal#3463663.supplier AS _extract_supplier#3464424, orderProposal#3463663.supplyingPlant AS _extract_supplyingPlant#3464425, orderProposal#3463663.orderDateTime AS _extract_orderDateTime#3464426, orderProposal#3463663.itemGroups AS _extract_itemGroups#3464427, orderProposal#3463663.previousOrderProposals AS _extract_previousOrderProposals#3464428, orderProposal#3463663.parentItems AS _extract_parentItems#3464429, orderProposal#3463663.orderProposalId AS _extract_orderProposalId#3464430L]
Input [2]: [shardId#3461394, orderProposal#3463663]
(70) Exchange
Input [11]: [shardId#3461394, _extract_orderProposalId#3464421L, _extract_originalReplenishmentRunId#3464422L, _extract_supplierGroup#3464423, _extract_supplier#3464424, _extract_supplyingPlant#3464425, _extract_orderDateTime#3464426, _extract_itemGroups#3464427, _extract_previousOrderProposals#3464428, _extract_parentItems#3464429, _extract_orderProposalId#3464430L]
Arguments: hashpartitioning(coalesce(shardId#3461394, ), isnull(shardId#3461394), coalesce(_extract_orderProposalId#3464430L, 0), isnull(_extract_orderProposalId#3464430L), 30), ENSURE_REQUIREMENTS, [plan_id=995329]
(71) Sort
Input [11]: [shardId#3461394, _extract_orderProposalId#3464421L, _extract_originalReplenishmentRunId#3464422L, _extract_supplierGroup#3464423, _extract_supplier#3464424, _extract_supplyingPlant#3464425, _extract_orderDateTime#3464426, _extract_itemGroups#3464427, _extract_previousOrderProposals#3464428, _extract_parentItems#3464429, _extract_orderProposalId#3464430L]
Arguments: [coalesce(shardId#3461394, ) ASC NULLS FIRST, isnull(shardId#3461394) ASC NULLS FIRST, coalesce(_extract_orderProposalId#3464430L, 0) ASC NULLS FIRST, isnull(_extract_orderProposalId#3464430L) ASC NULLS FIRST], false, 0
(72) InMemoryTableScan
Output [3]: [shardId#3463678, orderProposalId#3463679L, optimizationGroups#3463681]
Arguments: [shardId#3463678, orderProposalId#3463679L, optimizationGroups#3463681], [isnotnull(orderProposalId#3463679L)]
(73) InMemoryRelation
Arguments: [shardId#3463678, orderProposalId#3463679L, items#3463680, optimizationGroups#3463681, isOptimal#3463682, optimizationInsights#3463684], StorageLevel(disk, memory, 2 replicas)
(74) Filter [codegen id : 2]
Input [3]: [shardId#3463678, orderProposalId#3463679L, optimizationGroups#3463681]
Condition : isnotnull(orderProposalId#3463679L)
(75) Exchange
Input [3]: [shardId#3463678, orderProposalId#3463679L, optimizationGroups#3463681]
Arguments: hashpartitioning(orderProposalId#3463679L, 30), ENSURE_REQUIREMENTS, [plan_id=995334]
(76) Sort [codegen id : 3]
Input [3]: [shardId#3463678, orderProposalId#3463679L, optimizationGroups#3463681]
Arguments: [orderProposalId#3463679L ASC NULLS FIRST], false, 0
(77) InMemoryTableScan
Output [2]: [items#3463307, shardId#3463305]
Arguments: [items#3463307, shardId#3463305], [(size(items#3463307.worklistShardItemId, true) > 0), isnotnull(items#3463307.worklistShardItemId), (shardId#3463305 = 0_5_10000000532)]
(78) InMemoryRelation
Arguments: [shardId#3463305, orderProposalId#3463306L, items#3463307, optimizationGroups#3463308, isOptimal#3463309, optimizationInsights#3463311], StorageLevel(disk, memory, 2 replicas)
(79) Filter [codegen id : 4]
Input [2]: [items#3463307, shardId#3463305]
Condition : (((size(items#3463307.worklistShardItemId, true) > 0) AND isnotnull(items#3463307.worklistShardItemId)) AND (shardId#3463305 = 0_5_10000000532))
(80) Project [codegen id : 4]
Output [1]: [items#3463307.worklistShardItemId AS _extract_worklistShardItemId#3464326]
Input [2]: [items#3463307, shardId#3463305]
(81) Generate [codegen id : 4]
Input [1]: [_extract_worklistShardItemId#3464326]
Arguments: explode(_extract_worklistShardItemId#3464326), false, [item#3463685L]
(82) Project [codegen id : 4]
Output [1]: [item#3463685L AS worklistShardItemId#3463686L]
Input [1]: [item#3463685L]
(83) BroadcastExchange
Input [1]: [worklistShardItemId#3463686L]
Arguments: HashedRelationBroadcastMode(List(input[0, bigint, true]),false), [plan_id=995345]
(84) Scan parquet
Output [5]: [orderProposalId#3463734L, isFallbackOrderOnly#3463751, worklistShardItemId#3463757L, shardId#3463778, sequenceId#3463756]
Batched: true
Location: PreparedDeltaFileIndex [hdlfs://7da5304c-1f57-47fa-b75a-0f0b4349c280.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-qty-opt-service/internal/prod-plant-snapshot/10000000532]
PartitionFilters: [isnotnull(shardId#3463778), isnotnull(sequenceId#3463756), (shardId#3463778 = 0_5_10000000532), (sequenceId#3463756 = 4)]
PushedFilters: [IsNotNull(worklistShardItemId), Not(EqualNullSafe(isFallbackOrderOnly,true)), IsNotNull(orderProposalId)]
ReadSchema: struct<orderProposalId:bigint,isFallbackOrderOnly:boolean,worklistShardItemId:bigint>
(85) ColumnarToRow [codegen id : 5]
Input [5]: [orderProposalId#3463734L, isFallbackOrderOnly#3463751, worklistShardItemId#3463757L, shardId#3463778, sequenceId#3463756]
(86) Filter [codegen id : 5]
Input [5]: [orderProposalId#3463734L, isFallbackOrderOnly#3463751, worklistShardItemId#3463757L, shardId#3463778, sequenceId#3463756]
Condition : ((isnotnull(worklistShardItemId#3463757L) AND NOT (isFallbackOrderOnly#3463751 <=> true)) AND isnotnull(orderProposalId#3463734L))
(87) Project [codegen id : 5]
Output [2]: [orderProposalId#3463734L, worklistShardItemId#3463757L]
Input [5]: [orderProposalId#3463734L, isFallbackOrderOnly#3463751, worklistShardItemId#3463757L, shardId#3463778, sequenceId#3463756]
(88) Exchange
Input [2]: [orderProposalId#3463734L, worklistShardItemId#3463757L]
Arguments: hashpartitioning(worklistShardItemId#3463757L, 30), REPARTITION_BY_NUM, [plan_id=995352]
(89) Project
Output [2]: [worklistShardItemId#3463757L, orderProposalId#3463734L]
Input [2]: [orderProposalId#3463734L, worklistShardItemId#3463757L]
(90) BroadcastHashJoin [codegen id : 6]
Left keys [1]: [worklistShardItemId#3463686L]
Right keys [1]: [worklistShardItemId#3463757L]
Join type: Inner
Join condition: None
(91) Project [codegen id : 6]
Output [1]: [orderProposalId#3463734L]
Input [3]: [worklistShardItemId#3463686L, worklistShardItemId#3463757L, orderProposalId#3463734L]
(92) HashAggregate [codegen id : 6]
Input [1]: [orderProposalId#3463734L]
Keys [1]: [orderProposalId#3463734L]
Functions: []
Aggregate Attributes: []
Results [1]: [orderProposalId#3463734L]
(93) Exchange
Input [1]: [orderProposalId#3463734L]
Arguments: hashpartitioning(orderProposalId#3463734L, 30), ENSURE_REQUIREMENTS, [plan_id=995359]
(94) HashAggregate [codegen id : 7]
Input [1]: [orderProposalId#3463734L]
Keys [1]: [orderProposalId#3463734L]
Functions: []
Aggregate Attributes: []
Results [1]: [orderProposalId#3463734L]
(95) Sort [codegen id : 7]
Input [1]: [orderProposalId#3463734L]
Arguments: [orderProposalId#3463734L ASC NULLS FIRST], false, 0
(96) SortMergeJoin [codegen id : 8]
Left keys [1]: [orderProposalId#3463679L]
Right keys [1]: [orderProposalId#3463734L]
Join type: Inner
Join condition: None
(97) Project
Output [3]: [orderProposalId#3463679L, shardId#3463678, coalesce(transform(optimizationGroups#3463681, lambdafunction(struct(optGroupId, lambda x_11524#3463676.optGroupId, minOrderProfile, lambda x_11524#3463676.minOrderProfile, assignmentDetails, lambda x_11524#3463676.assignmentDetails, minOrdBenchmark, struct(dimensionType, lambda x_11524#3463676.minOrderGoal.dimensionType, unit, lambda x_11524#3463676.minOrderGoal.unit, unitUuid, lambda x_11524#3463676.minOrderGoal.unitUuid, goalValue, lambda x_11524#3463676.minOrderGoal.minOrderValue, calcValue, lambda x_11524#3463676.minOrderGoal.calculatedOrderValue), transportLoadProfile, null, transportLoadGoal, null), lambda x_11524#3463676, false)), []) AS optimizationGroups#3463675]
Input [4]: [shardId#3463678, orderProposalId#3463679L, optimizationGroups#3463681, orderProposalId#3463734L]
(98) Exchange
Input [3]: [orderProposalId#3463679L, shardId#3463678, optimizationGroups#3463675]
Arguments: hashpartitioning(coalesce(shardId#3463678, ), isnull(shardId#3463678), coalesce(orderProposalId#3463679L, 0), isnull(orderProposalId#3463679L), 30), ENSURE_REQUIREMENTS, [plan_id=995368]
(99) Sort [codegen id : 9]
Input [3]: [orderProposalId#3463679L, shardId#3463678, optimizationGroups#3463675]
Arguments: [coalesce(shardId#3463678, ) ASC NULLS FIRST, isnull(shardId#3463678) ASC NULLS FIRST, coalesce(orderProposalId#3463679L, 0) ASC NULLS FIRST, isnull(orderProposalId#3463679L) ASC NULLS FIRST], false, 0
(100) SortMergeJoin
Left keys [4]: [coalesce(shardId#3461394, ), isnull(shardId#3461394), coalesce(_extract_orderProposalId#3464430L, 0), isnull(_extract_orderProposalId#3464430L)]
Right keys [4]: [coalesce(shardId#3463678, ), isnull(shardId#3463678), coalesce(orderProposalId#3463679L, 0), isnull(orderProposalId#3463679L)]
Join type: LeftOuter
Join condition: None
(101) Project
Output [2]: [shardId#3461394, named_struct(orderProposalId, _extract_orderProposalId#3464430L, originalReplenishmentRunId, _extract_originalReplenishmentRunId#3464422L, supplierGroup, _extract_supplierGroup#3464423, optimizationGroups, coalesce(optimizationGroups#3463675, []), supplier, _extract_supplier#3464424, supplyingPlant, _extract_supplyingPlant#3464425, orderDateTime, _extract_orderDateTime#3464426, itemGroups, _extract_itemGroups#3464427, previousOrderProposals, _extract_previousOrderProposals#3464428, parentItems, _extract_parentItems#3464429) AS orderProposal#3463782]
Input [14]: [shardId#3461394, _extract_orderProposalId#3464421L, _extract_originalReplenishmentRunId#3464422L, _extract_supplierGroup#3464423, _extract_supplier#3464424, _extract_supplyingPlant#3464425, _extract_orderDateTime#3464426, _extract_itemGroups#3464427, _extract_previousOrderProposals#3464428, _extract_parentItems#3464429, _extract_orderProposalId#3464430L, orderProposalId#3463679L, shardId#3463678, optimizationGroups#3463675]
(102) Project
Output [3]: [shardId#3461394, orderProposal#3463782, CASE WHEN (size(orderProposal#3463782.parentItems, true) > 2000) THEN xxhash64(orderProposal#3463782.orderProposalId, 42) ELSE xxhash64(pmod(cast(orderProposal#3463782.orderProposalId as decimal(20,0)), 60), 42) END AS resultSeparationId#3465534L]
Input [2]: [orderProposal#3463782, shardId#3461394]
(103) ObjectHashAggregate
Input [3]: [shardId#3461394, orderProposal#3463782, resultSeparationId#3465534L]
Keys [2]: [shardId#3461394, resultSeparationId#3465534L]
Functions [1]: [partial_collect_list(orderProposal#3463782, 0, 0)]
Aggregate Attributes [1]: [buf#3465573]
Results [3]: [shardId#3461394, resultSeparationId#3465534L, buf#3465574]
(104) Exchange
Input [3]: [shardId#3461394, resultSeparationId#3465534L, buf#3465574]
Arguments: hashpartitioning(shardId#3461394, resultSeparationId#3465534L, 30), ENSURE_REQUIREMENTS, [plan_id=995524]
(105) ObjectHashAggregate
Input [3]: [shardId#3461394, resultSeparationId#3465534L, buf#3465574]
Keys [2]: [shardId#3461394, resultSeparationId#3465534L]
Functions [1]: [collect_list(orderProposal#3463782, 0, 0)]
Aggregate Attributes [1]: [collect_list(orderProposal#3463782, 0, 0)#3465542]
Results [3]: [shardId#3461394, resultSeparationId#3465534L, collect_list(orderProposal#3463782, 0, 0)#3465542 AS orderProposals#3465538]
(106) Exchange
Input [3]: [shardId#3461394, resultSeparationId#3465534L, orderProposals#3465538]
Arguments: rangepartitioning(shardId#3461394 ASC NULLS FIRST, resultSeparationId#3465534L ASC NULLS FIRST, 60), REPARTITION_BY_NUM, [plan_id=995567]
(107) Project
Output [2]: [shardId#3461394, orderProposals#3465538]
Input [3]: [shardId#3461394, resultSeparationId#3465534L, orderProposals#3465538]
(108) HashAggregate [codegen id : 1]
Input [1]: [shardId#3461394]
Keys [1]: [shardId#3461394]
Functions: []
Aggregate Attributes: []
Results [1]: [shardId#3461394]
(109) Exchange
Input [1]: [shardId#3461394]
Arguments: hashpartitioning(shardId#3461394, 30), ENSURE_REQUIREMENTS, [plan_id=997305]
(110) HashAggregate [codegen id : 2]
Input [1]: [shardId#3461394]
Keys [1]: [shardId#3461394]
Functions: []
Aggregate Attributes: []
Results [1]: [shardId#3461394]