digraph G {
0 [id="node0" labelType="html" label="<br><b>DeserializeToObject</b><br><br>" tooltip="DeserializeToObject createexternalrow(invoke(shardId#1078980.toString()), static_invoke(java.lang.Long.valueOf(worklistShardItemId#1078981L)), static_invoke(java.lang.Double.valueOf(qty#1078982)), invoke(demandChannel#1078983.toString()), invoke(demandStream#1078984.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#1078985, 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#1078998: 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#1078980) AND NOT (shardId#1078980 = 0_1_10000002111))"];
3 [id="node3" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#1078980,worklistShardItemId#1078981L,qty#1078982,demandChannel#1078983,demandStream#1078984,kpis#1078985]"];
}
2->0;
3->2;
}
== Physical Plan ==
DeserializeToObject (3)
+- * Filter (2)
+- * Scan ExistingRDD (1)
(1) Scan ExistingRDD [codegen id : 1]
Output [6]: [shardId#1078980, worklistShardItemId#1078981L, qty#1078982, demandChannel#1078983, demandStream#1078984, kpis#1078985]
Arguments: [shardId#1078980, worklistShardItemId#1078981L, qty#1078982, demandChannel#1078983, demandStream#1078984, kpis#1078985], MapPartitionsRDD[50459] at createDataFrame at KpiCurveCacheImpl.java:230, ExistingRDD, UnknownPartitioning(0)
(2) Filter [codegen id : 1]
Input [6]: [shardId#1078980, worklistShardItemId#1078981L, qty#1078982, demandChannel#1078983, demandStream#1078984, kpis#1078985]
Condition : (isnotnull(shardId#1078980) AND NOT (shardId#1078980 = 0_1_10000002111))
(3) DeserializeToObject
Input [6]: [shardId#1078980, worklistShardItemId#1078981L, qty#1078982, demandChannel#1078983, demandStream#1078984, kpis#1078985]
Arguments: createexternalrow(invoke(shardId#1078980.toString()), static_invoke(java.lang.Long.valueOf(worklistShardItemId#1078981L)), static_invoke(java.lang.Double.valueOf(qty#1078982)), invoke(demandChannel#1078983.toString()), invoke(demandStream#1078984.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#1078985, 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#1078998: org.apache.spark.sql.Row