== Physical Plan ==
Execute InsertIntoHadoopFsRelationCommand (56)
+- WriteFiles (55)
+- Project (54)
+- * Generate (53)
+- * Project (52)
+- * Filter (51)
+- InMemoryTableScan (1)
+- InMemoryRelation (2)
+- * Project (50)
+- * SortMergeJoin LeftOuter (49)
:- * Project (41)
: +- * SortMergeJoin LeftOuter (40)
: :- * Project (32)
: : +- * SortMergeJoin LeftOuter (31)
: : :- * Sort (25)
: : : +- Exchange (24)
: : : +- * Project (23)
: : : +- * SortMergeJoin LeftOuter (22)
: : : :- * Sort (14)
: : : : +- Exchange (13)
: : : : +- * Project (12)
: : : : +- * Generate (11)
: : : : +- * Filter (10)
: : : : +- InMemoryTableScan (3)
: : : : +- InMemoryRelation (4)
: : : : +- * Filter (9)
: : : : +- InMemoryTableScan (5)
: : : : +- InMemoryRelation (6)
: : : : +- * Filter (8)
: : : : +- * Scan ExistingRDD (7)
: : : +- * Sort (21)
: : : +- * Project (20)
: : : +- Exchange (19)
: : : +- * Project (18)
: : : +- * Filter (17)
: : : +- * ColumnarToRow (16)
: : : +- Scan parquet (15)
: : +- * Sort (30)
: : +- Exchange (29)
: : +- * Project (28)
: : +- * Filter (27)
: : +- * Scan ExistingRDD (26)
: +- * Sort (39)
: +- ObjectHashAggregate (38)
: +- Exchange (37)
: +- ObjectHashAggregate (36)
: +- * Project (35)
: +- * Filter (34)
: +- * Scan ExistingRDD (33)
+- * Sort (48)
+- ObjectHashAggregate (47)
+- Exchange (46)
+- ObjectHashAggregate (45)
+- * Project (44)
+- * Filter (43)
+- * Scan ExistingRDD (42)
(1) InMemoryTableScan
Output [4]: [orderProposalId#803678L, orderProposalItemId#803679, quantityKpis#804275, shardId#803008]
Arguments: [orderProposalId#803678L, orderProposalItemId#803679, quantityKpis#804275, shardId#803008], [isnotnull(shardId#803008), (shardId#803008 = 0_1_10000002108), (size(quantityKpis#804275, true) > 0)]
(2) InMemoryRelation
Arguments: [shardId#803008, worklistShardItemId#803520L, quantityAfterProdPlantOptimization#803521, qty#803522, orderProposalId#803678L, originalReplenishmentRunId#803681L, supplierGroup#803688, supplier#803689, supplyingPlant#803719, productGroup#803720, product#803691, plant#803692, subrange#803690, orderDateTime#803696, deliveryDateTime#803697, availabilityDateTime#803698, nextAvailabilityDateTime#803699, constraintValues#803713, constraintOperators#803711, constraintLabels#803710, logisticUnits#803715, orderQuantityBaseUom#803701, orderQuantityBaseUomUuid#803702, splitIndicator#803683L, netPriceAmount#803706, ... 17 more fields], StorageLevel(disk, memory, 2 replicas)
(3) InMemoryTableScan
Output [2]: [shardId#803008, items#803010]
Arguments: [shardId#803008, items#803010], [(size(items#803010, true) > 0), isnotnull(items#803010)]
(4) InMemoryRelation
Arguments: [shardId#803008, orderProposalId#803009L, items#803010, optimizationGroups#803011, isOptimal#803012, optimizationInsights#803014], StorageLevel(disk, memory, 2 replicas)
(5) InMemoryTableScan
Output [6]: [shardId#803008, orderProposalId#803009L, items#803010, optimizationGroups#803011, isOptimal#803012, optimizationInsights#803014]
Arguments: [shardId#803008, orderProposalId#803009L, items#803010, optimizationGroups#803011, isOptimal#803012, optimizationInsights#803014], [isnotnull(shardId#803008), (shardId#803008 = 0_1_10000002108)]
(6) InMemoryRelation
Arguments: [shardId#803008, orderProposalId#803009L, items#803010, optimizationGroups#803011, isOptimal#803012, lastModified#803013, optimizationInsights#803014], StorageLevel(disk, memory, 2 replicas)
(7) Scan ExistingRDD [codegen id : 1]
Output [7]: [shardId#803008, orderProposalId#803009L, items#803010, optimizationGroups#803011, isOptimal#803012, lastModified#803013, optimizationInsights#803014]
Arguments: [shardId#803008, orderProposalId#803009L, items#803010, optimizationGroups#803011, isOptimal#803012, lastModified#803013, optimizationInsights#803014], MapPartitionsRDD[37720] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(8) Filter [codegen id : 1]
Input [7]: [shardId#803008, orderProposalId#803009L, items#803010, optimizationGroups#803011, isOptimal#803012, lastModified#803013, optimizationInsights#803014]
Condition : (isnotnull(shardId#803008) AND (shardId#803008 = 0_1_10000002108))
(9) Filter [codegen id : 1]
Input [6]: [shardId#803008, orderProposalId#803009L, items#803010, optimizationGroups#803011, isOptimal#803012, optimizationInsights#803014]
Condition : (isnotnull(shardId#803008) AND (shardId#803008 = 0_1_10000002108))
(10) Filter [codegen id : 1]
Input [2]: [shardId#803008, items#803010]
Condition : ((size(items#803010, true) > 0) AND isnotnull(items#803010))
(11) Generate [codegen id : 1]
Input [2]: [shardId#803008, items#803010]
Arguments: explode(items#803010), [shardId#803008], false, [item#803519]
(12) Project [codegen id : 1]
Output [4]: [shardId#803008, item#803519.worklistShardItemId AS worklistShardItemId#803520L, item#803519.quantityAfterProdPlantOptimization AS quantityAfterProdPlantOptimization#803521, item#803519.qty AS qty#803522]
Input [2]: [shardId#803008, item#803519]
(13) Exchange
Input [4]: [shardId#803008, worklistShardItemId#803520L, quantityAfterProdPlantOptimization#803521, qty#803522]
Arguments: hashpartitioning(worklistShardItemId#803520L, 20), ENSURE_REQUIREMENTS, [plan_id=316013]
(14) Sort [codegen id : 2]
Input [4]: [shardId#803008, worklistShardItemId#803520L, quantityAfterProdPlantOptimization#803521, qty#803522]
Arguments: [worklistShardItemId#803520L ASC NULLS FIRST], false, 0
(15) Scan parquet
Output [38]: [orderProposalId#803721L, orderProposalItemId#803722, supplierGroup#803723, supplier#803724, plant#803725, deliveryDateTime#803726, subrange#803727, supplyingPlant#803728, productGroup#803729, product#803730, orderDateTime#803731, availabilityDateTime#803732, nextAvailabilityDateTime#803733, sourceOfSupplyUuid#803735, isFallbackOrderOnly#803738, splitIndicator#803740L, previousOrderProposal#803741L, worklistShardItemId#803744L, orderProposalItemGroupId#803745, externalProductId#803746, externalPlantId#803747, logisticUnits#803748, orderQuantityBaseUom#803749, orderQuantityBaseUomUuid#803750, minimumOrderQuantity#803751, constraintLabels#803752, constraintOperators#803753, constraintValues#803754, netPriceAmount#803757, netPriceCurrencyCode#803758, netPriceQuantity#803759, netPriceQuantityUom#803760, netPriceQuantityUomUuid#803761, measurements#803762, originalReplenishmentRunId#803763L, optimizationGroups#803764, shardId#803765, sequenceId#803743]
Batched: true
Location: PreparedDeltaFileIndex [hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-qty-opt-service/internal/prod-plant-snapshot/10000002108]
PartitionFilters: [isnotnull(shardId#803765), isnotnull(sequenceId#803743), (shardId#803765 = 0_1_10000002108), (sequenceId#803743 = 2)]
PushedFilters: [IsNotNull(worklistShardItemId)]
ReadSchema: struct<orderProposalId:bigint,orderProposalItemId:string,supplierGroup:string,supplier:string,plant:string,deliveryDateTime:timestamp,subrange:string,supplyingPlant:string,productGroup:string,product:string,orderDateTime:timestamp,availabilityDateTime:timestamp,nextAvailabilityDateTime:timestamp,sourceOfSupplyUuid:string,isFallbackOrderOnly:boolean,splitIndicator:bigint,previousOrderProposal:bigint,worklistShardItemId:bigint,orderProposalItemGroupId:string,externalProductId:string,externalPlantId:string,logisticUnits:array<struct<uom:string,uomUuid:string,numerator:int,denominator:int,isOrderUnit:boolean,isPreferred:boolean>>,orderQuantityBaseUom:string,orderQuantityBaseUomUuid:string,minimumOrderQuantity:double,constraintLabels:array<string>,constraintOperators:array<string>,constraintValues:array<double>,netPriceAmount:double,netPriceCurrencyCode:string,netPriceQuantity:double,netPriceQuantityUom:string,netPriceQuantityUomUuid:string,measurements:array<struct<value:double,dimensionType:int,dimensionCode:string,dimensionCodeUuid:string,isoCode:string>>,originalReplenishmentRunId:bigint,optimizationGroups:array<string>>
(16) ColumnarToRow [codegen id : 3]
Input [38]: [orderProposalId#803721L, orderProposalItemId#803722, supplierGroup#803723, supplier#803724, plant#803725, deliveryDateTime#803726, subrange#803727, supplyingPlant#803728, productGroup#803729, product#803730, orderDateTime#803731, availabilityDateTime#803732, nextAvailabilityDateTime#803733, sourceOfSupplyUuid#803735, isFallbackOrderOnly#803738, splitIndicator#803740L, previousOrderProposal#803741L, worklistShardItemId#803744L, orderProposalItemGroupId#803745, externalProductId#803746, externalPlantId#803747, logisticUnits#803748, orderQuantityBaseUom#803749, orderQuantityBaseUomUuid#803750, minimumOrderQuantity#803751, constraintLabels#803752, constraintOperators#803753, constraintValues#803754, netPriceAmount#803757, netPriceCurrencyCode#803758, netPriceQuantity#803759, netPriceQuantityUom#803760, netPriceQuantityUomUuid#803761, measurements#803762, originalReplenishmentRunId#803763L, optimizationGroups#803764, shardId#803765, sequenceId#803743]
(17) Filter [codegen id : 3]
Input [38]: [orderProposalId#803721L, orderProposalItemId#803722, supplierGroup#803723, supplier#803724, plant#803725, deliveryDateTime#803726, subrange#803727, supplyingPlant#803728, productGroup#803729, product#803730, orderDateTime#803731, availabilityDateTime#803732, nextAvailabilityDateTime#803733, sourceOfSupplyUuid#803735, isFallbackOrderOnly#803738, splitIndicator#803740L, previousOrderProposal#803741L, worklistShardItemId#803744L, orderProposalItemGroupId#803745, externalProductId#803746, externalPlantId#803747, logisticUnits#803748, orderQuantityBaseUom#803749, orderQuantityBaseUomUuid#803750, minimumOrderQuantity#803751, constraintLabels#803752, constraintOperators#803753, constraintValues#803754, netPriceAmount#803757, netPriceCurrencyCode#803758, netPriceQuantity#803759, netPriceQuantityUom#803760, netPriceQuantityUomUuid#803761, measurements#803762, originalReplenishmentRunId#803763L, optimizationGroups#803764, shardId#803765, sequenceId#803743]
Condition : isnotnull(worklistShardItemId#803744L)
(18) Project [codegen id : 3]
Output [36]: [orderProposalId#803721L, orderProposalItemId#803722, supplierGroup#803723, supplier#803724, plant#803725, deliveryDateTime#803726, subrange#803727, supplyingPlant#803728, productGroup#803729, product#803730, orderDateTime#803731, availabilityDateTime#803732, nextAvailabilityDateTime#803733, sourceOfSupplyUuid#803735, isFallbackOrderOnly#803738, splitIndicator#803740L, previousOrderProposal#803741L, worklistShardItemId#803744L, orderProposalItemGroupId#803745, externalProductId#803746, externalPlantId#803747, logisticUnits#803748, orderQuantityBaseUom#803749, orderQuantityBaseUomUuid#803750, minimumOrderQuantity#803751, constraintLabels#803752, constraintOperators#803753, constraintValues#803754, netPriceAmount#803757, netPriceCurrencyCode#803758, netPriceQuantity#803759, netPriceQuantityUom#803760, netPriceQuantityUomUuid#803761, measurements#803762, originalReplenishmentRunId#803763L, optimizationGroups#803764]
Input [38]: [orderProposalId#803721L, orderProposalItemId#803722, supplierGroup#803723, supplier#803724, plant#803725, deliveryDateTime#803726, subrange#803727, supplyingPlant#803728, productGroup#803729, product#803730, orderDateTime#803731, availabilityDateTime#803732, nextAvailabilityDateTime#803733, sourceOfSupplyUuid#803735, isFallbackOrderOnly#803738, splitIndicator#803740L, previousOrderProposal#803741L, worklistShardItemId#803744L, orderProposalItemGroupId#803745, externalProductId#803746, externalPlantId#803747, logisticUnits#803748, orderQuantityBaseUom#803749, orderQuantityBaseUomUuid#803750, minimumOrderQuantity#803751, constraintLabels#803752, constraintOperators#803753, constraintValues#803754, netPriceAmount#803757, netPriceCurrencyCode#803758, netPriceQuantity#803759, netPriceQuantityUom#803760, netPriceQuantityUomUuid#803761, measurements#803762, originalReplenishmentRunId#803763L, optimizationGroups#803764, shardId#803765, sequenceId#803743]
(19) Exchange
Input [36]: [orderProposalId#803721L, orderProposalItemId#803722, supplierGroup#803723, supplier#803724, plant#803725, deliveryDateTime#803726, subrange#803727, supplyingPlant#803728, productGroup#803729, product#803730, orderDateTime#803731, availabilityDateTime#803732, nextAvailabilityDateTime#803733, sourceOfSupplyUuid#803735, isFallbackOrderOnly#803738, splitIndicator#803740L, previousOrderProposal#803741L, worklistShardItemId#803744L, orderProposalItemGroupId#803745, externalProductId#803746, externalPlantId#803747, logisticUnits#803748, orderQuantityBaseUom#803749, orderQuantityBaseUomUuid#803750, minimumOrderQuantity#803751, constraintLabels#803752, constraintOperators#803753, constraintValues#803754, netPriceAmount#803757, netPriceCurrencyCode#803758, netPriceQuantity#803759, netPriceQuantityUom#803760, netPriceQuantityUomUuid#803761, measurements#803762, originalReplenishmentRunId#803763L, optimizationGroups#803764]
Arguments: hashpartitioning(worklistShardItemId#803744L, 20), REPARTITION_BY_NUM, [plan_id=316023]
(20) Project [codegen id : 4]
Output [36]: [worklistShardItemId#803744L, orderProposalId#803721L, orderProposalItemId#803722, orderProposalItemGroupId#803745, originalReplenishmentRunId#803763L, splitIndicator#803740L, previousOrderProposal#803741L, sourceOfSupplyUuid#803735, supplierGroup#803723, supplier#803724, subrange#803727, product#803730, plant#803725, orderDateTime#803731, deliveryDateTime#803726, availabilityDateTime#803732, nextAvailabilityDateTime#803733, isFallbackOrderOnly#803738, orderQuantityBaseUom#803749, orderQuantityBaseUomUuid#803750, netPriceQuantity#803759, netPriceQuantityUom#803760, netPriceQuantityUomUuid#803761, netPriceAmount#803757, netPriceCurrencyCode#803758, measurements#803762, minimumOrderQuantity#803751, constraintLabels#803752, constraintOperators#803753, constraintValues#803754, logisticUnits#803748, optimizationGroups#803764, externalProductId#803746, externalPlantId#803747, supplyingPlant#803728, productGroup#803729]
Input [36]: [orderProposalId#803721L, orderProposalItemId#803722, supplierGroup#803723, supplier#803724, plant#803725, deliveryDateTime#803726, subrange#803727, supplyingPlant#803728, productGroup#803729, product#803730, orderDateTime#803731, availabilityDateTime#803732, nextAvailabilityDateTime#803733, sourceOfSupplyUuid#803735, isFallbackOrderOnly#803738, splitIndicator#803740L, previousOrderProposal#803741L, worklistShardItemId#803744L, orderProposalItemGroupId#803745, externalProductId#803746, externalPlantId#803747, logisticUnits#803748, orderQuantityBaseUom#803749, orderQuantityBaseUomUuid#803750, minimumOrderQuantity#803751, constraintLabels#803752, constraintOperators#803753, constraintValues#803754, netPriceAmount#803757, netPriceCurrencyCode#803758, netPriceQuantity#803759, netPriceQuantityUom#803760, netPriceQuantityUomUuid#803761, measurements#803762, originalReplenishmentRunId#803763L, optimizationGroups#803764]
(21) Sort [codegen id : 4]
Input [36]: [worklistShardItemId#803744L, orderProposalId#803721L, orderProposalItemId#803722, orderProposalItemGroupId#803745, originalReplenishmentRunId#803763L, splitIndicator#803740L, previousOrderProposal#803741L, sourceOfSupplyUuid#803735, supplierGroup#803723, supplier#803724, subrange#803727, product#803730, plant#803725, orderDateTime#803731, deliveryDateTime#803726, availabilityDateTime#803732, nextAvailabilityDateTime#803733, isFallbackOrderOnly#803738, orderQuantityBaseUom#803749, orderQuantityBaseUomUuid#803750, netPriceQuantity#803759, netPriceQuantityUom#803760, netPriceQuantityUomUuid#803761, netPriceAmount#803757, netPriceCurrencyCode#803758, measurements#803762, minimumOrderQuantity#803751, constraintLabels#803752, constraintOperators#803753, constraintValues#803754, logisticUnits#803748, optimizationGroups#803764, externalProductId#803746, externalPlantId#803747, supplyingPlant#803728, productGroup#803729]
Arguments: [worklistShardItemId#803744L ASC NULLS FIRST], false, 0
(22) SortMergeJoin [codegen id : 5]
Left keys [1]: [worklistShardItemId#803520L]
Right keys [1]: [worklistShardItemId#803744L]
Join type: LeftOuter
Join condition: (shardId#803008 = 0_1_10000002108)
(23) Project [codegen id : 5]
Output [39]: [shardId#803008, worklistShardItemId#803520L, quantityAfterProdPlantOptimization#803521, qty#803522, orderProposalId#803721L, originalReplenishmentRunId#803763L, supplierGroup#803723, supplier#803724, supplyingPlant#803728, productGroup#803729, product#803730, plant#803725, subrange#803727, orderDateTime#803731, deliveryDateTime#803726, availabilityDateTime#803732, nextAvailabilityDateTime#803733, constraintValues#803754, constraintOperators#803753, constraintLabels#803752, logisticUnits#803748, orderQuantityBaseUom#803749, orderQuantityBaseUomUuid#803750, splitIndicator#803740L, netPriceAmount#803757, netPriceCurrencyCode#803758, netPriceQuantity#803759, netPriceQuantityUom#803760, netPriceQuantityUomUuid#803761, sourceOfSupplyUuid#803735, minimumOrderQuantity#803751, orderProposalItemId#803722, orderProposalItemGroupId#803745, optimizationGroups#803764, measurements#803762, externalProductId#803746, externalPlantId#803747, previousOrderProposal#803741L, isFallbackOrderOnly#803738]
Input [40]: [shardId#803008, worklistShardItemId#803520L, quantityAfterProdPlantOptimization#803521, qty#803522, worklistShardItemId#803744L, orderProposalId#803721L, orderProposalItemId#803722, orderProposalItemGroupId#803745, originalReplenishmentRunId#803763L, splitIndicator#803740L, previousOrderProposal#803741L, sourceOfSupplyUuid#803735, supplierGroup#803723, supplier#803724, subrange#803727, product#803730, plant#803725, orderDateTime#803731, deliveryDateTime#803726, availabilityDateTime#803732, nextAvailabilityDateTime#803733, isFallbackOrderOnly#803738, orderQuantityBaseUom#803749, orderQuantityBaseUomUuid#803750, netPriceQuantity#803759, netPriceQuantityUom#803760, netPriceQuantityUomUuid#803761, netPriceAmount#803757, netPriceCurrencyCode#803758, measurements#803762, minimumOrderQuantity#803751, constraintLabels#803752, constraintOperators#803753, constraintValues#803754, logisticUnits#803748, optimizationGroups#803764, externalProductId#803746, externalPlantId#803747, supplyingPlant#803728, productGroup#803729]
(24) Exchange
Input [39]: [shardId#803008, worklistShardItemId#803520L, quantityAfterProdPlantOptimization#803521, qty#803522, orderProposalId#803721L, originalReplenishmentRunId#803763L, supplierGroup#803723, supplier#803724, supplyingPlant#803728, productGroup#803729, product#803730, plant#803725, subrange#803727, orderDateTime#803731, deliveryDateTime#803726, availabilityDateTime#803732, nextAvailabilityDateTime#803733, constraintValues#803754, constraintOperators#803753, constraintLabels#803752, logisticUnits#803748, orderQuantityBaseUom#803749, orderQuantityBaseUomUuid#803750, splitIndicator#803740L, netPriceAmount#803757, netPriceCurrencyCode#803758, netPriceQuantity#803759, netPriceQuantityUom#803760, netPriceQuantityUomUuid#803761, sourceOfSupplyUuid#803735, minimumOrderQuantity#803751, orderProposalItemId#803722, orderProposalItemGroupId#803745, optimizationGroups#803764, measurements#803762, externalProductId#803746, externalPlantId#803747, previousOrderProposal#803741L, isFallbackOrderOnly#803738]
Arguments: hashpartitioning(shardId#803008, worklistShardItemId#803520L, 20), ENSURE_REQUIREMENTS, [plan_id=316032]
(25) Sort [codegen id : 6]
Input [39]: [shardId#803008, worklistShardItemId#803520L, quantityAfterProdPlantOptimization#803521, qty#803522, orderProposalId#803721L, originalReplenishmentRunId#803763L, supplierGroup#803723, supplier#803724, supplyingPlant#803728, productGroup#803729, product#803730, plant#803725, subrange#803727, orderDateTime#803731, deliveryDateTime#803726, availabilityDateTime#803732, nextAvailabilityDateTime#803733, constraintValues#803754, constraintOperators#803753, constraintLabels#803752, logisticUnits#803748, orderQuantityBaseUom#803749, orderQuantityBaseUomUuid#803750, splitIndicator#803740L, netPriceAmount#803757, netPriceCurrencyCode#803758, netPriceQuantity#803759, netPriceQuantityUom#803760, netPriceQuantityUomUuid#803761, sourceOfSupplyUuid#803735, minimumOrderQuantity#803751, orderProposalItemId#803722, orderProposalItemGroupId#803745, optimizationGroups#803764, measurements#803762, externalProductId#803746, externalPlantId#803747, previousOrderProposal#803741L, isFallbackOrderOnly#803738]
Arguments: [shardId#803008 ASC NULLS FIRST, worklistShardItemId#803520L ASC NULLS FIRST], false, 0
(26) Scan ExistingRDD [codegen id : 7]
Output [6]: [shardId#804240, worklistShardItemId#804241L, qty#804242, demandChannel#804243, demandStream#804244, kpis#804245]
Arguments: [shardId#804240, worklistShardItemId#804241L, qty#804242, demandChannel#804243, demandStream#804244, kpis#804245], MapPartitionsRDD[37780] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(27) Filter [codegen id : 7]
Input [6]: [shardId#804240, worklistShardItemId#804241L, qty#804242, demandChannel#804243, demandStream#804244, kpis#804245]
Condition : (((isnull(qty#804242) AND isnull(demandChannel#804243)) AND isnull(demandStream#804244)) AND (isnotnull(shardId#804240) AND isnotnull(worklistShardItemId#804241L)))
(28) Project [codegen id : 7]
Output [3]: [shardId#804240, worklistShardItemId#804241L, coalesce(kpis#804245, []) AS prodLocSpecificKpis#804246]
Input [6]: [shardId#804240, worklistShardItemId#804241L, qty#804242, demandChannel#804243, demandStream#804244, kpis#804245]
(29) Exchange
Input [3]: [shardId#804240, worklistShardItemId#804241L, prodLocSpecificKpis#804246]
Arguments: hashpartitioning(shardId#804240, worklistShardItemId#804241L, 20), ENSURE_REQUIREMENTS, [plan_id=316038]
(30) Sort [codegen id : 8]
Input [3]: [shardId#804240, worklistShardItemId#804241L, prodLocSpecificKpis#804246]
Arguments: [shardId#804240 ASC NULLS FIRST, worklistShardItemId#804241L ASC NULLS FIRST], false, 0
(31) SortMergeJoin [codegen id : 9]
Left keys [2]: [shardId#803008, worklistShardItemId#803520L]
Right keys [2]: [shardId#804240, worklistShardItemId#804241L]
Join type: LeftOuter
Join condition: None
(32) Project [codegen id : 9]
Output [40]: [shardId#803008, worklistShardItemId#803520L, quantityAfterProdPlantOptimization#803521, qty#803522, orderProposalId#803721L, originalReplenishmentRunId#803763L, supplierGroup#803723, supplier#803724, supplyingPlant#803728, productGroup#803729, product#803730, plant#803725, subrange#803727, orderDateTime#803731, deliveryDateTime#803726, availabilityDateTime#803732, nextAvailabilityDateTime#803733, constraintValues#803754, constraintOperators#803753, constraintLabels#803752, logisticUnits#803748, orderQuantityBaseUom#803749, orderQuantityBaseUomUuid#803750, splitIndicator#803740L, netPriceAmount#803757, netPriceCurrencyCode#803758, netPriceQuantity#803759, netPriceQuantityUom#803760, netPriceQuantityUomUuid#803761, sourceOfSupplyUuid#803735, minimumOrderQuantity#803751, orderProposalItemId#803722, orderProposalItemGroupId#803745, optimizationGroups#803764, measurements#803762, externalProductId#803746, externalPlantId#803747, previousOrderProposal#803741L, isFallbackOrderOnly#803738, coalesce(prodLocSpecificKpis#804246, []) AS prodLocSpecificKpis#804247]
Input [42]: [shardId#803008, worklistShardItemId#803520L, quantityAfterProdPlantOptimization#803521, qty#803522, orderProposalId#803721L, originalReplenishmentRunId#803763L, supplierGroup#803723, supplier#803724, supplyingPlant#803728, productGroup#803729, product#803730, plant#803725, subrange#803727, orderDateTime#803731, deliveryDateTime#803726, availabilityDateTime#803732, nextAvailabilityDateTime#803733, constraintValues#803754, constraintOperators#803753, constraintLabels#803752, logisticUnits#803748, orderQuantityBaseUom#803749, orderQuantityBaseUomUuid#803750, splitIndicator#803740L, netPriceAmount#803757, netPriceCurrencyCode#803758, netPriceQuantity#803759, netPriceQuantityUom#803760, netPriceQuantityUomUuid#803761, sourceOfSupplyUuid#803735, minimumOrderQuantity#803751, orderProposalItemId#803722, orderProposalItemGroupId#803745, optimizationGroups#803764, measurements#803762, externalProductId#803746, externalPlantId#803747, previousOrderProposal#803741L, isFallbackOrderOnly#803738, shardId#804240, worklistShardItemId#804241L, prodLocSpecificKpis#804246]
(33) Scan ExistingRDD [codegen id : 10]
Output [6]: [shardId#804256, worklistShardItemId#804257L, qty#804258, demandChannel#804259, demandStream#804260, kpis#804261]
Arguments: [shardId#804256, worklistShardItemId#804257L, qty#804258, demandChannel#804259, demandStream#804260, kpis#804261], MapPartitionsRDD[37780] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(34) Filter [codegen id : 10]
Input [6]: [shardId#804256, worklistShardItemId#804257L, qty#804258, demandChannel#804259, demandStream#804260, kpis#804261]
Condition : ((((isnull(qty#804258) AND isnotnull(demandChannel#804259)) AND isnotnull(demandStream#804260)) AND (size(kpis#804261, true) > 0)) AND (isnotnull(shardId#804256) AND isnotnull(worklistShardItemId#804257L)))
(35) Project [codegen id : 10]
Output [5]: [shardId#804256, worklistShardItemId#804257L, demandChannel#804259, demandStream#804260, kpis#804261]
Input [6]: [shardId#804256, worklistShardItemId#804257L, qty#804258, demandChannel#804259, demandStream#804260, kpis#804261]
(36) ObjectHashAggregate
Input [5]: [shardId#804256, worklistShardItemId#804257L, demandChannel#804259, demandStream#804260, kpis#804261]
Keys [2]: [shardId#804256, worklistShardItemId#804257L]
Functions [1]: [partial_collect_list(struct(demandChannel, demandChannel#804259, demandStream, demandStream#804260, kpis, kpis#804261), 0, 0)]
Aggregate Attributes [1]: [buf#804436]
Results [3]: [shardId#804256, worklistShardItemId#804257L, buf#804437]
(37) Exchange
Input [3]: [shardId#804256, worklistShardItemId#804257L, buf#804437]
Arguments: hashpartitioning(shardId#804256, worklistShardItemId#804257L, 20), ENSURE_REQUIREMENTS, [plan_id=316049]
(38) ObjectHashAggregate
Input [3]: [shardId#804256, worklistShardItemId#804257L, buf#804437]
Keys [2]: [shardId#804256, worklistShardItemId#804257L]
Functions [1]: [collect_list(struct(demandChannel, demandChannel#804259, demandStream, demandStream#804260, kpis, kpis#804261), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(demandChannel, demandChannel#804259, demandStream, demandStream#804260, kpis, kpis#804261), 0, 0)#804255]
Results [3]: [shardId#804256, worklistShardItemId#804257L, collect_list(struct(demandChannel, demandChannel#804259, demandStream, demandStream#804260, kpis, kpis#804261), 0, 0)#804255 AS channelStreamSpecificKpis#804248]
(39) Sort [codegen id : 11]
Input [3]: [shardId#804256, worklistShardItemId#804257L, channelStreamSpecificKpis#804248]
Arguments: [shardId#804256 ASC NULLS FIRST, worklistShardItemId#804257L ASC NULLS FIRST], false, 0
(40) SortMergeJoin [codegen id : 12]
Left keys [2]: [shardId#803008, worklistShardItemId#803520L]
Right keys [2]: [shardId#804256, worklistShardItemId#804257L]
Join type: LeftOuter
Join condition: None
(41) Project [codegen id : 12]
Output [41]: [shardId#803008, worklistShardItemId#803520L, quantityAfterProdPlantOptimization#803521, qty#803522, orderProposalId#803721L, originalReplenishmentRunId#803763L, supplierGroup#803723, supplier#803724, supplyingPlant#803728, productGroup#803729, product#803730, plant#803725, subrange#803727, orderDateTime#803731, deliveryDateTime#803726, availabilityDateTime#803732, nextAvailabilityDateTime#803733, constraintValues#803754, constraintOperators#803753, constraintLabels#803752, logisticUnits#803748, orderQuantityBaseUom#803749, orderQuantityBaseUomUuid#803750, splitIndicator#803740L, netPriceAmount#803757, netPriceCurrencyCode#803758, netPriceQuantity#803759, netPriceQuantityUom#803760, netPriceQuantityUomUuid#803761, sourceOfSupplyUuid#803735, minimumOrderQuantity#803751, orderProposalItemId#803722, orderProposalItemGroupId#803745, optimizationGroups#803764, measurements#803762, externalProductId#803746, externalPlantId#803747, previousOrderProposal#803741L, isFallbackOrderOnly#803738, prodLocSpecificKpis#804247, coalesce(channelStreamSpecificKpis#804248, []) AS channelStreamSpecificKpis#804262]
Input [43]: [shardId#803008, worklistShardItemId#803520L, quantityAfterProdPlantOptimization#803521, qty#803522, orderProposalId#803721L, originalReplenishmentRunId#803763L, supplierGroup#803723, supplier#803724, supplyingPlant#803728, productGroup#803729, product#803730, plant#803725, subrange#803727, orderDateTime#803731, deliveryDateTime#803726, availabilityDateTime#803732, nextAvailabilityDateTime#803733, constraintValues#803754, constraintOperators#803753, constraintLabels#803752, logisticUnits#803748, orderQuantityBaseUom#803749, orderQuantityBaseUomUuid#803750, splitIndicator#803740L, netPriceAmount#803757, netPriceCurrencyCode#803758, netPriceQuantity#803759, netPriceQuantityUom#803760, netPriceQuantityUomUuid#803761, sourceOfSupplyUuid#803735, minimumOrderQuantity#803751, orderProposalItemId#803722, orderProposalItemGroupId#803745, optimizationGroups#803764, measurements#803762, externalProductId#803746, externalPlantId#803747, previousOrderProposal#803741L, isFallbackOrderOnly#803738, prodLocSpecificKpis#804247, shardId#804256, worklistShardItemId#804257L, channelStreamSpecificKpis#804248]
(42) Scan ExistingRDD [codegen id : 13]
Output [6]: [shardId#804269, worklistShardItemId#804270L, qty#804271, demandChannel#804272, demandStream#804273, kpis#804274]
Arguments: [shardId#804269, worklistShardItemId#804270L, qty#804271, demandChannel#804272, demandStream#804273, kpis#804274], MapPartitionsRDD[37780] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(43) Filter [codegen id : 13]
Input [6]: [shardId#804269, worklistShardItemId#804270L, qty#804271, demandChannel#804272, demandStream#804273, kpis#804274]
Condition : ((isnotnull(qty#804271) AND isnotnull(kpis#804274)) AND (isnotnull(shardId#804269) AND isnotnull(worklistShardItemId#804270L)))
(44) Project [codegen id : 13]
Output [4]: [shardId#804269, worklistShardItemId#804270L, qty#804271, kpis#804274]
Input [6]: [shardId#804269, worklistShardItemId#804270L, qty#804271, demandChannel#804272, demandStream#804273, kpis#804274]
(45) ObjectHashAggregate
Input [4]: [shardId#804269, worklistShardItemId#804270L, qty#804271, kpis#804274]
Keys [2]: [shardId#804269, worklistShardItemId#804270L]
Functions [1]: [partial_collect_list(struct(qty, qty#804271, kpis, kpis#804274), 0, 0)]
Aggregate Attributes [1]: [buf#804438]
Results [3]: [shardId#804269, worklistShardItemId#804270L, buf#804439]
(46) Exchange
Input [3]: [shardId#804269, worklistShardItemId#804270L, buf#804439]
Arguments: hashpartitioning(shardId#804269, worklistShardItemId#804270L, 20), ENSURE_REQUIREMENTS, [plan_id=316061]
(47) ObjectHashAggregate
Input [3]: [shardId#804269, worklistShardItemId#804270L, buf#804439]
Keys [2]: [shardId#804269, worklistShardItemId#804270L]
Functions [1]: [collect_list(struct(qty, qty#804271, kpis, kpis#804274), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(qty, qty#804271, kpis, kpis#804274), 0, 0)#804268]
Results [3]: [shardId#804269, worklistShardItemId#804270L, map_from_entries(collect_list(struct(qty, qty#804271, kpis, kpis#804274), 0, 0)#804268) AS quantityKpis#804263]
(48) Sort [codegen id : 14]
Input [3]: [shardId#804269, worklistShardItemId#804270L, quantityKpis#804263]
Arguments: [shardId#804269 ASC NULLS FIRST, worklistShardItemId#804270L ASC NULLS FIRST], false, 0
(49) SortMergeJoin [codegen id : 15]
Left keys [2]: [shardId#803008, worklistShardItemId#803520L]
Right keys [2]: [shardId#804269, worklistShardItemId#804270L]
Join type: LeftOuter
Join condition: None
(50) Project [codegen id : 15]
Output [42]: [shardId#803008, worklistShardItemId#803520L, quantityAfterProdPlantOptimization#803521, qty#803522, orderProposalId#803721L, originalReplenishmentRunId#803763L, supplierGroup#803723, supplier#803724, supplyingPlant#803728, productGroup#803729, product#803730, plant#803725, subrange#803727, orderDateTime#803731, deliveryDateTime#803726, availabilityDateTime#803732, nextAvailabilityDateTime#803733, constraintValues#803754, constraintOperators#803753, constraintLabels#803752, logisticUnits#803748, orderQuantityBaseUom#803749, orderQuantityBaseUomUuid#803750, splitIndicator#803740L, netPriceAmount#803757, netPriceCurrencyCode#803758, netPriceQuantity#803759, netPriceQuantityUom#803760, netPriceQuantityUomUuid#803761, sourceOfSupplyUuid#803735, minimumOrderQuantity#803751, orderProposalItemId#803722, orderProposalItemGroupId#803745, optimizationGroups#803764, measurements#803762, externalProductId#803746, externalPlantId#803747, previousOrderProposal#803741L, isFallbackOrderOnly#803738, prodLocSpecificKpis#804247, channelStreamSpecificKpis#804262, coalesce(quantityKpis#804263, map(keys: [], values: [])) AS quantityKpis#804275]
Input [44]: [shardId#803008, worklistShardItemId#803520L, quantityAfterProdPlantOptimization#803521, qty#803522, orderProposalId#803721L, originalReplenishmentRunId#803763L, supplierGroup#803723, supplier#803724, supplyingPlant#803728, productGroup#803729, product#803730, plant#803725, subrange#803727, orderDateTime#803731, deliveryDateTime#803726, availabilityDateTime#803732, nextAvailabilityDateTime#803733, constraintValues#803754, constraintOperators#803753, constraintLabels#803752, logisticUnits#803748, orderQuantityBaseUom#803749, orderQuantityBaseUomUuid#803750, splitIndicator#803740L, netPriceAmount#803757, netPriceCurrencyCode#803758, netPriceQuantity#803759, netPriceQuantityUom#803760, netPriceQuantityUomUuid#803761, sourceOfSupplyUuid#803735, minimumOrderQuantity#803751, orderProposalItemId#803722, orderProposalItemGroupId#803745, optimizationGroups#803764, measurements#803762, externalProductId#803746, externalPlantId#803747, previousOrderProposal#803741L, isFallbackOrderOnly#803738, prodLocSpecificKpis#804247, channelStreamSpecificKpis#804262, shardId#804269, worklistShardItemId#804270L, quantityKpis#804263]
(51) Filter [codegen id : 1]
Input [4]: [orderProposalId#803678L, orderProposalItemId#803679, quantityKpis#804275, shardId#803008]
Condition : ((isnotnull(shardId#803008) AND (shardId#803008 = 0_1_10000002108)) AND (size(quantityKpis#804275, true) > 0))
(52) Project [codegen id : 1]
Output [3]: [orderProposalId#803678L, orderProposalItemId#803679, quantityKpis#804275]
Input [4]: [orderProposalId#803678L, orderProposalItemId#803679, quantityKpis#804275, shardId#803008]
(53) Generate [codegen id : 1]
Input [3]: [orderProposalId#803678L, orderProposalItemId#803679, quantityKpis#804275]
Arguments: explode(quantityKpis#804275), [orderProposalId#803678L, orderProposalItemId#803679], false, [orderQuantityInBaseUnit#807942, kpis#807943]
(54) Project
Output [7]: [orderProposalId#803678L, cast(orderProposalItemId#803679 as bigint) AS orderProposalItemId#807941L, orderQuantityInBaseUnit#807942, filter(kpis#807943, lambdafunction((lambda x_2142#807945.label = ServiceLevel), lambda x_2142#807945, false))[0].value AS serviceLevel#807944, filter(kpis#807943, lambdafunction((lambda x_2143#807947.label = RangeOfCoverage), lambda x_2143#807947, false))[0].value AS rangeOfCoverage#807946, filter(kpis#807943, lambdafunction((lambda x_2144#807949.label = ServiceLevelAtStartOfDelisting), lambda x_2144#807949, false))[0].value AS serviceLevelAtEndOfListing#807948, 10000002108 AS replenishmentRunId#807951L]
Input [4]: [orderProposalId#803678L, orderProposalItemId#803679, orderQuantityInBaseUnit#807942, kpis#807943]
(55) WriteFiles
Input [7]: [orderProposalId#803678L, orderProposalItemId#807941L, orderQuantityInBaseUnit#807942, serviceLevel#807944, rangeOfCoverage#807946, serviceLevelAtEndOfListing#807948, replenishmentRunId#807951L]
(56) Execute InsertIntoHadoopFsRelationCommand
Input: []
Arguments: hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20.hanacloud.ondemand.com:443/prp-op-traceability-results/raw/crp-order-qty-opt-service/additional-kpi-curves/10000002108/shardId=0_1_10000002108/sequenceId=2, false, Parquet, [path=hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20.hanacloud.ondemand.com:443/prp-op-traceability-results/raw/crp-order-qty-opt-service/additional-kpi-curves/10000002108/shardId=0_1_10000002108/sequenceId=2], Overwrite, [orderProposalId, orderProposalItemId, orderQuantityInBaseUnit, serviceLevel, rangeOfCoverage, serviceLevelAtEndOfListing, replenishmentRunId]