== 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#663018L, orderProposalItemId#663019, quantityKpis#664414, shardId#662288]
Arguments: [orderProposalId#663018L, orderProposalItemId#663019, quantityKpis#664414, shardId#662288], [isnotnull(shardId#662288), (shardId#662288 = 0_1_10000002107), (size(quantityKpis#664414, true) > 0)]
(2) InMemoryRelation
Arguments: [shardId#662288, worklistShardItemId#662859L, quantityAfterProdPlantOptimization#662860, qty#662861, orderProposalId#663018L, originalReplenishmentRunId#663021L, supplierGroup#663028, supplier#663029, supplyingPlant#663059, productGroup#663060, product#663031, plant#663032, subrange#663030, orderDateTime#663036, deliveryDateTime#663037, availabilityDateTime#663038, nextAvailabilityDateTime#663039, constraintValues#663053, constraintOperators#663051, constraintLabels#663050, logisticUnits#663055, orderQuantityBaseUom#663041, orderQuantityBaseUomUuid#663042, splitIndicator#663023L, netPriceAmount#663046, ... 17 more fields], StorageLevel(disk, memory, 2 replicas)
(3) InMemoryTableScan
Output [2]: [shardId#662288, items#662290]
Arguments: [shardId#662288, items#662290], [(size(items#662290, true) > 0), isnotnull(items#662290)]
(4) InMemoryRelation
Arguments: [shardId#662288, orderProposalId#662289L, items#662290, optimizationGroups#662291, isOptimal#662292, optimizationInsights#662294], StorageLevel(disk, memory, 2 replicas)
(5) InMemoryTableScan
Output [6]: [shardId#662288, orderProposalId#662289L, items#662290, optimizationGroups#662291, isOptimal#662292, optimizationInsights#662294]
Arguments: [shardId#662288, orderProposalId#662289L, items#662290, optimizationGroups#662291, isOptimal#662292, optimizationInsights#662294], [isnotnull(shardId#662288), (shardId#662288 = 0_1_10000002107)]
(6) InMemoryRelation
Arguments: [shardId#662288, orderProposalId#662289L, items#662290, optimizationGroups#662291, isOptimal#662292, lastModified#662293, optimizationInsights#662294], StorageLevel(disk, memory, 2 replicas)
(7) Scan ExistingRDD [codegen id : 1]
Output [7]: [shardId#662288, orderProposalId#662289L, items#662290, optimizationGroups#662291, isOptimal#662292, lastModified#662293, optimizationInsights#662294]
Arguments: [shardId#662288, orderProposalId#662289L, items#662290, optimizationGroups#662291, isOptimal#662292, lastModified#662293, optimizationInsights#662294], MapPartitionsRDD[31662] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(8) Filter [codegen id : 1]
Input [7]: [shardId#662288, orderProposalId#662289L, items#662290, optimizationGroups#662291, isOptimal#662292, lastModified#662293, optimizationInsights#662294]
Condition : (isnotnull(shardId#662288) AND (shardId#662288 = 0_1_10000002107))
(9) Filter [codegen id : 1]
Input [6]: [shardId#662288, orderProposalId#662289L, items#662290, optimizationGroups#662291, isOptimal#662292, optimizationInsights#662294]
Condition : (isnotnull(shardId#662288) AND (shardId#662288 = 0_1_10000002107))
(10) Filter [codegen id : 3]
Input [2]: [shardId#662288, items#662290]
Condition : ((size(items#662290, true) > 0) AND isnotnull(items#662290))
(11) Generate [codegen id : 3]
Input [2]: [shardId#662288, items#662290]
Arguments: explode(items#662290), [shardId#662288], false, [item#662858]
(12) Project [codegen id : 3]
Output [4]: [shardId#662288, item#662858.worklistShardItemId AS worklistShardItemId#662859L, item#662858.quantityAfterProdPlantOptimization AS quantityAfterProdPlantOptimization#662860, item#662858.qty AS qty#662861]
Input [2]: [shardId#662288, item#662858]
(13) Scan parquet
Output [38]: [orderProposalId#663133L, orderProposalItemId#663134, supplierGroup#663135, supplier#663136, plant#663137, deliveryDateTime#663138, subrange#663139, supplyingPlant#663140, productGroup#663141, product#663142, orderDateTime#663143, availabilityDateTime#663144, nextAvailabilityDateTime#663145, sourceOfSupplyUuid#663147, isFallbackOrderOnly#663150, splitIndicator#663152L, previousOrderProposal#663153L, worklistShardItemId#663156L, orderProposalItemGroupId#663157, externalProductId#663158, externalPlantId#663159, logisticUnits#663160, orderQuantityBaseUom#663161, orderQuantityBaseUomUuid#663162, minimumOrderQuantity#663163, constraintLabels#663164, constraintOperators#663165, constraintValues#663166, netPriceAmount#663169, netPriceCurrencyCode#663170, netPriceQuantity#663171, netPriceQuantityUom#663172, netPriceQuantityUomUuid#663173, measurements#663174, originalReplenishmentRunId#663175L, optimizationGroups#663176, shardId#663177, sequenceId#663155]
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#663177), isnotnull(sequenceId#663155), (shardId#663177 = 0_1_10000002107), (sequenceId#663155 = 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>>
(14) ColumnarToRow [codegen id : 1]
Input [38]: [orderProposalId#663133L, orderProposalItemId#663134, supplierGroup#663135, supplier#663136, plant#663137, deliveryDateTime#663138, subrange#663139, supplyingPlant#663140, productGroup#663141, product#663142, orderDateTime#663143, availabilityDateTime#663144, nextAvailabilityDateTime#663145, sourceOfSupplyUuid#663147, isFallbackOrderOnly#663150, splitIndicator#663152L, previousOrderProposal#663153L, worklistShardItemId#663156L, orderProposalItemGroupId#663157, externalProductId#663158, externalPlantId#663159, logisticUnits#663160, orderQuantityBaseUom#663161, orderQuantityBaseUomUuid#663162, minimumOrderQuantity#663163, constraintLabels#663164, constraintOperators#663165, constraintValues#663166, netPriceAmount#663169, netPriceCurrencyCode#663170, netPriceQuantity#663171, netPriceQuantityUom#663172, netPriceQuantityUomUuid#663173, measurements#663174, originalReplenishmentRunId#663175L, optimizationGroups#663176, shardId#663177, sequenceId#663155]
(15) Filter [codegen id : 1]
Input [38]: [orderProposalId#663133L, orderProposalItemId#663134, supplierGroup#663135, supplier#663136, plant#663137, deliveryDateTime#663138, subrange#663139, supplyingPlant#663140, productGroup#663141, product#663142, orderDateTime#663143, availabilityDateTime#663144, nextAvailabilityDateTime#663145, sourceOfSupplyUuid#663147, isFallbackOrderOnly#663150, splitIndicator#663152L, previousOrderProposal#663153L, worklistShardItemId#663156L, orderProposalItemGroupId#663157, externalProductId#663158, externalPlantId#663159, logisticUnits#663160, orderQuantityBaseUom#663161, orderQuantityBaseUomUuid#663162, minimumOrderQuantity#663163, constraintLabels#663164, constraintOperators#663165, constraintValues#663166, netPriceAmount#663169, netPriceCurrencyCode#663170, netPriceQuantity#663171, netPriceQuantityUom#663172, netPriceQuantityUomUuid#663173, measurements#663174, originalReplenishmentRunId#663175L, optimizationGroups#663176, shardId#663177, sequenceId#663155]
Condition : isnotnull(worklistShardItemId#663156L)
(16) Project [codegen id : 1]
Output [36]: [orderProposalId#663133L, orderProposalItemId#663134, supplierGroup#663135, supplier#663136, plant#663137, deliveryDateTime#663138, subrange#663139, supplyingPlant#663140, productGroup#663141, product#663142, orderDateTime#663143, availabilityDateTime#663144, nextAvailabilityDateTime#663145, sourceOfSupplyUuid#663147, isFallbackOrderOnly#663150, splitIndicator#663152L, previousOrderProposal#663153L, worklistShardItemId#663156L, orderProposalItemGroupId#663157, externalProductId#663158, externalPlantId#663159, logisticUnits#663160, orderQuantityBaseUom#663161, orderQuantityBaseUomUuid#663162, minimumOrderQuantity#663163, constraintLabels#663164, constraintOperators#663165, constraintValues#663166, netPriceAmount#663169, netPriceCurrencyCode#663170, netPriceQuantity#663171, netPriceQuantityUom#663172, netPriceQuantityUomUuid#663173, measurements#663174, originalReplenishmentRunId#663175L, optimizationGroups#663176]
Input [38]: [orderProposalId#663133L, orderProposalItemId#663134, supplierGroup#663135, supplier#663136, plant#663137, deliveryDateTime#663138, subrange#663139, supplyingPlant#663140, productGroup#663141, product#663142, orderDateTime#663143, availabilityDateTime#663144, nextAvailabilityDateTime#663145, sourceOfSupplyUuid#663147, isFallbackOrderOnly#663150, splitIndicator#663152L, previousOrderProposal#663153L, worklistShardItemId#663156L, orderProposalItemGroupId#663157, externalProductId#663158, externalPlantId#663159, logisticUnits#663160, orderQuantityBaseUom#663161, orderQuantityBaseUomUuid#663162, minimumOrderQuantity#663163, constraintLabels#663164, constraintOperators#663165, constraintValues#663166, netPriceAmount#663169, netPriceCurrencyCode#663170, netPriceQuantity#663171, netPriceQuantityUom#663172, netPriceQuantityUomUuid#663173, measurements#663174, originalReplenishmentRunId#663175L, optimizationGroups#663176, shardId#663177, sequenceId#663155]
(17) Exchange
Input [36]: [orderProposalId#663133L, orderProposalItemId#663134, supplierGroup#663135, supplier#663136, plant#663137, deliveryDateTime#663138, subrange#663139, supplyingPlant#663140, productGroup#663141, product#663142, orderDateTime#663143, availabilityDateTime#663144, nextAvailabilityDateTime#663145, sourceOfSupplyUuid#663147, isFallbackOrderOnly#663150, splitIndicator#663152L, previousOrderProposal#663153L, worklistShardItemId#663156L, orderProposalItemGroupId#663157, externalProductId#663158, externalPlantId#663159, logisticUnits#663160, orderQuantityBaseUom#663161, orderQuantityBaseUomUuid#663162, minimumOrderQuantity#663163, constraintLabels#663164, constraintOperators#663165, constraintValues#663166, netPriceAmount#663169, netPriceCurrencyCode#663170, netPriceQuantity#663171, netPriceQuantityUom#663172, netPriceQuantityUomUuid#663173, measurements#663174, originalReplenishmentRunId#663175L, optimizationGroups#663176]
Arguments: hashpartitioning(worklistShardItemId#663156L, 20), REPARTITION_BY_NUM, [plan_id=272757]
(18) Project [codegen id : 2]
Output [36]: [worklistShardItemId#663156L, orderProposalId#663133L, orderProposalItemId#663134, orderProposalItemGroupId#663157, originalReplenishmentRunId#663175L, splitIndicator#663152L, previousOrderProposal#663153L, sourceOfSupplyUuid#663147, supplierGroup#663135, supplier#663136, subrange#663139, product#663142, plant#663137, orderDateTime#663143, deliveryDateTime#663138, availabilityDateTime#663144, nextAvailabilityDateTime#663145, isFallbackOrderOnly#663150, orderQuantityBaseUom#663161, orderQuantityBaseUomUuid#663162, netPriceQuantity#663171, netPriceQuantityUom#663172, netPriceQuantityUomUuid#663173, netPriceAmount#663169, netPriceCurrencyCode#663170, measurements#663174, minimumOrderQuantity#663163, constraintLabels#663164, constraintOperators#663165, constraintValues#663166, logisticUnits#663160, optimizationGroups#663176, externalProductId#663158, externalPlantId#663159, supplyingPlant#663140, productGroup#663141]
Input [36]: [orderProposalId#663133L, orderProposalItemId#663134, supplierGroup#663135, supplier#663136, plant#663137, deliveryDateTime#663138, subrange#663139, supplyingPlant#663140, productGroup#663141, product#663142, orderDateTime#663143, availabilityDateTime#663144, nextAvailabilityDateTime#663145, sourceOfSupplyUuid#663147, isFallbackOrderOnly#663150, splitIndicator#663152L, previousOrderProposal#663153L, worklistShardItemId#663156L, orderProposalItemGroupId#663157, externalProductId#663158, externalPlantId#663159, logisticUnits#663160, orderQuantityBaseUom#663161, orderQuantityBaseUomUuid#663162, minimumOrderQuantity#663163, constraintLabels#663164, constraintOperators#663165, constraintValues#663166, netPriceAmount#663169, netPriceCurrencyCode#663170, netPriceQuantity#663171, netPriceQuantityUom#663172, netPriceQuantityUomUuid#663173, measurements#663174, originalReplenishmentRunId#663175L, optimizationGroups#663176]
(19) BroadcastExchange
Input [36]: [worklistShardItemId#663156L, orderProposalId#663133L, orderProposalItemId#663134, orderProposalItemGroupId#663157, originalReplenishmentRunId#663175L, splitIndicator#663152L, previousOrderProposal#663153L, sourceOfSupplyUuid#663147, supplierGroup#663135, supplier#663136, subrange#663139, product#663142, plant#663137, orderDateTime#663143, deliveryDateTime#663138, availabilityDateTime#663144, nextAvailabilityDateTime#663145, isFallbackOrderOnly#663150, orderQuantityBaseUom#663161, orderQuantityBaseUomUuid#663162, netPriceQuantity#663171, netPriceQuantityUom#663172, netPriceQuantityUomUuid#663173, netPriceAmount#663169, netPriceCurrencyCode#663170, measurements#663174, minimumOrderQuantity#663163, constraintLabels#663164, constraintOperators#663165, constraintValues#663166, logisticUnits#663160, optimizationGroups#663176, externalProductId#663158, externalPlantId#663159, supplyingPlant#663140, productGroup#663141]
Arguments: HashedRelationBroadcastMode(List(input[0, bigint, true]),false), [plan_id=272761]
(20) BroadcastHashJoin [codegen id : 3]
Left keys [1]: [worklistShardItemId#662859L]
Right keys [1]: [worklistShardItemId#663156L]
Join type: LeftOuter
Join condition: (shardId#662288 = 0_1_10000002107)
(21) Project [codegen id : 3]
Output [39]: [shardId#662288, worklistShardItemId#662859L, quantityAfterProdPlantOptimization#662860, qty#662861, orderProposalId#663133L, originalReplenishmentRunId#663175L, supplierGroup#663135, supplier#663136, supplyingPlant#663140, productGroup#663141, product#663142, plant#663137, subrange#663139, orderDateTime#663143, deliveryDateTime#663138, availabilityDateTime#663144, nextAvailabilityDateTime#663145, constraintValues#663166, constraintOperators#663165, constraintLabels#663164, logisticUnits#663160, orderQuantityBaseUom#663161, orderQuantityBaseUomUuid#663162, splitIndicator#663152L, netPriceAmount#663169, netPriceCurrencyCode#663170, netPriceQuantity#663171, netPriceQuantityUom#663172, netPriceQuantityUomUuid#663173, sourceOfSupplyUuid#663147, minimumOrderQuantity#663163, orderProposalItemId#663134, orderProposalItemGroupId#663157, optimizationGroups#663176, measurements#663174, externalProductId#663158, externalPlantId#663159, previousOrderProposal#663153L, isFallbackOrderOnly#663150]
Input [40]: [shardId#662288, worklistShardItemId#662859L, quantityAfterProdPlantOptimization#662860, qty#662861, worklistShardItemId#663156L, orderProposalId#663133L, orderProposalItemId#663134, orderProposalItemGroupId#663157, originalReplenishmentRunId#663175L, splitIndicator#663152L, previousOrderProposal#663153L, sourceOfSupplyUuid#663147, supplierGroup#663135, supplier#663136, subrange#663139, product#663142, plant#663137, orderDateTime#663143, deliveryDateTime#663138, availabilityDateTime#663144, nextAvailabilityDateTime#663145, isFallbackOrderOnly#663150, orderQuantityBaseUom#663161, orderQuantityBaseUomUuid#663162, netPriceQuantity#663171, netPriceQuantityUom#663172, netPriceQuantityUomUuid#663173, netPriceAmount#663169, netPriceCurrencyCode#663170, measurements#663174, minimumOrderQuantity#663163, constraintLabels#663164, constraintOperators#663165, constraintValues#663166, logisticUnits#663160, optimizationGroups#663176, externalProductId#663158, externalPlantId#663159, supplyingPlant#663140, productGroup#663141]
(22) Exchange
Input [39]: [shardId#662288, worklistShardItemId#662859L, quantityAfterProdPlantOptimization#662860, qty#662861, orderProposalId#663133L, originalReplenishmentRunId#663175L, supplierGroup#663135, supplier#663136, supplyingPlant#663140, productGroup#663141, product#663142, plant#663137, subrange#663139, orderDateTime#663143, deliveryDateTime#663138, availabilityDateTime#663144, nextAvailabilityDateTime#663145, constraintValues#663166, constraintOperators#663165, constraintLabels#663164, logisticUnits#663160, orderQuantityBaseUom#663161, orderQuantityBaseUomUuid#663162, splitIndicator#663152L, netPriceAmount#663169, netPriceCurrencyCode#663170, netPriceQuantity#663171, netPriceQuantityUom#663172, netPriceQuantityUomUuid#663173, sourceOfSupplyUuid#663147, minimumOrderQuantity#663163, orderProposalItemId#663134, orderProposalItemGroupId#663157, optimizationGroups#663176, measurements#663174, externalProductId#663158, externalPlantId#663159, previousOrderProposal#663153L, isFallbackOrderOnly#663150]
Arguments: hashpartitioning(shardId#662288, worklistShardItemId#662859L, 20), ENSURE_REQUIREMENTS, [plan_id=272766]
(23) Sort [codegen id : 4]
Input [39]: [shardId#662288, worklistShardItemId#662859L, quantityAfterProdPlantOptimization#662860, qty#662861, orderProposalId#663133L, originalReplenishmentRunId#663175L, supplierGroup#663135, supplier#663136, supplyingPlant#663140, productGroup#663141, product#663142, plant#663137, subrange#663139, orderDateTime#663143, deliveryDateTime#663138, availabilityDateTime#663144, nextAvailabilityDateTime#663145, constraintValues#663166, constraintOperators#663165, constraintLabels#663164, logisticUnits#663160, orderQuantityBaseUom#663161, orderQuantityBaseUomUuid#663162, splitIndicator#663152L, netPriceAmount#663169, netPriceCurrencyCode#663170, netPriceQuantity#663171, netPriceQuantityUom#663172, netPriceQuantityUomUuid#663173, sourceOfSupplyUuid#663147, minimumOrderQuantity#663163, orderProposalItemId#663134, orderProposalItemGroupId#663157, optimizationGroups#663176, measurements#663174, externalProductId#663158, externalPlantId#663159, previousOrderProposal#663153L, isFallbackOrderOnly#663150]
Arguments: [shardId#662288 ASC NULLS FIRST, worklistShardItemId#662859L ASC NULLS FIRST], false, 0
(24) Scan ExistingRDD [codegen id : 5]
Output [6]: [shardId#664379, worklistShardItemId#664380L, qty#664381, demandChannel#664382, demandStream#664383, kpis#664384]
Arguments: [shardId#664379, worklistShardItemId#664380L, qty#664381, demandChannel#664382, demandStream#664383, kpis#664384], MapPartitionsRDD[31897] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(25) Filter [codegen id : 5]
Input [6]: [shardId#664379, worklistShardItemId#664380L, qty#664381, demandChannel#664382, demandStream#664383, kpis#664384]
Condition : (((isnull(qty#664381) AND isnull(demandChannel#664382)) AND isnull(demandStream#664383)) AND (isnotnull(shardId#664379) AND isnotnull(worklistShardItemId#664380L)))
(26) Project [codegen id : 5]
Output [3]: [shardId#664379, worklistShardItemId#664380L, coalesce(kpis#664384, []) AS prodLocSpecificKpis#664385]
Input [6]: [shardId#664379, worklistShardItemId#664380L, qty#664381, demandChannel#664382, demandStream#664383, kpis#664384]
(27) Exchange
Input [3]: [shardId#664379, worklistShardItemId#664380L, prodLocSpecificKpis#664385]
Arguments: hashpartitioning(shardId#664379, worklistShardItemId#664380L, 20), ENSURE_REQUIREMENTS, [plan_id=272772]
(28) Sort [codegen id : 6]
Input [3]: [shardId#664379, worklistShardItemId#664380L, prodLocSpecificKpis#664385]
Arguments: [shardId#664379 ASC NULLS FIRST, worklistShardItemId#664380L ASC NULLS FIRST], false, 0
(29) SortMergeJoin [codegen id : 7]
Left keys [2]: [shardId#662288, worklistShardItemId#662859L]
Right keys [2]: [shardId#664379, worklistShardItemId#664380L]
Join type: LeftOuter
Join condition: None
(30) Project [codegen id : 7]
Output [40]: [shardId#662288, worklistShardItemId#662859L, quantityAfterProdPlantOptimization#662860, qty#662861, orderProposalId#663133L, originalReplenishmentRunId#663175L, supplierGroup#663135, supplier#663136, supplyingPlant#663140, productGroup#663141, product#663142, plant#663137, subrange#663139, orderDateTime#663143, deliveryDateTime#663138, availabilityDateTime#663144, nextAvailabilityDateTime#663145, constraintValues#663166, constraintOperators#663165, constraintLabels#663164, logisticUnits#663160, orderQuantityBaseUom#663161, orderQuantityBaseUomUuid#663162, splitIndicator#663152L, netPriceAmount#663169, netPriceCurrencyCode#663170, netPriceQuantity#663171, netPriceQuantityUom#663172, netPriceQuantityUomUuid#663173, sourceOfSupplyUuid#663147, minimumOrderQuantity#663163, orderProposalItemId#663134, orderProposalItemGroupId#663157, optimizationGroups#663176, measurements#663174, externalProductId#663158, externalPlantId#663159, previousOrderProposal#663153L, isFallbackOrderOnly#663150, coalesce(prodLocSpecificKpis#664385, []) AS prodLocSpecificKpis#664386]
Input [42]: [shardId#662288, worklistShardItemId#662859L, quantityAfterProdPlantOptimization#662860, qty#662861, orderProposalId#663133L, originalReplenishmentRunId#663175L, supplierGroup#663135, supplier#663136, supplyingPlant#663140, productGroup#663141, product#663142, plant#663137, subrange#663139, orderDateTime#663143, deliveryDateTime#663138, availabilityDateTime#663144, nextAvailabilityDateTime#663145, constraintValues#663166, constraintOperators#663165, constraintLabels#663164, logisticUnits#663160, orderQuantityBaseUom#663161, orderQuantityBaseUomUuid#663162, splitIndicator#663152L, netPriceAmount#663169, netPriceCurrencyCode#663170, netPriceQuantity#663171, netPriceQuantityUom#663172, netPriceQuantityUomUuid#663173, sourceOfSupplyUuid#663147, minimumOrderQuantity#663163, orderProposalItemId#663134, orderProposalItemGroupId#663157, optimizationGroups#663176, measurements#663174, externalProductId#663158, externalPlantId#663159, previousOrderProposal#663153L, isFallbackOrderOnly#663150, shardId#664379, worklistShardItemId#664380L, prodLocSpecificKpis#664385]
(31) Scan ExistingRDD [codegen id : 8]
Output [6]: [shardId#664395, worklistShardItemId#664396L, qty#664397, demandChannel#664398, demandStream#664399, kpis#664400]
Arguments: [shardId#664395, worklistShardItemId#664396L, qty#664397, demandChannel#664398, demandStream#664399, kpis#664400], MapPartitionsRDD[31897] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(32) Filter [codegen id : 8]
Input [6]: [shardId#664395, worklistShardItemId#664396L, qty#664397, demandChannel#664398, demandStream#664399, kpis#664400]
Condition : ((((isnull(qty#664397) AND isnotnull(demandChannel#664398)) AND isnotnull(demandStream#664399)) AND (size(kpis#664400, true) > 0)) AND (isnotnull(shardId#664395) AND isnotnull(worklistShardItemId#664396L)))
(33) Project [codegen id : 8]
Output [5]: [shardId#664395, worklistShardItemId#664396L, demandChannel#664398, demandStream#664399, kpis#664400]
Input [6]: [shardId#664395, worklistShardItemId#664396L, qty#664397, demandChannel#664398, demandStream#664399, kpis#664400]
(34) ObjectHashAggregate
Input [5]: [shardId#664395, worklistShardItemId#664396L, demandChannel#664398, demandStream#664399, kpis#664400]
Keys [2]: [shardId#664395, worklistShardItemId#664396L]
Functions [1]: [partial_collect_list(struct(demandChannel, demandChannel#664398, demandStream, demandStream#664399, kpis, kpis#664400), 0, 0)]
Aggregate Attributes [1]: [buf#664814]
Results [3]: [shardId#664395, worklistShardItemId#664396L, buf#664815]
(35) Exchange
Input [3]: [shardId#664395, worklistShardItemId#664396L, buf#664815]
Arguments: hashpartitioning(shardId#664395, worklistShardItemId#664396L, 20), ENSURE_REQUIREMENTS, [plan_id=272783]
(36) ObjectHashAggregate
Input [3]: [shardId#664395, worklistShardItemId#664396L, buf#664815]
Keys [2]: [shardId#664395, worklistShardItemId#664396L]
Functions [1]: [collect_list(struct(demandChannel, demandChannel#664398, demandStream, demandStream#664399, kpis, kpis#664400), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(demandChannel, demandChannel#664398, demandStream, demandStream#664399, kpis, kpis#664400), 0, 0)#664394]
Results [3]: [shardId#664395, worklistShardItemId#664396L, collect_list(struct(demandChannel, demandChannel#664398, demandStream, demandStream#664399, kpis, kpis#664400), 0, 0)#664394 AS channelStreamSpecificKpis#664387]
(37) Sort [codegen id : 9]
Input [3]: [shardId#664395, worklistShardItemId#664396L, channelStreamSpecificKpis#664387]
Arguments: [shardId#664395 ASC NULLS FIRST, worklistShardItemId#664396L ASC NULLS FIRST], false, 0
(38) SortMergeJoin [codegen id : 10]
Left keys [2]: [shardId#662288, worklistShardItemId#662859L]
Right keys [2]: [shardId#664395, worklistShardItemId#664396L]
Join type: LeftOuter
Join condition: None
(39) Project [codegen id : 10]
Output [41]: [shardId#662288, worklistShardItemId#662859L, quantityAfterProdPlantOptimization#662860, qty#662861, orderProposalId#663133L, originalReplenishmentRunId#663175L, supplierGroup#663135, supplier#663136, supplyingPlant#663140, productGroup#663141, product#663142, plant#663137, subrange#663139, orderDateTime#663143, deliveryDateTime#663138, availabilityDateTime#663144, nextAvailabilityDateTime#663145, constraintValues#663166, constraintOperators#663165, constraintLabels#663164, logisticUnits#663160, orderQuantityBaseUom#663161, orderQuantityBaseUomUuid#663162, splitIndicator#663152L, netPriceAmount#663169, netPriceCurrencyCode#663170, netPriceQuantity#663171, netPriceQuantityUom#663172, netPriceQuantityUomUuid#663173, sourceOfSupplyUuid#663147, minimumOrderQuantity#663163, orderProposalItemId#663134, orderProposalItemGroupId#663157, optimizationGroups#663176, measurements#663174, externalProductId#663158, externalPlantId#663159, previousOrderProposal#663153L, isFallbackOrderOnly#663150, prodLocSpecificKpis#664386, coalesce(channelStreamSpecificKpis#664387, []) AS channelStreamSpecificKpis#664401]
Input [43]: [shardId#662288, worklistShardItemId#662859L, quantityAfterProdPlantOptimization#662860, qty#662861, orderProposalId#663133L, originalReplenishmentRunId#663175L, supplierGroup#663135, supplier#663136, supplyingPlant#663140, productGroup#663141, product#663142, plant#663137, subrange#663139, orderDateTime#663143, deliveryDateTime#663138, availabilityDateTime#663144, nextAvailabilityDateTime#663145, constraintValues#663166, constraintOperators#663165, constraintLabels#663164, logisticUnits#663160, orderQuantityBaseUom#663161, orderQuantityBaseUomUuid#663162, splitIndicator#663152L, netPriceAmount#663169, netPriceCurrencyCode#663170, netPriceQuantity#663171, netPriceQuantityUom#663172, netPriceQuantityUomUuid#663173, sourceOfSupplyUuid#663147, minimumOrderQuantity#663163, orderProposalItemId#663134, orderProposalItemGroupId#663157, optimizationGroups#663176, measurements#663174, externalProductId#663158, externalPlantId#663159, previousOrderProposal#663153L, isFallbackOrderOnly#663150, prodLocSpecificKpis#664386, shardId#664395, worklistShardItemId#664396L, channelStreamSpecificKpis#664387]
(40) Scan ExistingRDD [codegen id : 11]
Output [6]: [shardId#664408, worklistShardItemId#664409L, qty#664410, demandChannel#664411, demandStream#664412, kpis#664413]
Arguments: [shardId#664408, worklistShardItemId#664409L, qty#664410, demandChannel#664411, demandStream#664412, kpis#664413], MapPartitionsRDD[31897] at start at FileStorageAdapterImpl.java:592, ExistingRDD, UnknownPartitioning(0)
(41) Filter [codegen id : 11]
Input [6]: [shardId#664408, worklistShardItemId#664409L, qty#664410, demandChannel#664411, demandStream#664412, kpis#664413]
Condition : ((isnotnull(qty#664410) AND isnotnull(kpis#664413)) AND (isnotnull(shardId#664408) AND isnotnull(worklistShardItemId#664409L)))
(42) Project [codegen id : 11]
Output [4]: [shardId#664408, worklistShardItemId#664409L, qty#664410, kpis#664413]
Input [6]: [shardId#664408, worklistShardItemId#664409L, qty#664410, demandChannel#664411, demandStream#664412, kpis#664413]
(43) ObjectHashAggregate
Input [4]: [shardId#664408, worklistShardItemId#664409L, qty#664410, kpis#664413]
Keys [2]: [shardId#664408, worklistShardItemId#664409L]
Functions [1]: [partial_collect_list(struct(qty, qty#664410, kpis, kpis#664413), 0, 0)]
Aggregate Attributes [1]: [buf#664816]
Results [3]: [shardId#664408, worklistShardItemId#664409L, buf#664817]
(44) Exchange
Input [3]: [shardId#664408, worklistShardItemId#664409L, buf#664817]
Arguments: hashpartitioning(shardId#664408, worklistShardItemId#664409L, 20), ENSURE_REQUIREMENTS, [plan_id=272795]
(45) ObjectHashAggregate
Input [3]: [shardId#664408, worklistShardItemId#664409L, buf#664817]
Keys [2]: [shardId#664408, worklistShardItemId#664409L]
Functions [1]: [collect_list(struct(qty, qty#664410, kpis, kpis#664413), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(qty, qty#664410, kpis, kpis#664413), 0, 0)#664407]
Results [3]: [shardId#664408, worklistShardItemId#664409L, map_from_entries(collect_list(struct(qty, qty#664410, kpis, kpis#664413), 0, 0)#664407) AS quantityKpis#664402]
(46) Sort [codegen id : 12]
Input [3]: [shardId#664408, worklistShardItemId#664409L, quantityKpis#664402]
Arguments: [shardId#664408 ASC NULLS FIRST, worklistShardItemId#664409L ASC NULLS FIRST], false, 0
(47) SortMergeJoin [codegen id : 13]
Left keys [2]: [shardId#662288, worklistShardItemId#662859L]
Right keys [2]: [shardId#664408, worklistShardItemId#664409L]
Join type: LeftOuter
Join condition: None
(48) Project [codegen id : 13]
Output [42]: [shardId#662288, worklistShardItemId#662859L, quantityAfterProdPlantOptimization#662860, qty#662861, orderProposalId#663133L, originalReplenishmentRunId#663175L, supplierGroup#663135, supplier#663136, supplyingPlant#663140, productGroup#663141, product#663142, plant#663137, subrange#663139, orderDateTime#663143, deliveryDateTime#663138, availabilityDateTime#663144, nextAvailabilityDateTime#663145, constraintValues#663166, constraintOperators#663165, constraintLabels#663164, logisticUnits#663160, orderQuantityBaseUom#663161, orderQuantityBaseUomUuid#663162, splitIndicator#663152L, netPriceAmount#663169, netPriceCurrencyCode#663170, netPriceQuantity#663171, netPriceQuantityUom#663172, netPriceQuantityUomUuid#663173, sourceOfSupplyUuid#663147, minimumOrderQuantity#663163, orderProposalItemId#663134, orderProposalItemGroupId#663157, optimizationGroups#663176, measurements#663174, externalProductId#663158, externalPlantId#663159, previousOrderProposal#663153L, isFallbackOrderOnly#663150, prodLocSpecificKpis#664386, channelStreamSpecificKpis#664401, coalesce(quantityKpis#664402, map(keys: [], values: [])) AS quantityKpis#664414]
Input [44]: [shardId#662288, worklistShardItemId#662859L, quantityAfterProdPlantOptimization#662860, qty#662861, orderProposalId#663133L, originalReplenishmentRunId#663175L, supplierGroup#663135, supplier#663136, supplyingPlant#663140, productGroup#663141, product#663142, plant#663137, subrange#663139, orderDateTime#663143, deliveryDateTime#663138, availabilityDateTime#663144, nextAvailabilityDateTime#663145, constraintValues#663166, constraintOperators#663165, constraintLabels#663164, logisticUnits#663160, orderQuantityBaseUom#663161, orderQuantityBaseUomUuid#663162, splitIndicator#663152L, netPriceAmount#663169, netPriceCurrencyCode#663170, netPriceQuantity#663171, netPriceQuantityUom#663172, netPriceQuantityUomUuid#663173, sourceOfSupplyUuid#663147, minimumOrderQuantity#663163, orderProposalItemId#663134, orderProposalItemGroupId#663157, optimizationGroups#663176, measurements#663174, externalProductId#663158, externalPlantId#663159, previousOrderProposal#663153L, isFallbackOrderOnly#663150, prodLocSpecificKpis#664386, channelStreamSpecificKpis#664401, shardId#664408, worklistShardItemId#664409L, quantityKpis#664402]
(49) Filter [codegen id : 1]
Input [4]: [orderProposalId#663018L, orderProposalItemId#663019, quantityKpis#664414, shardId#662288]
Condition : ((isnotnull(shardId#662288) AND (shardId#662288 = 0_1_10000002107)) AND (size(quantityKpis#664414, true) > 0))
(50) Project [codegen id : 1]
Output [3]: [orderProposalId#663018L, orderProposalItemId#663019, quantityKpis#664414]
Input [4]: [orderProposalId#663018L, orderProposalItemId#663019, quantityKpis#664414, shardId#662288]
(51) Generate [codegen id : 1]
Input [3]: [orderProposalId#663018L, orderProposalItemId#663019, quantityKpis#664414]
Arguments: explode(quantityKpis#664414), [orderProposalId#663018L, orderProposalItemId#663019], false, [orderQuantityInBaseUnit#668366, kpis#668367]
(52) Project
Output [7]: [orderProposalId#663018L, cast(orderProposalItemId#663019 as bigint) AS orderProposalItemId#668365L, orderQuantityInBaseUnit#668366, filter(kpis#668367, lambdafunction((lambda x_1782#668369.label = ServiceLevel), lambda x_1782#668369, false))[0].value AS serviceLevel#668368, filter(kpis#668367, lambdafunction((lambda x_1783#668371.label = RangeOfCoverage), lambda x_1783#668371, false))[0].value AS rangeOfCoverage#668370, filter(kpis#668367, lambdafunction((lambda x_1784#668373.label = ServiceLevelAtStartOfDelisting), lambda x_1784#668373, false))[0].value AS serviceLevelAtEndOfListing#668372, 10000002107 AS replenishmentRunId#668375L]
Input [4]: [orderProposalId#663018L, orderProposalItemId#663019, orderQuantityInBaseUnit#668366, kpis#668367]
(53) WriteFiles
Input [7]: [orderProposalId#663018L, orderProposalItemId#668365L, orderQuantityInBaseUnit#668366, serviceLevel#668368, rangeOfCoverage#668370, serviceLevelAtEndOfListing#668372, replenishmentRunId#668375L]
(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=4, 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=4], Overwrite, [orderProposalId, orderProposalItemId, orderQuantityInBaseUnit, serviceLevel, rangeOfCoverage, serviceLevelAtEndOfListing, replenishmentRunId]