== Physical Plan ==
Execute InsertIntoHadoopFsRelationCommand (54)
+- WriteFiles (53)
+- Project (52)
+- * Generate (51)
+- * Project (50)
+- * Filter (49)
+- InMemoryTableScan (1)
+- InMemoryRelation (2)
+- * Project (48)
+- * SortMergeJoin LeftOuter (47)
:- * Project (39)
: +- * SortMergeJoin LeftOuter (38)
: :- * Project (30)
: : +- * SortMergeJoin LeftOuter (29)
: : :- * Sort (23)
: : : +- Exchange (22)
: : : +- * Project (21)
: : : +- * BroadcastHashJoin LeftOuter BuildRight (20)
: : : :- * Project (12)
: : : : +- * Generate (11)
: : : : +- * Filter (10)
: : : : +- InMemoryTableScan (3)
: : : : +- InMemoryRelation (4)
: : : : +- * Filter (9)
: : : : +- InMemoryTableScan (5)
: : : : +- InMemoryRelation (6)
: : : : +- * Filter (8)
: : : : +- * Scan ExistingRDD (7)
: : : +- BroadcastExchange (19)
: : : +- * Project (18)
: : : +- Exchange (17)
: : : +- * Project (16)
: : : +- * Filter (15)
: : : +- * ColumnarToRow (14)
: : : +- Scan parquet (13)
: : +- * Sort (28)
: : +- Exchange (27)
: : +- * Project (26)
: : +- * Filter (25)
: : +- * Scan ExistingRDD (24)
: +- * Sort (37)
: +- ObjectHashAggregate (36)
: +- Exchange (35)
: +- ObjectHashAggregate (34)
: +- * Project (33)
: +- * Filter (32)
: +- * Scan ExistingRDD (31)
+- * Sort (46)
+- ObjectHashAggregate (45)
+- Exchange (44)
+- ObjectHashAggregate (43)
+- * Project (42)
+- * Filter (41)
+- * Scan ExistingRDD (40)
(1) InMemoryTableScan
Output [4]: [orderProposalId#633285L, orderProposalItemId#633286, quantityKpis#634059, shardId#632615]
Arguments: [orderProposalId#633285L, orderProposalItemId#633286, quantityKpis#634059, shardId#632615], [isnotnull(shardId#632615), (shardId#632615 = 0_1_10000002107), (size(quantityKpis#634059, true) > 0)]
(2) InMemoryRelation
Arguments: [shardId#632615, worklistShardItemId#633127L, quantityAfterProdPlantOptimization#633128, qty#633129, orderProposalId#633285L, originalReplenishmentRunId#633288L, supplierGroup#633295, supplier#633296, supplyingPlant#633326, productGroup#633327, product#633298, plant#633299, subrange#633297, orderDateTime#633303, deliveryDateTime#633304, availabilityDateTime#633305, nextAvailabilityDateTime#633306, constraintValues#633320, constraintOperators#633318, constraintLabels#633317, logisticUnits#633322, orderQuantityBaseUom#633308, orderQuantityBaseUomUuid#633309, splitIndicator#633290L, netPriceAmount#633313, ... 17 more fields], StorageLevel(disk, memory, 2 replicas)
(3) InMemoryTableScan
Output [2]: [shardId#632615, items#632617]
Arguments: [shardId#632615, items#632617], [(size(items#632617, true) > 0), isnotnull(items#632617)]
(4) InMemoryRelation
Arguments: [shardId#632615, orderProposalId#632616L, items#632617, optimizationGroups#632618, isOptimal#632619, optimizationInsights#632621], StorageLevel(disk, memory, 2 replicas)
(5) InMemoryTableScan
Output [6]: [shardId#632615, orderProposalId#632616L, items#632617, optimizationGroups#632618, isOptimal#632619, optimizationInsights#632621]
Arguments: [shardId#632615, orderProposalId#632616L, items#632617, optimizationGroups#632618, isOptimal#632619, optimizationInsights#632621], [isnotnull(shardId#632615), (shardId#632615 = 0_1_10000002107)]
(6) InMemoryRelation
Arguments: [shardId#632615, orderProposalId#632616L, items#632617, optimizationGroups#632618, isOptimal#632619, lastModified#632620, optimizationInsights#632621], StorageLevel(disk, memory, 2 replicas)
(7) Scan ExistingRDD [codegen id : 1]
Output [7]: [shardId#632615, orderProposalId#632616L, items#632617, optimizationGroups#632618, isOptimal#632619, lastModified#632620, optimizationInsights#632621]
Arguments: [shardId#632615, orderProposalId#632616L, items#632617, optimizationGroups#632618, isOptimal#632619, lastModified#632620, optimizationInsights#632621], MapPartitionsRDD[30129] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(8) Filter [codegen id : 1]
Input [7]: [shardId#632615, orderProposalId#632616L, items#632617, optimizationGroups#632618, isOptimal#632619, lastModified#632620, optimizationInsights#632621]
Condition : (isnotnull(shardId#632615) AND (shardId#632615 = 0_1_10000002107))
(9) Filter [codegen id : 1]
Input [6]: [shardId#632615, orderProposalId#632616L, items#632617, optimizationGroups#632618, isOptimal#632619, optimizationInsights#632621]
Condition : (isnotnull(shardId#632615) AND (shardId#632615 = 0_1_10000002107))
(10) Filter [codegen id : 3]
Input [2]: [shardId#632615, items#632617]
Condition : ((size(items#632617, true) > 0) AND isnotnull(items#632617))
(11) Generate [codegen id : 3]
Input [2]: [shardId#632615, items#632617]
Arguments: explode(items#632617), [shardId#632615], false, [item#633126]
(12) Project [codegen id : 3]
Output [4]: [shardId#632615, item#633126.worklistShardItemId AS worklistShardItemId#633127L, item#633126.quantityAfterProdPlantOptimization AS quantityAfterProdPlantOptimization#633128, item#633126.qty AS qty#633129]
Input [2]: [shardId#632615, item#633126]
(13) Scan parquet
Output [38]: [orderProposalId#633328L, orderProposalItemId#633329, supplierGroup#633330, supplier#633331, plant#633332, deliveryDateTime#633333, subrange#633334, supplyingPlant#633335, productGroup#633336, product#633337, orderDateTime#633338, availabilityDateTime#633339, nextAvailabilityDateTime#633340, sourceOfSupplyUuid#633342, isFallbackOrderOnly#633345, splitIndicator#633347L, previousOrderProposal#633348L, worklistShardItemId#633351L, orderProposalItemGroupId#633352, externalProductId#633353, externalPlantId#633354, logisticUnits#633355, orderQuantityBaseUom#633356, orderQuantityBaseUomUuid#633357, minimumOrderQuantity#633358, constraintLabels#633359, constraintOperators#633360, constraintValues#633361, netPriceAmount#633364, netPriceCurrencyCode#633365, netPriceQuantity#633366, netPriceQuantityUom#633367, netPriceQuantityUomUuid#633368, measurements#633369, originalReplenishmentRunId#633370L, optimizationGroups#633371, shardId#633372, sequenceId#633350]
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/10000002107]
PartitionFilters: [isnotnull(shardId#633372), isnotnull(sequenceId#633350), (shardId#633372 = 0_1_10000002107), (sequenceId#633350 = 3)]
PushedFilters: [IsNotNull(worklistShardItemId)]
ReadSchema: struct<orderProposalId:bigint,orderProposalItemId:string,supplierGroup:string,supplier:string,plant:string,deliveryDateTime:timestamp,subrange:string,supplyingPlant:string,productGroup:string,product:string,orderDateTime:timestamp,availabilityDateTime:timestamp,nextAvailabilityDateTime:timestamp,sourceOfSupplyUuid:string,isFallbackOrderOnly:boolean,splitIndicator:bigint,previousOrderProposal:bigint,worklistShardItemId:bigint,orderProposalItemGroupId:string,externalProductId:string,externalPlantId:string,logisticUnits:array<struct<uom:string,uomUuid:string,numerator:int,denominator:int,isOrderUnit:boolean,isPreferred:boolean>>,orderQuantityBaseUom:string,orderQuantityBaseUomUuid:string,minimumOrderQuantity:double,constraintLabels:array<string>,constraintOperators:array<string>,constraintValues:array<double>,netPriceAmount:double,netPriceCurrencyCode:string,netPriceQuantity:double,netPriceQuantityUom:string,netPriceQuantityUomUuid:string,measurements:array<struct<value:double,dimensionType:int,dimensionCode:string,dimensionCodeUuid:string,isoCode:string>>,originalReplenishmentRunId:bigint,optimizationGroups:array<string>>
(14) ColumnarToRow [codegen id : 1]
Input [38]: [orderProposalId#633328L, orderProposalItemId#633329, supplierGroup#633330, supplier#633331, plant#633332, deliveryDateTime#633333, subrange#633334, supplyingPlant#633335, productGroup#633336, product#633337, orderDateTime#633338, availabilityDateTime#633339, nextAvailabilityDateTime#633340, sourceOfSupplyUuid#633342, isFallbackOrderOnly#633345, splitIndicator#633347L, previousOrderProposal#633348L, worklistShardItemId#633351L, orderProposalItemGroupId#633352, externalProductId#633353, externalPlantId#633354, logisticUnits#633355, orderQuantityBaseUom#633356, orderQuantityBaseUomUuid#633357, minimumOrderQuantity#633358, constraintLabels#633359, constraintOperators#633360, constraintValues#633361, netPriceAmount#633364, netPriceCurrencyCode#633365, netPriceQuantity#633366, netPriceQuantityUom#633367, netPriceQuantityUomUuid#633368, measurements#633369, originalReplenishmentRunId#633370L, optimizationGroups#633371, shardId#633372, sequenceId#633350]
(15) Filter [codegen id : 1]
Input [38]: [orderProposalId#633328L, orderProposalItemId#633329, supplierGroup#633330, supplier#633331, plant#633332, deliveryDateTime#633333, subrange#633334, supplyingPlant#633335, productGroup#633336, product#633337, orderDateTime#633338, availabilityDateTime#633339, nextAvailabilityDateTime#633340, sourceOfSupplyUuid#633342, isFallbackOrderOnly#633345, splitIndicator#633347L, previousOrderProposal#633348L, worklistShardItemId#633351L, orderProposalItemGroupId#633352, externalProductId#633353, externalPlantId#633354, logisticUnits#633355, orderQuantityBaseUom#633356, orderQuantityBaseUomUuid#633357, minimumOrderQuantity#633358, constraintLabels#633359, constraintOperators#633360, constraintValues#633361, netPriceAmount#633364, netPriceCurrencyCode#633365, netPriceQuantity#633366, netPriceQuantityUom#633367, netPriceQuantityUomUuid#633368, measurements#633369, originalReplenishmentRunId#633370L, optimizationGroups#633371, shardId#633372, sequenceId#633350]
Condition : isnotnull(worklistShardItemId#633351L)
(16) Project [codegen id : 1]
Output [36]: [orderProposalId#633328L, orderProposalItemId#633329, supplierGroup#633330, supplier#633331, plant#633332, deliveryDateTime#633333, subrange#633334, supplyingPlant#633335, productGroup#633336, product#633337, orderDateTime#633338, availabilityDateTime#633339, nextAvailabilityDateTime#633340, sourceOfSupplyUuid#633342, isFallbackOrderOnly#633345, splitIndicator#633347L, previousOrderProposal#633348L, worklistShardItemId#633351L, orderProposalItemGroupId#633352, externalProductId#633353, externalPlantId#633354, logisticUnits#633355, orderQuantityBaseUom#633356, orderQuantityBaseUomUuid#633357, minimumOrderQuantity#633358, constraintLabels#633359, constraintOperators#633360, constraintValues#633361, netPriceAmount#633364, netPriceCurrencyCode#633365, netPriceQuantity#633366, netPriceQuantityUom#633367, netPriceQuantityUomUuid#633368, measurements#633369, originalReplenishmentRunId#633370L, optimizationGroups#633371]
Input [38]: [orderProposalId#633328L, orderProposalItemId#633329, supplierGroup#633330, supplier#633331, plant#633332, deliveryDateTime#633333, subrange#633334, supplyingPlant#633335, productGroup#633336, product#633337, orderDateTime#633338, availabilityDateTime#633339, nextAvailabilityDateTime#633340, sourceOfSupplyUuid#633342, isFallbackOrderOnly#633345, splitIndicator#633347L, previousOrderProposal#633348L, worklistShardItemId#633351L, orderProposalItemGroupId#633352, externalProductId#633353, externalPlantId#633354, logisticUnits#633355, orderQuantityBaseUom#633356, orderQuantityBaseUomUuid#633357, minimumOrderQuantity#633358, constraintLabels#633359, constraintOperators#633360, constraintValues#633361, netPriceAmount#633364, netPriceCurrencyCode#633365, netPriceQuantity#633366, netPriceQuantityUom#633367, netPriceQuantityUomUuid#633368, measurements#633369, originalReplenishmentRunId#633370L, optimizationGroups#633371, shardId#633372, sequenceId#633350]
(17) Exchange
Input [36]: [orderProposalId#633328L, orderProposalItemId#633329, supplierGroup#633330, supplier#633331, plant#633332, deliveryDateTime#633333, subrange#633334, supplyingPlant#633335, productGroup#633336, product#633337, orderDateTime#633338, availabilityDateTime#633339, nextAvailabilityDateTime#633340, sourceOfSupplyUuid#633342, isFallbackOrderOnly#633345, splitIndicator#633347L, previousOrderProposal#633348L, worklistShardItemId#633351L, orderProposalItemGroupId#633352, externalProductId#633353, externalPlantId#633354, logisticUnits#633355, orderQuantityBaseUom#633356, orderQuantityBaseUomUuid#633357, minimumOrderQuantity#633358, constraintLabels#633359, constraintOperators#633360, constraintValues#633361, netPriceAmount#633364, netPriceCurrencyCode#633365, netPriceQuantity#633366, netPriceQuantityUom#633367, netPriceQuantityUomUuid#633368, measurements#633369, originalReplenishmentRunId#633370L, optimizationGroups#633371]
Arguments: hashpartitioning(worklistShardItemId#633351L, 20), REPARTITION_BY_NUM, [plan_id=261340]
(18) Project [codegen id : 2]
Output [36]: [worklistShardItemId#633351L, orderProposalId#633328L, orderProposalItemId#633329, orderProposalItemGroupId#633352, originalReplenishmentRunId#633370L, splitIndicator#633347L, previousOrderProposal#633348L, sourceOfSupplyUuid#633342, supplierGroup#633330, supplier#633331, subrange#633334, product#633337, plant#633332, orderDateTime#633338, deliveryDateTime#633333, availabilityDateTime#633339, nextAvailabilityDateTime#633340, isFallbackOrderOnly#633345, orderQuantityBaseUom#633356, orderQuantityBaseUomUuid#633357, netPriceQuantity#633366, netPriceQuantityUom#633367, netPriceQuantityUomUuid#633368, netPriceAmount#633364, netPriceCurrencyCode#633365, measurements#633369, minimumOrderQuantity#633358, constraintLabels#633359, constraintOperators#633360, constraintValues#633361, logisticUnits#633355, optimizationGroups#633371, externalProductId#633353, externalPlantId#633354, supplyingPlant#633335, productGroup#633336]
Input [36]: [orderProposalId#633328L, orderProposalItemId#633329, supplierGroup#633330, supplier#633331, plant#633332, deliveryDateTime#633333, subrange#633334, supplyingPlant#633335, productGroup#633336, product#633337, orderDateTime#633338, availabilityDateTime#633339, nextAvailabilityDateTime#633340, sourceOfSupplyUuid#633342, isFallbackOrderOnly#633345, splitIndicator#633347L, previousOrderProposal#633348L, worklistShardItemId#633351L, orderProposalItemGroupId#633352, externalProductId#633353, externalPlantId#633354, logisticUnits#633355, orderQuantityBaseUom#633356, orderQuantityBaseUomUuid#633357, minimumOrderQuantity#633358, constraintLabels#633359, constraintOperators#633360, constraintValues#633361, netPriceAmount#633364, netPriceCurrencyCode#633365, netPriceQuantity#633366, netPriceQuantityUom#633367, netPriceQuantityUomUuid#633368, measurements#633369, originalReplenishmentRunId#633370L, optimizationGroups#633371]
(19) BroadcastExchange
Input [36]: [worklistShardItemId#633351L, orderProposalId#633328L, orderProposalItemId#633329, orderProposalItemGroupId#633352, originalReplenishmentRunId#633370L, splitIndicator#633347L, previousOrderProposal#633348L, sourceOfSupplyUuid#633342, supplierGroup#633330, supplier#633331, subrange#633334, product#633337, plant#633332, orderDateTime#633338, deliveryDateTime#633333, availabilityDateTime#633339, nextAvailabilityDateTime#633340, isFallbackOrderOnly#633345, orderQuantityBaseUom#633356, orderQuantityBaseUomUuid#633357, netPriceQuantity#633366, netPriceQuantityUom#633367, netPriceQuantityUomUuid#633368, netPriceAmount#633364, netPriceCurrencyCode#633365, measurements#633369, minimumOrderQuantity#633358, constraintLabels#633359, constraintOperators#633360, constraintValues#633361, logisticUnits#633355, optimizationGroups#633371, externalProductId#633353, externalPlantId#633354, supplyingPlant#633335, productGroup#633336]
Arguments: HashedRelationBroadcastMode(List(input[0, bigint, true]),false), [plan_id=261344]
(20) BroadcastHashJoin [codegen id : 3]
Left keys [1]: [worklistShardItemId#633127L]
Right keys [1]: [worklistShardItemId#633351L]
Join type: LeftOuter
Join condition: (shardId#632615 = 0_1_10000002107)
(21) Project [codegen id : 3]
Output [39]: [shardId#632615, worklistShardItemId#633127L, quantityAfterProdPlantOptimization#633128, qty#633129, orderProposalId#633328L, originalReplenishmentRunId#633370L, supplierGroup#633330, supplier#633331, supplyingPlant#633335, productGroup#633336, product#633337, plant#633332, subrange#633334, orderDateTime#633338, deliveryDateTime#633333, availabilityDateTime#633339, nextAvailabilityDateTime#633340, constraintValues#633361, constraintOperators#633360, constraintLabels#633359, logisticUnits#633355, orderQuantityBaseUom#633356, orderQuantityBaseUomUuid#633357, splitIndicator#633347L, netPriceAmount#633364, netPriceCurrencyCode#633365, netPriceQuantity#633366, netPriceQuantityUom#633367, netPriceQuantityUomUuid#633368, sourceOfSupplyUuid#633342, minimumOrderQuantity#633358, orderProposalItemId#633329, orderProposalItemGroupId#633352, optimizationGroups#633371, measurements#633369, externalProductId#633353, externalPlantId#633354, previousOrderProposal#633348L, isFallbackOrderOnly#633345]
Input [40]: [shardId#632615, worklistShardItemId#633127L, quantityAfterProdPlantOptimization#633128, qty#633129, worklistShardItemId#633351L, orderProposalId#633328L, orderProposalItemId#633329, orderProposalItemGroupId#633352, originalReplenishmentRunId#633370L, splitIndicator#633347L, previousOrderProposal#633348L, sourceOfSupplyUuid#633342, supplierGroup#633330, supplier#633331, subrange#633334, product#633337, plant#633332, orderDateTime#633338, deliveryDateTime#633333, availabilityDateTime#633339, nextAvailabilityDateTime#633340, isFallbackOrderOnly#633345, orderQuantityBaseUom#633356, orderQuantityBaseUomUuid#633357, netPriceQuantity#633366, netPriceQuantityUom#633367, netPriceQuantityUomUuid#633368, netPriceAmount#633364, netPriceCurrencyCode#633365, measurements#633369, minimumOrderQuantity#633358, constraintLabels#633359, constraintOperators#633360, constraintValues#633361, logisticUnits#633355, optimizationGroups#633371, externalProductId#633353, externalPlantId#633354, supplyingPlant#633335, productGroup#633336]
(22) Exchange
Input [39]: [shardId#632615, worklistShardItemId#633127L, quantityAfterProdPlantOptimization#633128, qty#633129, orderProposalId#633328L, originalReplenishmentRunId#633370L, supplierGroup#633330, supplier#633331, supplyingPlant#633335, productGroup#633336, product#633337, plant#633332, subrange#633334, orderDateTime#633338, deliveryDateTime#633333, availabilityDateTime#633339, nextAvailabilityDateTime#633340, constraintValues#633361, constraintOperators#633360, constraintLabels#633359, logisticUnits#633355, orderQuantityBaseUom#633356, orderQuantityBaseUomUuid#633357, splitIndicator#633347L, netPriceAmount#633364, netPriceCurrencyCode#633365, netPriceQuantity#633366, netPriceQuantityUom#633367, netPriceQuantityUomUuid#633368, sourceOfSupplyUuid#633342, minimumOrderQuantity#633358, orderProposalItemId#633329, orderProposalItemGroupId#633352, optimizationGroups#633371, measurements#633369, externalProductId#633353, externalPlantId#633354, previousOrderProposal#633348L, isFallbackOrderOnly#633345]
Arguments: hashpartitioning(shardId#632615, worklistShardItemId#633127L, 20), ENSURE_REQUIREMENTS, [plan_id=261349]
(23) Sort [codegen id : 4]
Input [39]: [shardId#632615, worklistShardItemId#633127L, quantityAfterProdPlantOptimization#633128, qty#633129, orderProposalId#633328L, originalReplenishmentRunId#633370L, supplierGroup#633330, supplier#633331, supplyingPlant#633335, productGroup#633336, product#633337, plant#633332, subrange#633334, orderDateTime#633338, deliveryDateTime#633333, availabilityDateTime#633339, nextAvailabilityDateTime#633340, constraintValues#633361, constraintOperators#633360, constraintLabels#633359, logisticUnits#633355, orderQuantityBaseUom#633356, orderQuantityBaseUomUuid#633357, splitIndicator#633347L, netPriceAmount#633364, netPriceCurrencyCode#633365, netPriceQuantity#633366, netPriceQuantityUom#633367, netPriceQuantityUomUuid#633368, sourceOfSupplyUuid#633342, minimumOrderQuantity#633358, orderProposalItemId#633329, orderProposalItemGroupId#633352, optimizationGroups#633371, measurements#633369, externalProductId#633353, externalPlantId#633354, previousOrderProposal#633348L, isFallbackOrderOnly#633345]
Arguments: [shardId#632615 ASC NULLS FIRST, worklistShardItemId#633127L ASC NULLS FIRST], false, 0
(24) Scan ExistingRDD [codegen id : 5]
Output [6]: [shardId#634024, worklistShardItemId#634025L, qty#634026, demandChannel#634027, demandStream#634028, kpis#634029]
Arguments: [shardId#634024, worklistShardItemId#634025L, qty#634026, demandChannel#634027, demandStream#634028, kpis#634029], MapPartitionsRDD[30203] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(25) Filter [codegen id : 5]
Input [6]: [shardId#634024, worklistShardItemId#634025L, qty#634026, demandChannel#634027, demandStream#634028, kpis#634029]
Condition : (((isnull(qty#634026) AND isnull(demandChannel#634027)) AND isnull(demandStream#634028)) AND (isnotnull(shardId#634024) AND isnotnull(worklistShardItemId#634025L)))
(26) Project [codegen id : 5]
Output [3]: [shardId#634024, worklistShardItemId#634025L, coalesce(kpis#634029, []) AS prodLocSpecificKpis#634030]
Input [6]: [shardId#634024, worklistShardItemId#634025L, qty#634026, demandChannel#634027, demandStream#634028, kpis#634029]
(27) Exchange
Input [3]: [shardId#634024, worklistShardItemId#634025L, prodLocSpecificKpis#634030]
Arguments: hashpartitioning(shardId#634024, worklistShardItemId#634025L, 20), ENSURE_REQUIREMENTS, [plan_id=261355]
(28) Sort [codegen id : 6]
Input [3]: [shardId#634024, worklistShardItemId#634025L, prodLocSpecificKpis#634030]
Arguments: [shardId#634024 ASC NULLS FIRST, worklistShardItemId#634025L ASC NULLS FIRST], false, 0
(29) SortMergeJoin [codegen id : 7]
Left keys [2]: [shardId#632615, worklistShardItemId#633127L]
Right keys [2]: [shardId#634024, worklistShardItemId#634025L]
Join type: LeftOuter
Join condition: None
(30) Project [codegen id : 7]
Output [40]: [shardId#632615, worklistShardItemId#633127L, quantityAfterProdPlantOptimization#633128, qty#633129, orderProposalId#633328L, originalReplenishmentRunId#633370L, supplierGroup#633330, supplier#633331, supplyingPlant#633335, productGroup#633336, product#633337, plant#633332, subrange#633334, orderDateTime#633338, deliveryDateTime#633333, availabilityDateTime#633339, nextAvailabilityDateTime#633340, constraintValues#633361, constraintOperators#633360, constraintLabels#633359, logisticUnits#633355, orderQuantityBaseUom#633356, orderQuantityBaseUomUuid#633357, splitIndicator#633347L, netPriceAmount#633364, netPriceCurrencyCode#633365, netPriceQuantity#633366, netPriceQuantityUom#633367, netPriceQuantityUomUuid#633368, sourceOfSupplyUuid#633342, minimumOrderQuantity#633358, orderProposalItemId#633329, orderProposalItemGroupId#633352, optimizationGroups#633371, measurements#633369, externalProductId#633353, externalPlantId#633354, previousOrderProposal#633348L, isFallbackOrderOnly#633345, coalesce(prodLocSpecificKpis#634030, []) AS prodLocSpecificKpis#634031]
Input [42]: [shardId#632615, worklistShardItemId#633127L, quantityAfterProdPlantOptimization#633128, qty#633129, orderProposalId#633328L, originalReplenishmentRunId#633370L, supplierGroup#633330, supplier#633331, supplyingPlant#633335, productGroup#633336, product#633337, plant#633332, subrange#633334, orderDateTime#633338, deliveryDateTime#633333, availabilityDateTime#633339, nextAvailabilityDateTime#633340, constraintValues#633361, constraintOperators#633360, constraintLabels#633359, logisticUnits#633355, orderQuantityBaseUom#633356, orderQuantityBaseUomUuid#633357, splitIndicator#633347L, netPriceAmount#633364, netPriceCurrencyCode#633365, netPriceQuantity#633366, netPriceQuantityUom#633367, netPriceQuantityUomUuid#633368, sourceOfSupplyUuid#633342, minimumOrderQuantity#633358, orderProposalItemId#633329, orderProposalItemGroupId#633352, optimizationGroups#633371, measurements#633369, externalProductId#633353, externalPlantId#633354, previousOrderProposal#633348L, isFallbackOrderOnly#633345, shardId#634024, worklistShardItemId#634025L, prodLocSpecificKpis#634030]
(31) Scan ExistingRDD [codegen id : 8]
Output [6]: [shardId#634040, worklistShardItemId#634041L, qty#634042, demandChannel#634043, demandStream#634044, kpis#634045]
Arguments: [shardId#634040, worklistShardItemId#634041L, qty#634042, demandChannel#634043, demandStream#634044, kpis#634045], MapPartitionsRDD[30203] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(32) Filter [codegen id : 8]
Input [6]: [shardId#634040, worklistShardItemId#634041L, qty#634042, demandChannel#634043, demandStream#634044, kpis#634045]
Condition : ((((isnull(qty#634042) AND isnotnull(demandChannel#634043)) AND isnotnull(demandStream#634044)) AND (size(kpis#634045, true) > 0)) AND (isnotnull(shardId#634040) AND isnotnull(worklistShardItemId#634041L)))
(33) Project [codegen id : 8]
Output [5]: [shardId#634040, worklistShardItemId#634041L, demandChannel#634043, demandStream#634044, kpis#634045]
Input [6]: [shardId#634040, worklistShardItemId#634041L, qty#634042, demandChannel#634043, demandStream#634044, kpis#634045]
(34) ObjectHashAggregate
Input [5]: [shardId#634040, worklistShardItemId#634041L, demandChannel#634043, demandStream#634044, kpis#634045]
Keys [2]: [shardId#634040, worklistShardItemId#634041L]
Functions [1]: [partial_collect_list(struct(demandChannel, demandChannel#634043, demandStream, demandStream#634044, kpis, kpis#634045), 0, 0)]
Aggregate Attributes [1]: [buf#634220]
Results [3]: [shardId#634040, worklistShardItemId#634041L, buf#634221]
(35) Exchange
Input [3]: [shardId#634040, worklistShardItemId#634041L, buf#634221]
Arguments: hashpartitioning(shardId#634040, worklistShardItemId#634041L, 20), ENSURE_REQUIREMENTS, [plan_id=261366]
(36) ObjectHashAggregate
Input [3]: [shardId#634040, worklistShardItemId#634041L, buf#634221]
Keys [2]: [shardId#634040, worklistShardItemId#634041L]
Functions [1]: [collect_list(struct(demandChannel, demandChannel#634043, demandStream, demandStream#634044, kpis, kpis#634045), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(demandChannel, demandChannel#634043, demandStream, demandStream#634044, kpis, kpis#634045), 0, 0)#634039]
Results [3]: [shardId#634040, worklistShardItemId#634041L, collect_list(struct(demandChannel, demandChannel#634043, demandStream, demandStream#634044, kpis, kpis#634045), 0, 0)#634039 AS channelStreamSpecificKpis#634032]
(37) Sort [codegen id : 9]
Input [3]: [shardId#634040, worklistShardItemId#634041L, channelStreamSpecificKpis#634032]
Arguments: [shardId#634040 ASC NULLS FIRST, worklistShardItemId#634041L ASC NULLS FIRST], false, 0
(38) SortMergeJoin [codegen id : 10]
Left keys [2]: [shardId#632615, worklistShardItemId#633127L]
Right keys [2]: [shardId#634040, worklistShardItemId#634041L]
Join type: LeftOuter
Join condition: None
(39) Project [codegen id : 10]
Output [41]: [shardId#632615, worklistShardItemId#633127L, quantityAfterProdPlantOptimization#633128, qty#633129, orderProposalId#633328L, originalReplenishmentRunId#633370L, supplierGroup#633330, supplier#633331, supplyingPlant#633335, productGroup#633336, product#633337, plant#633332, subrange#633334, orderDateTime#633338, deliveryDateTime#633333, availabilityDateTime#633339, nextAvailabilityDateTime#633340, constraintValues#633361, constraintOperators#633360, constraintLabels#633359, logisticUnits#633355, orderQuantityBaseUom#633356, orderQuantityBaseUomUuid#633357, splitIndicator#633347L, netPriceAmount#633364, netPriceCurrencyCode#633365, netPriceQuantity#633366, netPriceQuantityUom#633367, netPriceQuantityUomUuid#633368, sourceOfSupplyUuid#633342, minimumOrderQuantity#633358, orderProposalItemId#633329, orderProposalItemGroupId#633352, optimizationGroups#633371, measurements#633369, externalProductId#633353, externalPlantId#633354, previousOrderProposal#633348L, isFallbackOrderOnly#633345, prodLocSpecificKpis#634031, coalesce(channelStreamSpecificKpis#634032, []) AS channelStreamSpecificKpis#634046]
Input [43]: [shardId#632615, worklistShardItemId#633127L, quantityAfterProdPlantOptimization#633128, qty#633129, orderProposalId#633328L, originalReplenishmentRunId#633370L, supplierGroup#633330, supplier#633331, supplyingPlant#633335, productGroup#633336, product#633337, plant#633332, subrange#633334, orderDateTime#633338, deliveryDateTime#633333, availabilityDateTime#633339, nextAvailabilityDateTime#633340, constraintValues#633361, constraintOperators#633360, constraintLabels#633359, logisticUnits#633355, orderQuantityBaseUom#633356, orderQuantityBaseUomUuid#633357, splitIndicator#633347L, netPriceAmount#633364, netPriceCurrencyCode#633365, netPriceQuantity#633366, netPriceQuantityUom#633367, netPriceQuantityUomUuid#633368, sourceOfSupplyUuid#633342, minimumOrderQuantity#633358, orderProposalItemId#633329, orderProposalItemGroupId#633352, optimizationGroups#633371, measurements#633369, externalProductId#633353, externalPlantId#633354, previousOrderProposal#633348L, isFallbackOrderOnly#633345, prodLocSpecificKpis#634031, shardId#634040, worklistShardItemId#634041L, channelStreamSpecificKpis#634032]
(40) Scan ExistingRDD [codegen id : 11]
Output [6]: [shardId#634053, worklistShardItemId#634054L, qty#634055, demandChannel#634056, demandStream#634057, kpis#634058]
Arguments: [shardId#634053, worklistShardItemId#634054L, qty#634055, demandChannel#634056, demandStream#634057, kpis#634058], MapPartitionsRDD[30203] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(41) Filter [codegen id : 11]
Input [6]: [shardId#634053, worklistShardItemId#634054L, qty#634055, demandChannel#634056, demandStream#634057, kpis#634058]
Condition : ((isnotnull(qty#634055) AND isnotnull(kpis#634058)) AND (isnotnull(shardId#634053) AND isnotnull(worklistShardItemId#634054L)))
(42) Project [codegen id : 11]
Output [4]: [shardId#634053, worklistShardItemId#634054L, qty#634055, kpis#634058]
Input [6]: [shardId#634053, worklistShardItemId#634054L, qty#634055, demandChannel#634056, demandStream#634057, kpis#634058]
(43) ObjectHashAggregate
Input [4]: [shardId#634053, worklistShardItemId#634054L, qty#634055, kpis#634058]
Keys [2]: [shardId#634053, worklistShardItemId#634054L]
Functions [1]: [partial_collect_list(struct(qty, qty#634055, kpis, kpis#634058), 0, 0)]
Aggregate Attributes [1]: [buf#634222]
Results [3]: [shardId#634053, worklistShardItemId#634054L, buf#634223]
(44) Exchange
Input [3]: [shardId#634053, worklistShardItemId#634054L, buf#634223]
Arguments: hashpartitioning(shardId#634053, worklistShardItemId#634054L, 20), ENSURE_REQUIREMENTS, [plan_id=261378]
(45) ObjectHashAggregate
Input [3]: [shardId#634053, worklistShardItemId#634054L, buf#634223]
Keys [2]: [shardId#634053, worklistShardItemId#634054L]
Functions [1]: [collect_list(struct(qty, qty#634055, kpis, kpis#634058), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(qty, qty#634055, kpis, kpis#634058), 0, 0)#634052]
Results [3]: [shardId#634053, worklistShardItemId#634054L, map_from_entries(collect_list(struct(qty, qty#634055, kpis, kpis#634058), 0, 0)#634052) AS quantityKpis#634047]
(46) Sort [codegen id : 12]
Input [3]: [shardId#634053, worklistShardItemId#634054L, quantityKpis#634047]
Arguments: [shardId#634053 ASC NULLS FIRST, worklistShardItemId#634054L ASC NULLS FIRST], false, 0
(47) SortMergeJoin [codegen id : 13]
Left keys [2]: [shardId#632615, worklistShardItemId#633127L]
Right keys [2]: [shardId#634053, worklistShardItemId#634054L]
Join type: LeftOuter
Join condition: None
(48) Project [codegen id : 13]
Output [42]: [shardId#632615, worklistShardItemId#633127L, quantityAfterProdPlantOptimization#633128, qty#633129, orderProposalId#633328L, originalReplenishmentRunId#633370L, supplierGroup#633330, supplier#633331, supplyingPlant#633335, productGroup#633336, product#633337, plant#633332, subrange#633334, orderDateTime#633338, deliveryDateTime#633333, availabilityDateTime#633339, nextAvailabilityDateTime#633340, constraintValues#633361, constraintOperators#633360, constraintLabels#633359, logisticUnits#633355, orderQuantityBaseUom#633356, orderQuantityBaseUomUuid#633357, splitIndicator#633347L, netPriceAmount#633364, netPriceCurrencyCode#633365, netPriceQuantity#633366, netPriceQuantityUom#633367, netPriceQuantityUomUuid#633368, sourceOfSupplyUuid#633342, minimumOrderQuantity#633358, orderProposalItemId#633329, orderProposalItemGroupId#633352, optimizationGroups#633371, measurements#633369, externalProductId#633353, externalPlantId#633354, previousOrderProposal#633348L, isFallbackOrderOnly#633345, prodLocSpecificKpis#634031, channelStreamSpecificKpis#634046, coalesce(quantityKpis#634047, map(keys: [], values: [])) AS quantityKpis#634059]
Input [44]: [shardId#632615, worklistShardItemId#633127L, quantityAfterProdPlantOptimization#633128, qty#633129, orderProposalId#633328L, originalReplenishmentRunId#633370L, supplierGroup#633330, supplier#633331, supplyingPlant#633335, productGroup#633336, product#633337, plant#633332, subrange#633334, orderDateTime#633338, deliveryDateTime#633333, availabilityDateTime#633339, nextAvailabilityDateTime#633340, constraintValues#633361, constraintOperators#633360, constraintLabels#633359, logisticUnits#633355, orderQuantityBaseUom#633356, orderQuantityBaseUomUuid#633357, splitIndicator#633347L, netPriceAmount#633364, netPriceCurrencyCode#633365, netPriceQuantity#633366, netPriceQuantityUom#633367, netPriceQuantityUomUuid#633368, sourceOfSupplyUuid#633342, minimumOrderQuantity#633358, orderProposalItemId#633329, orderProposalItemGroupId#633352, optimizationGroups#633371, measurements#633369, externalProductId#633353, externalPlantId#633354, previousOrderProposal#633348L, isFallbackOrderOnly#633345, prodLocSpecificKpis#634031, channelStreamSpecificKpis#634046, shardId#634053, worklistShardItemId#634054L, quantityKpis#634047]
(49) Filter [codegen id : 1]
Input [4]: [orderProposalId#633285L, orderProposalItemId#633286, quantityKpis#634059, shardId#632615]
Condition : ((isnotnull(shardId#632615) AND (shardId#632615 = 0_1_10000002107)) AND (size(quantityKpis#634059, true) > 0))
(50) Project [codegen id : 1]
Output [3]: [orderProposalId#633285L, orderProposalItemId#633286, quantityKpis#634059]
Input [4]: [orderProposalId#633285L, orderProposalItemId#633286, quantityKpis#634059, shardId#632615]
(51) Generate [codegen id : 1]
Input [3]: [orderProposalId#633285L, orderProposalItemId#633286, quantityKpis#634059]
Arguments: explode(quantityKpis#634059), [orderProposalId#633285L, orderProposalItemId#633286], false, [orderQuantityInBaseUnit#637973, kpis#637974]
(52) Project
Output [7]: [orderProposalId#633285L, cast(orderProposalItemId#633286 as bigint) AS orderProposalItemId#637972L, orderQuantityInBaseUnit#637973, filter(kpis#637974, lambdafunction((lambda x_1651#637976.label = ServiceLevel), lambda x_1651#637976, false))[0].value AS serviceLevel#637975, filter(kpis#637974, lambdafunction((lambda x_1652#637978.label = RangeOfCoverage), lambda x_1652#637978, false))[0].value AS rangeOfCoverage#637977, filter(kpis#637974, lambdafunction((lambda x_1653#637980.label = ServiceLevelAtStartOfDelisting), lambda x_1653#637980, false))[0].value AS serviceLevelAtEndOfListing#637979, 10000002107 AS replenishmentRunId#637982L]
Input [4]: [orderProposalId#633285L, orderProposalItemId#633286, orderQuantityInBaseUnit#637973, kpis#637974]
(53) WriteFiles
Input [7]: [orderProposalId#633285L, orderProposalItemId#637972L, orderQuantityInBaseUnit#637973, serviceLevel#637975, rangeOfCoverage#637977, serviceLevelAtEndOfListing#637979, replenishmentRunId#637982L]
(54) 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/10000002107/shardId=0_1_10000002107/sequenceId=3, 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/10000002107/shardId=0_1_10000002107/sequenceId=3], Overwrite, [orderProposalId, orderProposalItemId, orderQuantityInBaseUnit, serviceLevel, rangeOfCoverage, serviceLevelAtEndOfListing, replenishmentRunId]