== Physical Plan ==
Execute SaveIntoDataSourceCommand (1)
+- SaveIntoDataSourceCommand (2)
+- Project (30)
+- Project (29)
+- Project (28)
+- Project (27)
+- Project (26)
+- Join (25)
:- Project (15)
: +- Project (14)
: +- Project (13)
: +- Project (12)
: +- Project (11)
: +- Project (10)
: +- Generate (9)
: +- Filter (8)
: +- Project (7)
: +- Project (6)
: +- Generate (5)
: +- SerializeFromObject (4)
: +- ExternalRDD (3)
+- Union (24)
:- LocalRelation (16)
+- Project (23)
+- Project (22)
+- Project (21)
+- Filter (20)
+- RepartitionByExpression (19)
+- Filter (18)
+- LogicalRelation (17)
(1) Execute SaveIntoDataSourceCommand
Output: []
(2) SaveIntoDataSourceCommand
Arguments: org.apache.spark.sql.delta.sources.DeltaDataSource@1e329ce6, [path=hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-qty-opt-service/out/order-proposal-update/10000002108/stream-10000002108-1], Append
(3) ExternalRDD
Arguments: [obj#800660]
(4) SerializeFromObject
Arguments: [if (invoke(assertnotnull(input[0, org.apache.spark.sql.Row, true]).isNullAt(0))) null else static_invoke(UTF8String.fromString(validateexternaltype(getexternalrowfield(assertnotnull(input[0, org.apache.spark.sql.Row, true]), 0, shardId), StringType, ObjectType(class java.lang.String)))) AS shardId#800667, if (invoke(assertnotnull(input[0, org.apache.spark.sql.Row, true]).isNullAt(1))) null else invoke(validateexternaltype(getexternalrowfield(assertnotnull(input[0, org.apache.spark.sql.Row, true]), 1, orderProposalId), LongType, ObjectType(class java.lang.Long)).longValue()) AS orderProposalId#800668L, if (invoke(assertnotnull(input[0, org.apache.spark.sql.Row, true]).isNullAt(2))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47019), if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47019), StructField(worklistShardItemId,LongType,true), StructField(quantityAfterProdPlantOptimization,DoubleType,true), StructField(optimalQuantity,DoubleType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)))) null else named_struct(worklistShardItemId, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47019), StructField(worklistShardItemId,LongType,true), StructField(quantityAfterProdPlantOptimization,DoubleType,true), StructField(optimalQuantity,DoubleType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(0))) null else invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47019), StructField(worklistShardItemId,LongType,true), StructField(quantityAfterProdPlantOptimization,DoubleType,true), StructField(optimalQuantity,DoubleType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 0, worklistShardItemId), LongType, ObjectType(class java.lang.Long)).longValue()), quantityAfterProdPlantOptimization, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47019), StructField(worklistShardItemId,LongType,true), StructField(quantityAfterProdPlantOptimization,DoubleType,true), StructField(optimalQuantity,DoubleType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(1))) null else invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47019), StructField(worklistShardItemId,LongType,true), StructField(quantityAfterProdPlantOptimization,DoubleType,true), StructField(optimalQuantity,DoubleType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 1, quantityAfterProdPlantOptimization), DoubleType, ObjectType(class java.lang.Double)).doubleValue()), optimalQuantity, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47019), StructField(worklistShardItemId,LongType,true), StructField(quantityAfterProdPlantOptimization,DoubleType,true), StructField(optimalQuantity,DoubleType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(2))) null else invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47019), StructField(worklistShardItemId,LongType,true), StructField(quantityAfterProdPlantOptimization,DoubleType,true), StructField(optimalQuantity,DoubleType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 2, optimalQuantity), DoubleType, ObjectType(class java.lang.Double)).doubleValue()), requestedQuantities, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47019), StructField(worklistShardItemId,LongType,true), StructField(quantityAfterProdPlantOptimization,DoubleType,true), StructField(optimalQuantity,DoubleType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(3))) null else if (invoke(class [D.isInstance(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47019), StructField(worklistShardItemId,LongType,true), StructField(quantityAfterProdPlantOptimization,DoubleType,true), StructField(optimalQuantity,DoubleType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 3, requestedQuantities), ArrayType(DoubleType,true), ObjectType(class java.lang.Object))))) static_invoke(ArrayData.toArrayData(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47019), StructField(worklistShardItemId,LongType,true), StructField(quantityAfterProdPlantOptimization,DoubleType,true), StructField(optimalQuantity,DoubleType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 3, requestedQuantities), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)))) else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47020), invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47020), DoubleType, ObjectType(class java.lang.Double)).doubleValue()), validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47019), StructField(worklistShardItemId,LongType,true), StructField(quantityAfterProdPlantOptimization,DoubleType,true), StructField(optimalQuantity,DoubleType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 3, requestedQuantities), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)), None)), validateexternaltype(getexternalrowfield(assertnotnull(input[0, org.apache.spark.sql.Row, true]), 2, items), ArrayType(StructType(StructField(worklistShardItemId,LongType,true),StructField(quantityAfterProdPlantOptimization,DoubleType,true),StructField(optimalQuantity,DoubleType,true),StructField(requestedQuantities,ArrayType(DoubleType,true),true)),true), ObjectType(class java.lang.Object)), None) AS items#800669, if (invoke(assertnotnull(input[0, org.apache.spark.sql.Row, true]).isNullAt(3))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47021), if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47021), StructField(optGroupId,StringType,true), StructField(assignmentDetails,StringType,true), StructField(minOrderProfile,StringType,true), StructField(minOrderGoal,StructType(StructField(minOrderValue,DoubleType,true),StructField(calculatedOrderValue,DoubleType,true),StructField(dimensionType,IntegerType,true),StructField(unit,StringType,true),StructField(unitUuid,StringType,true),StructField(negligibleQuantitiesThreshold,DoubleType,true),StructField(acceptanceThreshold,DoubleType,true)),true), ObjectType(interface org.apache.spark.sql.Row)))) null else named_struct(optGroupId, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47021), StructField(optGroupId,StringType,true), StructField(assignmentDetails,StringType,true), StructField(minOrderProfile,StringType,true), StructField(minOrderGoal,StructType(StructField(minOrderValue,DoubleType,true),StructField(calculatedOrderValue,DoubleType,true),StructField(dimensionType,IntegerType,true),StructField(unit,StringType,true),StructField(unitUuid,StringType,true),StructField(negligibleQuantitiesThreshold,DoubleType,true),StructField(acceptanceThreshold,DoubleType,true)),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(0))) null else static_invoke(UTF8String.fromString(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47021), StructField(optGroupId,StringType,true), StructField(assignmentDetails,StringType,true), StructField(minOrderProfile,StringType,true), StructField(minOrderGoal,StructType(StructField(minOrderValue,DoubleType,true),StructField(calculatedOrderValue,DoubleType,true),StructField(dimensionType,IntegerType,true),StructField(unit,StringType,true),StructField(unitUuid,StringType,true),StructField(negligibleQuantitiesThreshold,DoubleType,true),StructField(acceptanceThreshold,DoubleType,true)),true), ObjectType(interface org.apache.spark.sql.Row)), 0, optGroupId), StringType, ObjectType(class java.lang.String)))), assignmentDetails, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47021), StructField(optGroupId,StringType,true), StructField(assignmentDetails,StringType,true), StructField(minOrderProfile,StringType,true), StructField(minOrderGoal,StructType(StructField(minOrderValue,DoubleType,true),StructField(calculatedOrderValue,DoubleType,true),StructField(dimensionType,IntegerType,true),StructField(unit,StringType,true),StructField(unitUuid,StringType,true),StructField(negligibleQuantitiesThreshold,DoubleType,true),StructField(acceptanceThreshold,DoubleType,true)),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(1))) null else static_invoke(UTF8String.fromString(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47021), StructField(optGroupId,StringType,true), StructField(assignmentDetails,StringType,true), StructField(minOrderProfile,StringType,true), StructField(minOrderGoal,StructType(StructField(minOrderValue,DoubleType,true),StructField(calculatedOrderValue,DoubleType,true),StructField(dimensionType,IntegerType,true),StructField(unit,StringType,true),StructField(unitUuid,StringType,true),StructField(negligibleQuantitiesThreshold,DoubleType,true),StructField(acceptanceThreshold,DoubleType,true)),true), ObjectType(interface org.apache.spark.sql.Row)), 1, assignmentDetails), StringType, ObjectType(class java.lang.String)))), minOrderProfile, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47021), StructField(optGroupId,StringType,true), StructField(assignmentDetails,StringType,true), StructField(minOrderProfile,StringType,true), StructField(minOrderGoal,StructType(StructField(minOrderValue,DoubleType,true),StructField(calculatedOrderValue,DoubleType,true),StructField(dimensionType,IntegerType,true),StructField(unit,StringType,true),StructField(unitUuid,StringType,true),StructField(negligibleQuantitiesThreshold,DoubleType,true),StructField(acceptanceThreshold,DoubleType,true)),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(2))) null else static_invoke(UTF8String.fromString(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47021), StructField(optGroupId,StringType,true), StructField(assignmentDetails,StringType,true), StructField(minOrderProfile,StringType,true), StructField(minOrderGoal,StructType(StructField(minOrderValue,DoubleType,true),StructField(calculatedOrderValue,DoubleType,true),StructField(dimensionType,IntegerType,true),StructField(unit,StringType,true),StructField(unitUuid,StringType,true),StructField(negligibleQuantitiesThreshold,DoubleType,true),StructField(acceptanceThreshold,DoubleType,true)),true), ObjectType(interface org.apache.spark.sql.Row)), 2, minOrderProfile), StringType, ObjectType(class java.lang.String)))), minOrderGoal, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47021), StructField(optGroupId,StringType,true), StructField(assignmentDetails,StringType,true), StructField(minOrderProfile,StringType,true), StructField(minOrderGoal,StructType(StructField(minOrderValue,DoubleType,true),StructField(calculatedOrderValue,DoubleType,true),StructField(dimensionType,IntegerType,true),StructField(unit,StringType,true),StructField(unitUuid,StringType,true),StructField(negligibleQuantitiesThreshold,DoubleType,true),StructField(acceptanceThreshold,DoubleType,true)),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(3))) null else named_struct(minOrderValue, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47021), StructField(optGroupId,StringType,true), StructField(assignmentDetails,StringType,true), StructField(minOrderProfile,StringType,true), StructField(minOrderGoal,StructType(StructField(minOrderValue,DoubleType,true),StructField(calculatedOrderValue,DoubleType,true),StructField(dimensionType,IntegerType,true),StructField(unit,StringType,true),StructField(unitUuid,StringType,true),StructField(negligibleQuantitiesThreshold,DoubleType,true),StructField(acceptanceThreshold,DoubleType,true)),true), ObjectType(interface org.apache.spark.sql.Row)), 3, minOrderGoal), StructField(minOrderValue,DoubleType,true), StructField(calculatedOrderValue,DoubleType,true), StructField(dimensionType,IntegerType,true), StructField(unit,StringType,true), StructField(unitUuid,StringType,true), StructField(negligibleQuantitiesThreshold,DoubleType,true), StructField(acceptanceThreshold,DoubleType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(0))) null else invoke(validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47021), StructField(optGroupId,StringType,true), StructField(assignmentDetails,StringType,true), StructField(minOrderProfile,StringType,true), StructField(minOrderGoal,StructType(StructField(minOrderValue,DoubleType,true),StructField(calculatedOrderValue,DoubleType,true),StructField(dimensionType,IntegerType,true),StructField(unit,StringType,true),StructField(unitUuid,StringType,true),StructField(negligibleQuantitiesThreshold,DoubleType,true),StructField(acceptanceThreshold,DoubleType,true)),true), ObjectType(interface org.apache.spark.sql.Row)), 3, minOrderGoal), StructField(minOrderValue,DoubleType,true), StructField(calculatedOrderValue,DoubleType,true), StructField(dimensionType,IntegerType,true), StructField(unit,StringType,true), StructField(unitUuid,StringType,true), StructField(negligibleQuantitiesThreshold,DoubleType,true), StructField(acceptanceThreshold,DoubleType,true), ObjectType(interface org.apache.spark.sql.Row)), 0, minOrderValue), DoubleType, ObjectType(class java.lang.Double)).doubleValue()), calculatedOrderValue, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47021), StructField(optGroupId,StringType,true), StructField(assignmentDetails,StringType,true), StructField(minOrderProfile,StringType,true), StructField(minOrderGoal,StructType(StructField(minOrderValue,DoubleType,true),StructField(calculatedOrderValue,DoubleType,true),StructField(dimensionType,IntegerType,true),StructField(unit,StringType,true),StructField(unitUuid,StringType,true),StructField(negligibleQuantitiesThreshold,DoubleType,true),StructField(acceptanceThreshold,DoubleType,true)),true), ObjectType(interface org.apache.spark.sql.Row)), 3, minOrderGoal), StructField(minOrderValue,DoubleType,true), StructField(calculatedOrderValue,DoubleType,true), StructField(dimensionType,IntegerType,true), StructField(unit,StringType,true), StructField(unitUuid,StringType,true), StructField(negligibleQuantitiesThreshold,DoubleType,true), StructField(acceptanceThreshold,DoubleType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(1))) null else invoke(validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47021), StructField(optGroupId,StringType,true), StructField(assignmentDetails,StringType,true), StructField(minOrderProfile,StringType,true), StructField(minOrderGoal,StructType(StructField(minOrderValue,DoubleType,true),StructField(calculatedOrderValue,DoubleType,true),StructField(dimensionType,IntegerType,true),StructField(unit,StringType,true),StructField(unitUuid,StringType,true),StructField(negligibleQuantitiesThreshold,DoubleType,true),StructField(acceptanceThreshold,DoubleType,true)),true), ObjectType(interface org.apache.spark.sql.Row)), 3, minOrderGoal), StructField(minOrderValue,DoubleType,true), StructField(calculatedOrderValue,DoubleType,true), StructField(dimensionType,IntegerType,true), StructField(unit,StringType,true), StructField(unitUuid,StringType,true), StructField(negligibleQuantitiesThreshold,DoubleType,true), StructField(acceptanceThreshold,DoubleType,true), ObjectType(interface org.apache.spark.sql.Row)), 1, calculatedOrderValue), DoubleType, ObjectType(class java.lang.Double)).doubleValue()), dimensionType, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47021), StructField(optGroupId,StringType,true), StructField(assignmentDetails,StringType,true), StructField(minOrderProfile,StringType,true), StructField(minOrderGoal,StructType(StructField(minOrderValue,DoubleType,true),StructField(calculatedOrderValue,DoubleType,true),StructField(dimensionType,IntegerType,true),StructField(unit,StringType,true),StructField(unitUuid,StringType,true),StructField(negligibleQuantitiesThreshold,DoubleType,true),StructField(acceptanceThreshold,DoubleType,true)),true), ObjectType(interface org.apache.spark.sql.Row)), 3, minOrderGoal), StructField(minOrderValue,DoubleType,true), StructField(calculatedOrderValue,DoubleType,true), StructField(dimensionType,IntegerType,true), StructField(unit,StringType,true), StructField(unitUuid,StringType,true), StructField(negligibleQuantitiesThreshold,DoubleType,true), StructField(acceptanceThreshold,DoubleType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(2))) null else invoke(validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47021), StructField(optGroupId,StringType,true), StructField(assignmentDetails,StringType,true), StructField(minOrderProfile,StringType,true), StructField(minOrderGoal,StructType(StructField(minOrderValue,DoubleType,true),StructField(calculatedOrderValue,DoubleType,true),StructField(dimensionType,IntegerType,true),StructField(unit,StringType,true),StructField(unitUuid,StringType,true),StructField(negligibleQuantitiesThreshold,DoubleType,true),StructField(acceptanceThreshold,DoubleType,true)),true), ObjectType(interface org.apache.spark.sql.Row)), 3, minOrderGoal), StructField(minOrderValue,DoubleType,true), StructField(calculatedOrderValue,DoubleType,true), StructField(dimensionType,IntegerType,true), StructField(unit,StringType,true), StructField(unitUuid,StringType,true), StructField(negligibleQuantitiesThreshold,DoubleType,true), StructField(acceptanceThreshold,DoubleType,true), ObjectType(interface org.apache.spark.sql.Row)), 2, dimensionType), IntegerType, ObjectType(class java.lang.Integer)).intValue()), unit, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47021), StructField(optGroupId,StringType,true), StructField(assignmentDetails,StringType,true), StructField(minOrderProfile,StringType,true), StructField(minOrderGoal,StructType(StructField(minOrderValue,DoubleType,true),StructField(calculatedOrderValue,DoubleType,true),StructField(dimensionType,IntegerType,true),StructField(unit,StringType,true),StructField(unitUuid,StringType,true),StructField(negligibleQuantitiesThreshold,DoubleType,true),StructField(acceptanceThreshold,DoubleType,true)),true), ObjectType(interface org.apache.spark.sql.Row)), 3, minOrderGoal), StructField(minOrderValue,DoubleType,true), StructField(calculatedOrderValue,DoubleType,true), StructField(dimensionType,IntegerType,true), StructField(unit,StringType,true), StructField(unitUuid,StringType,true), StructField(negligibleQuantitiesThreshold,DoubleType,true), StructField(acceptanceThreshold,DoubleType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(3))) null else static_invoke(UTF8String.fromString(validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47021), StructField(optGroupId,StringType,true), StructField(assignmentDetails,StringType,true), StructField(minOrderProfile,StringType,true), StructField(minOrderGoal,StructType(StructField(minOrderValue,DoubleType,true),StructField(calculatedOrderValue,DoubleType,true),StructField(dimensionType,IntegerType,true),StructField(unit,StringType,true),StructField(unitUuid,StringType,true),StructField(negligibleQuantitiesThreshold,DoubleType,true),StructField(acceptanceThreshold,DoubleType,true)),true), ObjectType(interface org.apache.spark.sql.Row)), 3, minOrderGoal), StructField(minOrderValue,DoubleType,true), StructField(calculatedOrderValue,DoubleType,true), StructField(dimensionType,IntegerType,true), StructField(unit,StringType,true), StructField(unitUuid,StringType,true), StructField(negligibleQuantitiesThreshold,DoubleType,true), StructField(acceptanceThreshold,DoubleType,true), ObjectType(interface org.apache.spark.sql.Row)), 3, unit), StringType, ObjectType(class java.lang.String)))), unitUuid, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47021), StructField(optGroupId,StringType,true), StructField(assignmentDetails,StringType,true), StructField(minOrderProfile,StringType,true), StructField(minOrderGoal,StructType(StructField(minOrderValue,DoubleType,true),StructField(calculatedOrderValue,DoubleType,true),StructField(dimensionType,IntegerType,true),StructField(unit,StringType,true),StructField(unitUuid,StringType,true),StructField(negligibleQuantitiesThreshold,DoubleType,true),StructField(acceptanceThreshold,DoubleType,true)),true), ObjectType(interface org.apache.spark.sql.Row)), 3, minOrderGoal), StructField(minOrderValue,DoubleType,true), StructField(calculatedOrderValue,DoubleType,true), StructField(dimensionType,IntegerType,true), StructField(unit,StringType,true), StructField(unitUuid,StringType,true), StructField(negligibleQuantitiesThreshold,DoubleType,true), StructField(acceptanceThreshold,DoubleType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(4))) null else static_invoke(UTF8String.fromString(validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47021), StructField(optGroupId,StringType,true), StructField(assignmentDetails,StringType,true), StructField(minOrderProfile,StringType,true), StructField(minOrderGoal,StructType(StructField(minOrderValue,DoubleType,true),StructField(calculatedOrderValue,DoubleType,true),StructField(dimensionType,IntegerType,true),StructField(unit,StringType,true),StructField(unitUuid,StringType,true),StructField(negligibleQuantitiesThreshold,DoubleType,true),StructField(acceptanceThreshold,DoubleType,true)),true), ObjectType(interface org.apache.spark.sql.Row)), 3, minOrderGoal), StructField(minOrderValue,DoubleType,true), StructField(calculatedOrderValue,DoubleType,true), StructField(dimensionType,IntegerType,true), StructField(unit,StringType,true), StructField(unitUuid,StringType,true), StructField(negligibleQuantitiesThreshold,DoubleType,true), StructField(acceptanceThreshold,DoubleType,true), ObjectType(interface org.apache.spark.sql.Row)), 4, unitUuid), StringType, ObjectType(class java.lang.String)))), negligibleQuantitiesThreshold, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47021), StructField(optGroupId,StringType,true), StructField(assignmentDetails,StringType,true), StructField(minOrderProfile,StringType,true), StructField(minOrderGoal,StructType(StructField(minOrderValue,DoubleType,true),StructField(calculatedOrderValue,DoubleType,true),StructField(dimensionType,IntegerType,true),StructField(unit,StringType,true),StructField(unitUuid,StringType,true),StructField(negligibleQuantitiesThreshold,DoubleType,true),StructField(acceptanceThreshold,DoubleType,true)),true), ObjectType(interface org.apache.spark.sql.Row)), 3, minOrderGoal), StructField(minOrderValue,DoubleType,true), StructField(calculatedOrderValue,DoubleType,true), StructField(dimensionType,IntegerType,true), StructField(unit,StringType,true), StructField(unitUuid,StringType,true), StructField(negligibleQuantitiesThreshold,DoubleType,true), StructField(acceptanceThreshold,DoubleType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(5))) null else invoke(validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47021), StructField(optGroupId,StringType,true), StructField(assignmentDetails,StringType,true), StructField(minOrderProfile,StringType,true), StructField(minOrderGoal,StructType(StructField(minOrderValue,DoubleType,true),StructField(calculatedOrderValue,DoubleType,true),StructField(dimensionType,IntegerType,true),StructField(unit,StringType,true),StructField(unitUuid,StringType,true),StructField(negligibleQuantitiesThreshold,DoubleType,true),StructField(acceptanceThreshold,DoubleType,true)),true), ObjectType(interface org.apache.spark.sql.Row)), 3, minOrderGoal), StructField(minOrderValue,DoubleType,true), StructField(calculatedOrderValue,DoubleType,true), StructField(dimensionType,IntegerType,true), StructField(unit,StringType,true), StructField(unitUuid,StringType,true), StructField(negligibleQuantitiesThreshold,DoubleType,true), StructField(acceptanceThreshold,DoubleType,true), ObjectType(interface org.apache.spark.sql.Row)), 5, negligibleQuantitiesThreshold), DoubleType, ObjectType(class java.lang.Double)).doubleValue()), acceptanceThreshold, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47021), StructField(optGroupId,StringType,true), StructField(assignmentDetails,StringType,true), StructField(minOrderProfile,StringType,true), StructField(minOrderGoal,StructType(StructField(minOrderValue,DoubleType,true),StructField(calculatedOrderValue,DoubleType,true),StructField(dimensionType,IntegerType,true),StructField(unit,StringType,true),StructField(unitUuid,StringType,true),StructField(negligibleQuantitiesThreshold,DoubleType,true),StructField(acceptanceThreshold,DoubleType,true)),true), ObjectType(interface org.apache.spark.sql.Row)), 3, minOrderGoal), StructField(minOrderValue,DoubleType,true), StructField(calculatedOrderValue,DoubleType,true), StructField(dimensionType,IntegerType,true), StructField(unit,StringType,true), StructField(unitUuid,StringType,true), StructField(negligibleQuantitiesThreshold,DoubleType,true), StructField(acceptanceThreshold,DoubleType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(6))) null else invoke(validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47021), StructField(optGroupId,StringType,true), StructField(assignmentDetails,StringType,true), StructField(minOrderProfile,StringType,true), StructField(minOrderGoal,StructType(StructField(minOrderValue,DoubleType,true),StructField(calculatedOrderValue,DoubleType,true),StructField(dimensionType,IntegerType,true),StructField(unit,StringType,true),StructField(unitUuid,StringType,true),StructField(negligibleQuantitiesThreshold,DoubleType,true),StructField(acceptanceThreshold,DoubleType,true)),true), ObjectType(interface org.apache.spark.sql.Row)), 3, minOrderGoal), StructField(minOrderValue,DoubleType,true), StructField(calculatedOrderValue,DoubleType,true), StructField(dimensionType,IntegerType,true), StructField(unit,StringType,true), StructField(unitUuid,StringType,true), StructField(negligibleQuantitiesThreshold,DoubleType,true), StructField(acceptanceThreshold,DoubleType,true), ObjectType(interface org.apache.spark.sql.Row)), 6, acceptanceThreshold), DoubleType, ObjectType(class java.lang.Double)).doubleValue()))), validateexternaltype(getexternalrowfield(assertnotnull(input[0, org.apache.spark.sql.Row, true]), 3, optimizationGroups), ArrayType(StructType(StructField(optGroupId,StringType,true),StructField(assignmentDetails,StringType,true),StructField(minOrderProfile,StringType,true),StructField(minOrderGoal,StructType(StructField(minOrderValue,DoubleType,true),StructField(calculatedOrderValue,DoubleType,true),StructField(dimensionType,IntegerType,true),StructField(unit,StringType,true),StructField(unitUuid,StringType,true),StructField(negligibleQuantitiesThreshold,DoubleType,true),StructField(acceptanceThreshold,DoubleType,true)),true)),true), ObjectType(class java.lang.Object)), None) AS optimizationGroups#800670, if (invoke(assertnotnull(input[0, org.apache.spark.sql.Row, true]).isNullAt(4))) null else invoke(validateexternaltype(getexternalrowfield(assertnotnull(input[0, org.apache.spark.sql.Row, true]), 4, isOptimal), BooleanType, ObjectType(class java.lang.Boolean)).booleanValue()) AS isOptimal#800671, if (invoke(assertnotnull(input[0, org.apache.spark.sql.Row, true]).isNullAt(5))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47022), if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47022), StructField(internalInsightType,StringType,false), StructField(worklistShardItemId,LongType,true), StructField(thresholdValue,DoubleType,true), StructField(reachedValue,DoubleType,true), StructField(unitOfMeasure,StringType,true), StructField(assignmentDetails,StringType,false), ObjectType(interface org.apache.spark.sql.Row)))) null else named_struct(internalInsightType, assertnotnull(static_invoke(UTF8String.fromString(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47022), StructField(internalInsightType,StringType,false), StructField(worklistShardItemId,LongType,true), StructField(thresholdValue,DoubleType,true), StructField(reachedValue,DoubleType,true), StructField(unitOfMeasure,StringType,true), StructField(assignmentDetails,StringType,false), ObjectType(interface org.apache.spark.sql.Row)), 0, internalInsightType), StringType, ObjectType(class java.lang.String))))), worklistShardItemId, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47022), StructField(internalInsightType,StringType,false), StructField(worklistShardItemId,LongType,true), StructField(thresholdValue,DoubleType,true), StructField(reachedValue,DoubleType,true), StructField(unitOfMeasure,StringType,true), StructField(assignmentDetails,StringType,false), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(1))) null else invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47022), StructField(internalInsightType,StringType,false), StructField(worklistShardItemId,LongType,true), StructField(thresholdValue,DoubleType,true), StructField(reachedValue,DoubleType,true), StructField(unitOfMeasure,StringType,true), StructField(assignmentDetails,StringType,false), ObjectType(interface org.apache.spark.sql.Row)), 1, worklistShardItemId), LongType, ObjectType(class java.lang.Long)).longValue()), thresholdValue, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47022), StructField(internalInsightType,StringType,false), StructField(worklistShardItemId,LongType,true), StructField(thresholdValue,DoubleType,true), StructField(reachedValue,DoubleType,true), StructField(unitOfMeasure,StringType,true), StructField(assignmentDetails,StringType,false), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(2))) null else invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47022), StructField(internalInsightType,StringType,false), StructField(worklistShardItemId,LongType,true), StructField(thresholdValue,DoubleType,true), StructField(reachedValue,DoubleType,true), StructField(unitOfMeasure,StringType,true), StructField(assignmentDetails,StringType,false), ObjectType(interface org.apache.spark.sql.Row)), 2, thresholdValue), DoubleType, ObjectType(class java.lang.Double)).doubleValue()), reachedValue, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47022), StructField(internalInsightType,StringType,false), StructField(worklistShardItemId,LongType,true), StructField(thresholdValue,DoubleType,true), StructField(reachedValue,DoubleType,true), StructField(unitOfMeasure,StringType,true), StructField(assignmentDetails,StringType,false), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(3))) null else invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47022), StructField(internalInsightType,StringType,false), StructField(worklistShardItemId,LongType,true), StructField(thresholdValue,DoubleType,true), StructField(reachedValue,DoubleType,true), StructField(unitOfMeasure,StringType,true), StructField(assignmentDetails,StringType,false), ObjectType(interface org.apache.spark.sql.Row)), 3, reachedValue), DoubleType, ObjectType(class java.lang.Double)).doubleValue()), unitOfMeasure, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47022), StructField(internalInsightType,StringType,false), StructField(worklistShardItemId,LongType,true), StructField(thresholdValue,DoubleType,true), StructField(reachedValue,DoubleType,true), StructField(unitOfMeasure,StringType,true), StructField(assignmentDetails,StringType,false), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(4))) null else static_invoke(UTF8String.fromString(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47022), StructField(internalInsightType,StringType,false), StructField(worklistShardItemId,LongType,true), StructField(thresholdValue,DoubleType,true), StructField(reachedValue,DoubleType,true), StructField(unitOfMeasure,StringType,true), StructField(assignmentDetails,StringType,false), ObjectType(interface org.apache.spark.sql.Row)), 4, unitOfMeasure), StringType, ObjectType(class java.lang.String)))), assignmentDetails, assertnotnull(static_invoke(UTF8String.fromString(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, 47022), StructField(internalInsightType,StringType,false), StructField(worklistShardItemId,LongType,true), StructField(thresholdValue,DoubleType,true), StructField(reachedValue,DoubleType,true), StructField(unitOfMeasure,StringType,true), StructField(assignmentDetails,StringType,false), ObjectType(interface org.apache.spark.sql.Row)), 5, assignmentDetails), StringType, ObjectType(class java.lang.String)))))), validateexternaltype(getexternalrowfield(assertnotnull(input[0, org.apache.spark.sql.Row, true]), 5, optimizationInsights), ArrayType(StructType(StructField(internalInsightType,StringType,false),StructField(worklistShardItemId,LongType,true),StructField(thresholdValue,DoubleType,true),StructField(reachedValue,DoubleType,true),StructField(unitOfMeasure,StringType,true),StructField(assignmentDetails,StringType,false)),true), ObjectType(class java.lang.Object)), None) AS optimizationInsights#800672]
(5) Generate
Arguments: explode(items#800669), false, [item#800744]
(6) Project
Arguments: [shardId#800667, item#800744]
(7) Project
Arguments: [shardId#800667, item#800744.worklistShardItemId AS worklistShardItemId#800745L, item#800744.quantityAfterProdPlantOptimization AS quantityAfterProdPlantOptimization#800746, item#800744.optimalQuantity AS optimalQuantity#800747, item#800744.requestedQuantities AS requestedQuantities#800748]
(8) Filter
Arguments: (size(requestedQuantities#800748, true) > 0)
(9) Generate
Arguments: explode(requestedQuantities#800748), false, [qty#800750]
(10) Project
Arguments: [shardId#800667, worklistShardItemId#800745L, qty#800750]
(11) Project
Arguments: [shardId#800667, worklistShardItemId#800745L, qty#800750, array(0_1_10000002108) AS shardKeyArray#800751]
(12) Project
Arguments: [shardId#800667, worklistShardItemId#800745L, qty#800750, shardKeyArray#800751, array(1) AS versionValueArray#800752]
(13) Project
Arguments: [shardId#800667, worklistShardItemId#800745L, qty#800750, shardKeyArray#800751, versionValueArray#800752, (cast(array_position(shardKeyArray#800751, shardId#800667) as int) - 1) AS shardIndex#800753]
(14) Project
Arguments: [shardId#800667, worklistShardItemId#800745L, qty#800750, shardKeyArray#800751, versionValueArray#800752, shardIndex#800753, element_at(versionValueArray#800752, (shardIndex#800753 + 1), None, false) AS version#800754]
(15) Project
Arguments: [shardId#800667, worklistShardItemId#800745L, qty#800750, version#800754]
(16) LocalRelation
Arguments: <empty>, [shardId#800761, worklistShardItemId#800762L, orderProposalId#800763L, orderProposalItemId#800764, orderProposalItemGroupId#800765, originalReplenishmentRunId#800766L, orderProposalHorizonGroupingId#800767L, splitIndicator#800768L, previousOrderProposal#800769L, clusterId#800770L, sequenceId#800771L, sourceOfSupplyUuid#800772, supplierGroup#800773, supplier#800774, subrange#800775, product#800776, plant#800777, purchasingOrg#800778, purchasingGroup#800779, mrpController#800780, orderDateTime#800781, deliveryDateTime#800782, availabilityDateTime#800783, nextAvailabilityDateTime#800784, isFallbackOrderOnly#800785, ... 20 more fields]
(17) LogicalRelation
Arguments: parquet, [orderProposalId#800806L, orderProposalItemId#800807, supplierGroup#800808, supplier#800809, plant#800810, deliveryDateTime#800811, subrange#800812, supplyingPlant#800813, productGroup#800814, product#800815, orderDateTime#800816, availabilityDateTime#800817, nextAvailabilityDateTime#800818, mrpController#800819, sourceOfSupplyUuid#800820, purchasingOrg#800821, purchasingGroup#800822, isFallbackOrderOnly#800823, orderProposalHorizonGroupingId#800824L, splitIndicator#800825L, previousOrderProposal#800826L, clusterId#800827L, sequenceId#800828, worklistShardItemId#800829L, orderProposalItemGroupId#800830, ... 20 more fields], false
(18) Filter
Arguments: (shardId#800850 = 0_1_10000002108)
(19) RepartitionByExpression
Arguments: [worklistShardItemId#800829L], 20
(20) Filter
Arguments: (sequenceId#800828 = 2)
(21) Project
Arguments: [orderProposalId#800806L, orderProposalItemId#800807, supplierGroup#800808, supplier#800809, plant#800810, deliveryDateTime#800811, subrange#800812, supplyingPlant#800813, productGroup#800814, product#800815, orderDateTime#800816, availabilityDateTime#800817, nextAvailabilityDateTime#800818, mrpController#800819, sourceOfSupplyUuid#800820, purchasingOrg#800821, purchasingGroup#800822, isFallbackOrderOnly#800823, orderProposalHorizonGroupingId#800824L, splitIndicator#800825L, previousOrderProposal#800826L, clusterId#800827L, sequenceId#800828, worklistShardItemId#800829L, orderProposalItemGroupId#800830, ... 20 more fields]
(22) Project
Arguments: [shardId#800852, worklistShardItemId#800829L, orderProposalId#800806L, orderProposalItemId#800807, orderProposalItemGroupId#800830, originalReplenishmentRunId#800848L, orderProposalHorizonGroupingId#800824L, splitIndicator#800825L, previousOrderProposal#800826L, clusterId#800827L, sequenceId#800828, sourceOfSupplyUuid#800820, supplierGroup#800808, supplier#800809, subrange#800812, product#800815, plant#800810, purchasingOrg#800821, purchasingGroup#800822, mrpController#800819, orderDateTime#800816, deliveryDateTime#800811, availabilityDateTime#800817, nextAvailabilityDateTime#800818, isFallbackOrderOnly#800823, ... 20 more fields]
(23) Project
Arguments: [shardId#800852, worklistShardItemId#800829L, orderProposalId#800806L, orderProposalItemId#800807, orderProposalItemGroupId#800830, originalReplenishmentRunId#800848L, orderProposalHorizonGroupingId#800824L, splitIndicator#800825L, previousOrderProposal#800826L, clusterId#800827L, cast(sequenceId#800828 as bigint) AS sequenceId#800853L, sourceOfSupplyUuid#800820, supplierGroup#800808, supplier#800809, subrange#800812, product#800815, plant#800810, purchasingOrg#800821, purchasingGroup#800822, mrpController#800819, orderDateTime#800816, deliveryDateTime#800811, availabilityDateTime#800817, nextAvailabilityDateTime#800818, isFallbackOrderOnly#800823, ... 20 more fields]
(24) Union
Arguments: false, false
(25) Join
Arguments: LeftOuter, ((shardId#800667 = shardId#800761) AND (worklistShardItemId#800745L = worklistShardItemId#800762L))
(26) Project
Arguments: [shardId#800667, worklistShardItemId#800745L, qty#800750, version#800754, orderProposalId#800763L, orderProposalItemId#800764, orderProposalItemGroupId#800765, originalReplenishmentRunId#800766L, orderProposalHorizonGroupingId#800767L, splitIndicator#800768L, previousOrderProposal#800769L, clusterId#800770L, sequenceId#800771L, sourceOfSupplyUuid#800772, supplierGroup#800773, supplier#800774, subrange#800775, product#800776, plant#800777, purchasingOrg#800778, purchasingGroup#800779, mrpController#800780, orderDateTime#800781, deliveryDateTime#800782, availabilityDateTime#800783, ... 22 more fields]
(27) Project
Arguments: [shardId#800667, worklistShardItemId#800745L, qty#800750, version#800754, product#800776, plant#800777, availabilityDateTime#800783, nextAvailabilityDateTime#800784]
(28) Project
Arguments: [shardId#800667, worklistShardItemId#800745L, qty#800750, version#800754, product#800776, plant#800777, availabilityDateTime#800783 AS periodStart#800854, nextAvailabilityDateTime#800784]
(29) Project
Arguments: [shardId#800667, worklistShardItemId#800745L, qty#800750, version#800754, product#800776, plant#800777, periodStart#800854, nextAvailabilityDateTime#800784 AS periodEnd#800855]
(30) Project
Arguments: [shardId#800667, worklistShardItemId#800745L, version#800754, product#800776, plant#800777, periodStart#800854, periodEnd#800855, qty#800750]