digraph G {
0 [id="node0" labelType="html" label="<br><b>DeserializeToObject</b><br><br>" tooltip="DeserializeToObject createexternalrow(invoke(shardId#1032610.toString()), static_invoke(java.lang.Long.valueOf(worklistShardItemId#1032611L)), static_invoke(java.lang.Double.valueOf(qty#1032612)), invoke(demandChannel#1032613.toString()), invoke(demandStream#1032614.toString()), mapobjects(lambdavariable(MapObject, StructField(label,StringType,true), StructField(dateTime,TimestampType,true), StructField(value,DoubleType,true), false, -1), createexternalrow(invoke(lambdavariable(MapObject, StructField(label,StringType,true), StructField(dateTime,TimestampType,true), StructField(value,DoubleType,true), false, -1).label.toString()), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, StructField(label,StringType,true), StructField(dateTime,TimestampType,true), StructField(value,DoubleType,true), false, -1).dateTime)), static_invoke(java.lang.Double.valueOf(lambdavariable(MapObject, StructField(label,StringType,true), StructField(dateTime,TimestampType,true), StructField(value,DoubleType,true), false, -1).value)), StructField(label,StringType,true), StructField(dateTime,TimestampType,true), StructField(value,DoubleType,true)), kpis#1032615, Some(class scala.collection.mutable.ArraySeq)), StructField(shardId,StringType,true), StructField(worklistShardItemId,LongType,true), StructField(qty,DoubleType,true), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(kpis,ArrayType(StructType(StructField(label,StringType,true),StructField(dateTime,TimestampType,true),StructField(value,DoubleType,true)),false),true)), obj#1032628: org.apache.spark.sql.Row"];
subgraph cluster1 {
isCluster="true";
id="cluster1";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
2 [id="node2" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter (isnotnull(shardId#1032610) AND NOT (shardId#1032610 = 0_1_10000002111))"];
3 [id="node3" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#1032610,worklistShardItemId#1032611L,qty#1032612,demandChannel#1032613,demandStream#1032614,kpis#1032615]"];
}
2->0;
3->2;
}
== Physical Plan ==
DeserializeToObject (3)
+- * Filter (2)
+- * Scan ExistingRDD (1)
(1) Scan ExistingRDD [codegen id : 1]
Output [6]: [shardId#1032610, worklistShardItemId#1032611L, qty#1032612, demandChannel#1032613, demandStream#1032614, kpis#1032615]
Arguments: [shardId#1032610, worklistShardItemId#1032611L, qty#1032612, demandChannel#1032613, demandStream#1032614, kpis#1032615], MapPartitionsRDD[48322] at createDataFrame at KpiCurveCacheImpl.java:230, ExistingRDD, UnknownPartitioning(0)
(2) Filter [codegen id : 1]
Input [6]: [shardId#1032610, worklistShardItemId#1032611L, qty#1032612, demandChannel#1032613, demandStream#1032614, kpis#1032615]
Condition : (isnotnull(shardId#1032610) AND NOT (shardId#1032610 = 0_1_10000002111))
(3) DeserializeToObject
Input [6]: [shardId#1032610, worklistShardItemId#1032611L, qty#1032612, demandChannel#1032613, demandStream#1032614, kpis#1032615]
Arguments: createexternalrow(invoke(shardId#1032610.toString()), static_invoke(java.lang.Long.valueOf(worklistShardItemId#1032611L)), static_invoke(java.lang.Double.valueOf(qty#1032612)), invoke(demandChannel#1032613.toString()), invoke(demandStream#1032614.toString()), mapobjects(lambdavariable(MapObject, StructField(label,StringType,true), StructField(dateTime,TimestampType,true), StructField(value,DoubleType,true), false, -1), createexternalrow(invoke(lambdavariable(MapObject, StructField(label,StringType,true), StructField(dateTime,TimestampType,true), StructField(value,DoubleType,true), false, -1).label.toString()), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, StructField(label,StringType,true), StructField(dateTime,TimestampType,true), StructField(value,DoubleType,true), false, -1).dateTime)), static_invoke(java.lang.Double.valueOf(lambdavariable(MapObject, StructField(label,StringType,true), StructField(dateTime,TimestampType,true), StructField(value,DoubleType,true), false, -1).value)), StructField(label,StringType,true), StructField(dateTime,TimestampType,true), StructField(value,DoubleType,true)), kpis#1032615, Some(class scala.collection.mutable.ArraySeq)), StructField(shardId,StringType,true), StructField(worklistShardItemId,LongType,true), StructField(qty,DoubleType,true), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(kpis,ArrayType(StructType(StructField(label,StringType,true),StructField(dateTime,TimestampType,true),StructField(value,DoubleType,true)),false),true)), obj#1032628: org.apache.spark.sql.Row