digraph G {
0 [id="node0" labelType="html" label="<b>CollectLimit</b><br><br>shuffle records written: 2<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 1<br>local bytes read: 62.0 B<br>merged fetch fallback count: 0<br>local blocks read: 1<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>local merged bytes read: 0.0 B<br>remote reqs duration: 0 ms<br>local merged chunks fetched: 0<br>shuffle write time total (min, med, max (stageId: taskId))<br>0 ms (0 ms, 0 ms, 0 ms (stage 97967.0: task 308716))<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>124.0 B (62.0 B, 62.0 B, 62.0 B (stage 97967.0: task 308716))" tooltip="CollectLimit 1"];
1 [id="node1" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 2" tooltip="InMemoryTableScan"];
subgraph cluster2 {
isCluster="true";
id="cluster2";
label="WholeStageCodegen (5)\n \nduration: total (min, med, max (stageId: taskId))\n111 ms (0 ms, 0 ms, 13 ms (stage 97967.0: task 308642))";
tooltip="WholeStageCodegen (5)";
3 [id="node3" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#815740, worklistShardItemId#815741L, version#897484, qty#815747, demandChannel#894115, demandStream#894116, kpis#894150]"];
4 [id="node4" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 2" tooltip="BroadcastHashJoin [shardId#815740, worklistShardItemId#815741L], [shardId#897581, worklistShardItemId#897582L], Inner, BuildRight, false"];
}
5 [id="node5" labelType="html" label="<br><b>Union</b><br><br>" tooltip="Union"];
subgraph cluster6 {
isCluster="true";
id="cluster6";
label="WholeStageCodegen (1)\n \nduration: total (min, med, max (stageId: taskId))\n605 ms (0 ms, 0 ms, 74 ms (stage 97967.0: task 308642))";
tooltip="WholeStageCodegen (1)";
7 [id="node7" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#815740, worklistShardItemId#815741L, qty#815747, demandChannel#894115, demandStream#894116, kpis#894150]"];
8 [id="node8" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((NOT isNewlyCalculated#894118 AND isnotnull(shardId#815740)) AND isnotnull(worklistShardItemId#815741L))"];
}
9 [id="node9" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 2" tooltip="InMemoryTableScan [demandChannel#894115, demandStream#894116, isNewlyCalculated#894118, kpis#894150, qty#815747, shardId#815740, worklistShardItemId#815741L], [NOT isNewlyCalculated#894118, isnotnull(shardId#815740), isnotnull(worklistShardItemId#815741L)]"];
10 [id="node10" labelType="html" label="<br><b>Union</b><br><br>" tooltip="Union"];
subgraph cluster11 {
isCluster="true";
id="cluster11";
label="WholeStageCodegen (5)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (5)";
12 [id="node12" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#815740, worklistShardItemId#815741L, version#815742, product#815743, plant#815744, qty#815747, null AS demandChannel#894115, null AS demandStream#894116, [] AS kpis#894150, true AS isNewlyCalculated#894118]"];
13 [id="node13" labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 0<br>spill size: 0.0 B" tooltip="SortMergeJoin [coalesce(shardId#815740, ), isnull(shardId#815740), coalesce(worklistShardItemId#815741L, 0), isnull(worklistShardItemId#815741L), coalesce(version#815742, 0), isnull(version#815742), coalesce(product#815743, ), isnull(product#815743), coalesce(plant#815744, ), isnull(plant#815744), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#815747, 0.0))), isnull(qty#815747)], [coalesce(shardId#894107, ), isnull(shardId#894107), coalesce(worklistShardItemId#894108L, 0), isnull(worklistShardItemId#894108L), coalesce(version#894109, 0), isnull(version#894109), coalesce(product#894110, ), isnull(product#894110), coalesce(plant#894111, ), isnull(plant#894111), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#893882, 0.0))), isnull(qty#893882)], LeftAnti"];
}
subgraph cluster14 {
isCluster="true";
id="cluster14";
label="WholeStageCodegen (1)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (1)";
15 [id="node15" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [coalesce(shardId#815740, ) ASC NULLS FIRST, isnull(shardId#815740) ASC NULLS FIRST, coalesce(worklistShardItemId#815741L, 0) ASC NULLS FIRST, isnull(worklistShardItemId#815741L) ASC NULLS FIRST, coalesce(version#815742, 0) ASC NULLS FIRST, isnull(version#815742) ASC NULLS FIRST, coalesce(product#815743, ) ASC NULLS FIRST, isnull(product#815743) ASC NULLS FIRST, coalesce(plant#815744, ) ASC NULLS FIRST, isnull(plant#815744) ASC NULLS FIRST, knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#815747, 0.0))) ASC NULLS FIRST, isnull(qty#815747) ASC NULLS FIRST], false, 0"];
}
16 [id="node16" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(coalesce(shardId#815740, ), isnull(shardId#815740), coalesce(worklistShardItemId#815741L, 0), isnull(worklistShardItemId#815741L), coalesce(version#815742, 0), isnull(version#815742), coalesce(product#815743, ), isnull(product#815743), coalesce(plant#815744, ), isnull(plant#815744), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#815747, 0.0))), isnull(qty#815747), 37), ENSURE_REQUIREMENTS, [plan_id=1391250]"];
17 [id="node17" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#815740, worklistShardItemId#815741L, version#815742, product#815743, plant#815744, qty#815747]"];
18 [id="node18" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#815743, plant#815744, 37), REPARTITION_BY_NUM, [plan_id=1391020]"];
subgraph cluster19 {
isCluster="true";
id="cluster19";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
20 [id="node20" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#815740,worklistShardItemId#815741L,version#815742,product#815743,plant#815744,periodStart#815745,periodEnd#815746,qty#815747]"];
}
subgraph cluster21 {
isCluster="true";
id="cluster21";
label="WholeStageCodegen (4)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (4)";
22 [id="node22" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [coalesce(shardId#894107, ) ASC NULLS FIRST, isnull(shardId#894107) ASC NULLS FIRST, coalesce(worklistShardItemId#894108L, 0) ASC NULLS FIRST, isnull(worklistShardItemId#894108L) ASC NULLS FIRST, coalesce(version#894109, 0) ASC NULLS FIRST, isnull(version#894109) ASC NULLS FIRST, coalesce(product#894110, ) ASC NULLS FIRST, isnull(product#894110) ASC NULLS FIRST, coalesce(plant#894111, ) ASC NULLS FIRST, isnull(plant#894111) ASC NULLS FIRST, knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#893882, 0.0))) ASC NULLS FIRST, isnull(qty#893882) ASC NULLS FIRST], false, 0"];
}
23 [id="node23" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(coalesce(shardId#894107, ), isnull(shardId#894107), coalesce(worklistShardItemId#894108L, 0), isnull(worklistShardItemId#894108L), coalesce(version#894109, 0), isnull(version#894109), coalesce(product#894110, ), isnull(product#894110), coalesce(plant#894111, ), isnull(plant#894111), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#893882, 0.0))), isnull(qty#893882), 37), ENSURE_REQUIREMENTS, [plan_id=1391270]"];
24 [id="node24" labelType="html" label="<br><b>Union</b><br><br>" tooltip="Union"];
25 [id="node25" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#894107, worklistShardItemId#894108L, version#894109, product#894110, plant#894111, qty#893882]"];
subgraph cluster26 {
isCluster="true";
id="cluster26";
label="WholeStageCodegen (7)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (7)";
27 [id="node27" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#815740, worklistShardItemId#815741L, version#815742, product#815743, plant#815744, cachedQty#893880 AS qty#893882, demandChannel#893875, demandStream#893876, cachedKpis#893881 AS kpis#893883]"];
28 [id="node28" labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 0<br>spill size: 0.0 B" tooltip="SortMergeJoin [worklistShardItemId#815741L, shardId#815740], [cachedWorklistShardItemId#893879L, cachedShardId#893878], Inner"];
}
subgraph cluster29 {
isCluster="true";
id="cluster29";
label="WholeStageCodegen (4)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (4)";
30 [id="node30" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [worklistShardItemId#815741L ASC NULLS FIRST, shardId#815740 ASC NULLS FIRST], false, 0"];
}
31 [id="node31" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(worklistShardItemId#815741L, shardId#815740, 37), ENSURE_REQUIREMENTS, [plan_id=1391138]"];
subgraph cluster32 {
isCluster="true";
id="cluster32";
label="WholeStageCodegen (3)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (3)";
33 [id="node33" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 0 ms<br>peak memory: 0.0 B<br>number of output rows: 0<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[plant#815744, shardId#815740, version#815742, worklistShardItemId#815741L, product#815743], functions=[])"];
}
34 [id="node34" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(plant#815744, shardId#815740, version#815742, worklistShardItemId#815741L, product#815743, 37), ENSURE_REQUIREMENTS, [plan_id=1391134]"];
subgraph cluster35 {
isCluster="true";
id="cluster35";
label="WholeStageCodegen (2)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (2)";
36 [id="node36" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 0 ms<br>peak memory: 0.0 B<br>number of output rows: 0<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[plant#815744, shardId#815740, version#815742, worklistShardItemId#815741L, product#815743], functions=[])"];
37 [id="node37" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#815740, worklistShardItemId#815741L, version#815742, product#815743, plant#815744]"];
38 [id="node38" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#815741L, shardId#815740], [cachedWorklistShardItemId#893869L, cachedShardId#893868], Inner, BuildLeft, ((qty#815747 = cachedQty#893870) OR isnull(qty#815747)), false"];
46 [id="node46" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#893862 AS cachedShardId#893868, worklistShardItemId#893863L AS cachedWorklistShardItemId#893869L, qty#893864 AS cachedQty#893870]"];
47 [id="node47" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#893863L) AND isnotnull(shardId#893862))"];
48 [id="node48" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#893862,worklistShardItemId#893863L,qty#893864,demandChannel#893865,demandStream#893866,kpis#893867]"];
}
39 [id="node39" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 0 ms<br>time to build: 0 ms<br>time to collect: 0 ms<br>number of output rows: 0<br>data size: 0.0 B" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(input[1, bigint, false], input[0, string, false]),false), [plan_id=1391128]"];
subgraph cluster40 {
isCluster="true";
id="cluster40";
label="WholeStageCodegen (1)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (1)";
41 [id="node41" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#815741L) AND isnotnull(shardId#815740))"];
}
42 [id="node42" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#815740, worklistShardItemId#815741L, version#815742, product#815743, plant#815744, qty#815747], [isnotnull(worklistShardItemId#815741L), isnotnull(shardId#815740)]"];
43 [id="node43" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#815743, plant#815744, 37), REPARTITION_BY_NUM, [plan_id=1391020]"];
subgraph cluster44 {
isCluster="true";
id="cluster44";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
45 [id="node45" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#815740,worklistShardItemId#815741L,version#815742,product#815743,plant#815744,periodStart#815745,periodEnd#815746,qty#815747]"];
}
subgraph cluster49 {
isCluster="true";
id="cluster49";
label="WholeStageCodegen (6)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (6)";
50 [id="node50" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [cachedWorklistShardItemId#893879L ASC NULLS FIRST, cachedShardId#893878 ASC NULLS FIRST], false, 0"];
}
51 [id="node51" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(cachedWorklistShardItemId#893879L, cachedShardId#893878, 37), ENSURE_REQUIREMENTS, [plan_id=1391144]"];
subgraph cluster52 {
isCluster="true";
id="cluster52";
label="WholeStageCodegen (5)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (5)";
53 [id="node53" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#893872 AS cachedShardId#893878, worklistShardItemId#893873L AS cachedWorklistShardItemId#893879L, qty#893874 AS cachedQty#893880, demandChannel#893875, demandStream#893876, kpis#893877 AS cachedKpis#893881]"];
54 [id="node54" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#893873L) AND isnotnull(shardId#893872))"];
55 [id="node55" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#893872,worklistShardItemId#893873L,qty#893874,demandChannel#893875,demandStream#893876,kpis#893877]"];
}
subgraph cluster56 {
isCluster="true";
id="cluster56";
label="WholeStageCodegen (3)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (3)";
57 [id="node57" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#894089, worklistShardItemId#894090L, version#894091, product#894092, plant#894093, qty#894096]"];
58 [id="node58" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#894090L, shardId#894089], [cachedWorklistShardItemId#894104L, cachedShardId#894103], Inner, BuildLeft, false"];
66 [id="node66" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#894097 AS cachedShardId#894103, worklistShardItemId#894098L AS cachedWorklistShardItemId#894104L]"];
67 [id="node67" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#894098L) AND isnotnull(shardId#894097))"];
68 [id="node68" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#894097,worklistShardItemId#894098L,qty#894099,demandChannel#894100,demandStream#894101,kpis#894102]"];
}
59 [id="node59" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 0 ms<br>time to build: 0 ms<br>time to collect: 0 ms<br>number of output rows: 0<br>data size: 0.0 B" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(input[1, bigint, false], input[0, string, false]),false), [plan_id=1391264]"];
subgraph cluster60 {
isCluster="true";
id="cluster60";
label="WholeStageCodegen (2)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (2)";
61 [id="node61" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((isnull(qty#894096) AND isnotnull(worklistShardItemId#894090L)) AND isnotnull(shardId#894089))"];
}
62 [id="node62" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#894089, worklistShardItemId#894090L, version#894091, product#894092, plant#894093, qty#894096], [isnull(qty#894096), isnotnull(worklistShardItemId#894090L), isnotnull(shardId#894089)]"];
63 [id="node63" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#815743, plant#815744, 37), REPARTITION_BY_NUM, [plan_id=1391020]"];
subgraph cluster64 {
isCluster="true";
id="cluster64";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
65 [id="node65" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#815740,worklistShardItemId#815741L,version#815742,product#815743,plant#815744,periodStart#815745,periodEnd#815746,qty#815747]"];
}
subgraph cluster69 {
isCluster="true";
id="cluster69";
label="WholeStageCodegen (6)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (6)";
70 [id="node70" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#894120, worklistShardItemId#894121L, version#894122, product#894123, plant#894124, qty#894148, demandChannel#894141, demandStream#894142, kpis#894149, false AS isNewlyCalculated#894119]"];
}
71 [id="node71" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [demandChannel#894141, demandStream#894142, kpis#894149, plant#894124, product#894123, qty#894148, shardId#894120, version#894122, worklistShardItemId#894121L]"];
subgraph cluster72 {
isCluster="true";
id="cluster72";
label="WholeStageCodegen (7)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (7)";
73 [id="node73" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#815740, worklistShardItemId#815741L, version#815742, product#815743, plant#815744, cachedQty#893880 AS qty#893882, demandChannel#893875, demandStream#893876, cachedKpis#893881 AS kpis#893883]"];
74 [id="node74" labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 0<br>spill size: 0.0 B" tooltip="SortMergeJoin [worklistShardItemId#815741L, shardId#815740], [cachedWorklistShardItemId#893879L, cachedShardId#893878], Inner"];
}
subgraph cluster75 {
isCluster="true";
id="cluster75";
label="WholeStageCodegen (4)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (4)";
76 [id="node76" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [worklistShardItemId#815741L ASC NULLS FIRST, shardId#815740 ASC NULLS FIRST], false, 0"];
}
77 [id="node77" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(worklistShardItemId#815741L, shardId#815740, 37), ENSURE_REQUIREMENTS, [plan_id=1391138]"];
subgraph cluster78 {
isCluster="true";
id="cluster78";
label="WholeStageCodegen (3)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (3)";
79 [id="node79" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 0 ms<br>peak memory: 0.0 B<br>number of output rows: 0<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[plant#815744, shardId#815740, version#815742, worklistShardItemId#815741L, product#815743], functions=[])"];
}
80 [id="node80" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(plant#815744, shardId#815740, version#815742, worklistShardItemId#815741L, product#815743, 37), ENSURE_REQUIREMENTS, [plan_id=1391134]"];
subgraph cluster81 {
isCluster="true";
id="cluster81";
label="WholeStageCodegen (2)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (2)";
82 [id="node82" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 0 ms<br>peak memory: 0.0 B<br>number of output rows: 0<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[plant#815744, shardId#815740, version#815742, worklistShardItemId#815741L, product#815743], functions=[])"];
83 [id="node83" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#815740, worklistShardItemId#815741L, version#815742, product#815743, plant#815744]"];
84 [id="node84" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#815741L, shardId#815740], [cachedWorklistShardItemId#893869L, cachedShardId#893868], Inner, BuildLeft, ((qty#815747 = cachedQty#893870) OR isnull(qty#815747)), false"];
92 [id="node92" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#893862 AS cachedShardId#893868, worklistShardItemId#893863L AS cachedWorklistShardItemId#893869L, qty#893864 AS cachedQty#893870]"];
93 [id="node93" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#893863L) AND isnotnull(shardId#893862))"];
94 [id="node94" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#893862,worklistShardItemId#893863L,qty#893864,demandChannel#893865,demandStream#893866,kpis#893867]"];
}
85 [id="node85" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 0 ms<br>time to build: 0 ms<br>time to collect: 0 ms<br>number of output rows: 0<br>data size: 0.0 B" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(input[1, bigint, false], input[0, string, false]),false), [plan_id=1391128]"];
subgraph cluster86 {
isCluster="true";
id="cluster86";
label="WholeStageCodegen (1)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (1)";
87 [id="node87" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#815741L) AND isnotnull(shardId#815740))"];
}
88 [id="node88" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#815740, worklistShardItemId#815741L, version#815742, product#815743, plant#815744, qty#815747], [isnotnull(worklistShardItemId#815741L), isnotnull(shardId#815740)]"];
89 [id="node89" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#815743, plant#815744, 37), REPARTITION_BY_NUM, [plan_id=1391020]"];
subgraph cluster90 {
isCluster="true";
id="cluster90";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
91 [id="node91" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#815740,worklistShardItemId#815741L,version#815742,product#815743,plant#815744,periodStart#815745,periodEnd#815746,qty#815747]"];
}
subgraph cluster95 {
isCluster="true";
id="cluster95";
label="WholeStageCodegen (6)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (6)";
96 [id="node96" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [cachedWorklistShardItemId#893879L ASC NULLS FIRST, cachedShardId#893878 ASC NULLS FIRST], false, 0"];
}
97 [id="node97" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(cachedWorklistShardItemId#893879L, cachedShardId#893878, 37), ENSURE_REQUIREMENTS, [plan_id=1391144]"];
subgraph cluster98 {
isCluster="true";
id="cluster98";
label="WholeStageCodegen (5)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (5)";
99 [id="node99" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#893872 AS cachedShardId#893878, worklistShardItemId#893873L AS cachedWorklistShardItemId#893879L, qty#893874 AS cachedQty#893880, demandChannel#893875, demandStream#893876, kpis#893877 AS cachedKpis#893881]"];
100 [id="node100" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#893873L) AND isnotnull(shardId#893872))"];
101 [id="node101" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#893872,worklistShardItemId#893873L,qty#893874,demandChannel#893875,demandStream#893876,kpis#893877]"];
}
subgraph cluster102 {
isCluster="true";
id="cluster102";
label="WholeStageCodegen (2)\n \nduration: total (min, med, max (stageId: taskId))\n6 ms (0 ms, 0 ms, 4 ms (stage 97967.0: task 308716))";
tooltip="WholeStageCodegen (2)";
103 [id="node103" labelType="html" label="<b>Filter</b><br><br>number of output rows: 2" tooltip="Filter (isnotnull(shardId#897489) AND isnotnull(worklistShardItemId#897490L))"];
}
104 [id="node104" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 2" tooltip="InMemoryTableScan [shardId#897489, worklistShardItemId#897490L, qty#896671, demandChannel#896651, demandStream#896652, kpis#896680], [isnotnull(shardId#897489), isnotnull(worklistShardItemId#897490L)]"];
105 [id="node105" labelType="html" label="<b>SortAggregate</b><br><br>number of output rows: 0" tooltip="SortAggregate(key=[demandChannel#896651, shardId#815740, qty#896671, worklistShardItemId#815741L, demandStream#896652], functions=[first(kpis#896680, false)])"];
subgraph cluster106 {
isCluster="true";
id="cluster106";
label="WholeStageCodegen (6)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (6)";
107 [id="node107" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [demandChannel#896651 ASC NULLS FIRST, shardId#815740 ASC NULLS FIRST, qty#896671 ASC NULLS FIRST, worklistShardItemId#815741L ASC NULLS FIRST, demandStream#896652 ASC NULLS FIRST], false, 0"];
}
108 [id="node108" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(demandChannel#896651, shardId#815740, qty#896671, worklistShardItemId#815741L, demandStream#896652, 37), ENSURE_REQUIREMENTS, [plan_id=1392068]"];
109 [id="node109" labelType="html" label="<b>SortAggregate</b><br><br>number of output rows: 0" tooltip="SortAggregate(key=[demandChannel#896651, shardId#815740, knownfloatingpointnormalized(normalizenanandzero(qty#896671)) AS qty#896671, worklistShardItemId#815741L, demandStream#896652], functions=[partial_first(kpis#896680, false)])"];
subgraph cluster110 {
isCluster="true";
id="cluster110";
label="WholeStageCodegen (5)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (5)";
111 [id="node111" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [demandChannel#896651 ASC NULLS FIRST, shardId#815740 ASC NULLS FIRST, knownfloatingpointnormalized(normalizenanandzero(qty#896671)) AS qty#896671 ASC NULLS FIRST, worklistShardItemId#815741L ASC NULLS FIRST, demandStream#896652 ASC NULLS FIRST], false, 0"];
112 [id="node112" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#815740, worklistShardItemId#815741L, qty#896671, demandChannel#896651, demandStream#896652, kpis#896680]"];
113 [id="node113" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [coalesce(product#896644, ), isnull(product#896644), coalesce(plant#896645, ), isnull(plant#896645)], [coalesce(product#815743, ), isnull(product#815743), coalesce(plant#815744, ), isnull(plant#815744)], Inner, BuildRight, ((qty#896671 <=> qty#815747) OR isnull(qty#815747)), false"];
}
114 [id="node114" labelType="html" label="<br><b>Union</b><br><br>" tooltip="Union"];
115 [id="node115" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [prodPlantResults#896625.productId AS product#896644, prodPlantResults#896625.plantId AS plant#896645, null AS qty#896671, null AS demandChannel#896651, null AS demandStream#896652, transform(prodPlantResults#896625.kpiResults, lambdafunction(struct(label, lambda kpi#896681.label, dateTime, lambda kpi#896681.datetime, value, lambda kpi#896681.value), lambda kpi#896681, false)) AS kpis#896680]"];
116 [id="node116" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [prodPlantResults#896625]"];
subgraph cluster117 {
isCluster="true";
id="cluster117";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
118 [id="node118" labelType="html" label="<br><b>Generate</b><br><br>" tooltip="Generate explode(prodPlantResults#896618), false, [prodPlantResults#896625]"];
119 [id="node119" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [prodPlantResults#896618]"];
120 [id="node120" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter ((size(prodPlantResults#896618, true) > 0) AND isnotnull(prodPlantResults#896618))"];
121 [id="node121" labelType="html" label="<br><b>SerializeFromObject</b><br><br>" tooltip="SerializeFromObject [mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -1), if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -1), StructField(measuredUnit,StringType,true), StructField(numberOfCalls,LongType,false), StructField(parent,StringType,true), StructField(runtime,LongType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.PerformanceMeasurement)))) null else named_struct(measuredUnit, static_invoke(UTF8String.fromString(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -1), StructField(measuredUnit,StringType,true), StructField(numberOfCalls,LongType,false), StructField(parent,StringType,true), StructField(runtime,LongType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.PerformanceMeasurement))).getMeasuredUnit()))), numberOfCalls, invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -1), StructField(measuredUnit,StringType,true), StructField(numberOfCalls,LongType,false), StructField(parent,StringType,true), StructField(runtime,LongType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.PerformanceMeasurement))).getNumberOfCalls()), parent, static_invoke(UTF8String.fromString(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -1), StructField(measuredUnit,StringType,true), StructField(numberOfCalls,LongType,false), StructField(parent,StringType,true), StructField(runtime,LongType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.PerformanceMeasurement))).getParent()))), runtime, invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -1), StructField(measuredUnit,StringType,true), StructField(numberOfCalls,LongType,false), StructField(parent,StringType,true), StructField(runtime,LongType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.PerformanceMeasurement))).getRuntime())), invoke(knownnotnull(assertnotnull(input[0, com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiCalculationResult, true])).getPerformanceMeasurements()), None) AS performanceMeasurements#896617, mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -2), if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -2), StructField(demandChannelStreamKpiResults,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true)),true),true), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), StructField(plantId,StringType,true), StructField(productId,StringType,true), StructField(quantityKpiResults,ArrayType(StructType(StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true),StructField(quantity,DoubleType,false)),true),true), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.ProdPlantKpiCalculationResult)))) null else named_struct(demandChannelStreamKpiResults, mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -3), if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -3), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.DemandChannelStreamKpiResult)))) null else named_struct(demandChannel, static_invoke(UTF8String.fromString(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -3), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.DemandChannelStreamKpiResult))).getDemandChannel()))), demandStream, static_invoke(UTF8String.fromString(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -3), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.DemandChannelStreamKpiResult))).getDemandStream()))), kpiResults, mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -4), if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -4), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult)))) null else named_struct(datetime, static_invoke(DateTimeUtils.fromJavaTimestamp(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -4), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult))).getDatetime()))), label, static_invoke(UTF8String.fromString(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -4), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult))).getLabel()))), value, invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -4), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult))).getValue())), invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -3), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.DemandChannelStreamKpiResult))).getKpiResults()), None)), invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -2), StructField(demandChannelStreamKpiResults,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true)),true),true), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), StructField(plantId,StringType,true), StructField(productId,StringType,true), StructField(quantityKpiResults,ArrayType(StructType(StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true),StructField(quantity,DoubleType,false)),true),true), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.ProdPlantKpiCalculationResult))).getDemandChannelStreamKpiResults()), None), kpiResults, mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -5), if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -5), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult)))) null else named_struct(datetime, static_invoke(DateTimeUtils.fromJavaTimestamp(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -5), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult))).getDatetime()))), label, static_invoke(UTF8String.fromString(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -5), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult))).getLabel()))), value, invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -5), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult))).getValue())), invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -2), StructField(demandChannelStreamKpiResults,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true)),true),true), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), StructField(plantId,StringType,true), StructField(productId,StringType,true), StructField(quantityKpiResults,ArrayType(StructType(StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true),StructField(quantity,DoubleType,false)),true),true), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.ProdPlantKpiCalculationResult))).getKpiResults()), None), plantId, static_invoke(UTF8String.fromString(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -2), StructField(demandChannelStreamKpiResults,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true)),true),true), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), StructField(plantId,StringType,true), StructField(productId,StringType,true), StructField(quantityKpiResults,ArrayType(StructType(StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true),StructField(quantity,DoubleType,false)),true),true), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.ProdPlantKpiCalculationResult))).getPlantId()))), productId, static_invoke(UTF8String.fromString(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -2), StructField(demandChannelStreamKpiResults,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true)),true),true), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), StructField(plantId,StringType,true), StructField(productId,StringType,true), StructField(quantityKpiResults,ArrayType(StructType(StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true),StructField(quantity,DoubleType,false)),true),true), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.ProdPlantKpiCalculationResult))).getProductId()))), quantityKpiResults, mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -6), if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -6), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), StructField(quantity,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.QuantityKpiResult)))) null else named_struct(kpiResults, mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -7), if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -7), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult)))) null else named_struct(datetime, static_invoke(DateTimeUtils.fromJavaTimestamp(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -7), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult))).getDatetime()))), label, static_invoke(UTF8String.fromString(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -7), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult))).getLabel()))), value, invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -7), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult))).getValue())), invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -6), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), StructField(quantity,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.QuantityKpiResult))).getKpiResults()), None), quantity, invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -6), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), StructField(quantity,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.QuantityKpiResult))).getQuantity())), invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -2), StructField(demandChannelStreamKpiResults,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true)),true),true), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), StructField(plantId,StringType,true), StructField(productId,StringType,true), StructField(quantityKpiResults,ArrayType(StructType(StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true),StructField(quantity,DoubleType,false)),true),true), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.ProdPlantKpiCalculationResult))).getQuantityKpiResults()), None)), invoke(knownnotnull(assertnotnull(input[0, com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiCalculationResult, true])).getProdPlantResults()), None) AS prodPlantResults#896618]"];
}
122 [id="node122" labelType="html" label="<br><b>Scan</b><br><br>" tooltip="Scan[obj#896614]"];
123 [id="node123" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [_extract_productId#896816 AS product#896631, _extract_plantId#896817 AS plant#896632, quantityKpiResults#896637.quantity AS qty#896638, null AS demandChannel#896640, null AS demandStream#896641, transform(quantityKpiResults#896637.kpiResults, lambdafunction(struct(label, lambda kpi#896681.label, dateTime, lambda kpi#896681.datetime, value, lambda kpi#896681.value), lambda kpi#896681, false)) AS kpis#896814]"];
subgraph cluster124 {
isCluster="true";
id="cluster124";
label="WholeStageCodegen (1)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (1)";
125 [id="node125" labelType="html" label="<b>Generate</b><br><br>number of output rows: 0" tooltip="Generate explode(_extract_quantityKpiResults#896818), [_extract_productId#896816, _extract_plantId#896817], false, [quantityKpiResults#896637]"];
126 [id="node126" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [prodPlantResults#896670.productId AS _extract_productId#896816, prodPlantResults#896670.plantId AS _extract_plantId#896817, prodPlantResults#896670.quantityKpiResults AS _extract_quantityKpiResults#896818]"];
127 [id="node127" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((size(prodPlantResults#896670.quantityKpiResults, true) > 0) AND isnotnull(prodPlantResults#896670.quantityKpiResults))"];
}
128 [id="node128" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [prodPlantResults#896670], [(size(prodPlantResults#896670.quantityKpiResults, true) > 0), isnotnull(prodPlantResults#896670.quantityKpiResults)]"];
subgraph cluster129 {
isCluster="true";
id="cluster129";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
130 [id="node130" labelType="html" label="<br><b>Generate</b><br><br>" tooltip="Generate explode(prodPlantResults#896618), false, [prodPlantResults#896625]"];
131 [id="node131" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [prodPlantResults#896618]"];
132 [id="node132" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter ((size(prodPlantResults#896618, true) > 0) AND isnotnull(prodPlantResults#896618))"];
133 [id="node133" labelType="html" label="<br><b>SerializeFromObject</b><br><br>" tooltip="SerializeFromObject [mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -1), if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -1), StructField(measuredUnit,StringType,true), StructField(numberOfCalls,LongType,false), StructField(parent,StringType,true), StructField(runtime,LongType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.PerformanceMeasurement)))) null else named_struct(measuredUnit, static_invoke(UTF8String.fromString(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -1), StructField(measuredUnit,StringType,true), StructField(numberOfCalls,LongType,false), StructField(parent,StringType,true), StructField(runtime,LongType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.PerformanceMeasurement))).getMeasuredUnit()))), numberOfCalls, invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -1), StructField(measuredUnit,StringType,true), StructField(numberOfCalls,LongType,false), StructField(parent,StringType,true), StructField(runtime,LongType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.PerformanceMeasurement))).getNumberOfCalls()), parent, static_invoke(UTF8String.fromString(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -1), StructField(measuredUnit,StringType,true), StructField(numberOfCalls,LongType,false), StructField(parent,StringType,true), StructField(runtime,LongType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.PerformanceMeasurement))).getParent()))), runtime, invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -1), StructField(measuredUnit,StringType,true), StructField(numberOfCalls,LongType,false), StructField(parent,StringType,true), StructField(runtime,LongType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.PerformanceMeasurement))).getRuntime())), invoke(knownnotnull(assertnotnull(input[0, com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiCalculationResult, true])).getPerformanceMeasurements()), None) AS performanceMeasurements#896617, mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -2), if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -2), StructField(demandChannelStreamKpiResults,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true)),true),true), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), StructField(plantId,StringType,true), StructField(productId,StringType,true), StructField(quantityKpiResults,ArrayType(StructType(StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true),StructField(quantity,DoubleType,false)),true),true), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.ProdPlantKpiCalculationResult)))) null else named_struct(demandChannelStreamKpiResults, mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -3), if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -3), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.DemandChannelStreamKpiResult)))) null else named_struct(demandChannel, static_invoke(UTF8String.fromString(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -3), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.DemandChannelStreamKpiResult))).getDemandChannel()))), demandStream, static_invoke(UTF8String.fromString(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -3), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.DemandChannelStreamKpiResult))).getDemandStream()))), kpiResults, mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -4), if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -4), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult)))) null else named_struct(datetime, static_invoke(DateTimeUtils.fromJavaTimestamp(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -4), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult))).getDatetime()))), label, static_invoke(UTF8String.fromString(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -4), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult))).getLabel()))), value, invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -4), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult))).getValue())), invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -3), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.DemandChannelStreamKpiResult))).getKpiResults()), None)), invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -2), StructField(demandChannelStreamKpiResults,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true)),true),true), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), StructField(plantId,StringType,true), StructField(productId,StringType,true), StructField(quantityKpiResults,ArrayType(StructType(StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true),StructField(quantity,DoubleType,false)),true),true), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.ProdPlantKpiCalculationResult))).getDemandChannelStreamKpiResults()), None), kpiResults, mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -5), if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -5), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult)))) null else named_struct(datetime, static_invoke(DateTimeUtils.fromJavaTimestamp(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -5), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult))).getDatetime()))), label, static_invoke(UTF8String.fromString(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -5), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult))).getLabel()))), value, invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -5), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult))).getValue())), invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -2), StructField(demandChannelStreamKpiResults,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true)),true),true), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), StructField(plantId,StringType,true), StructField(productId,StringType,true), StructField(quantityKpiResults,ArrayType(StructType(StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true),StructField(quantity,DoubleType,false)),true),true), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.ProdPlantKpiCalculationResult))).getKpiResults()), None), plantId, static_invoke(UTF8String.fromString(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -2), StructField(demandChannelStreamKpiResults,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true)),true),true), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), StructField(plantId,StringType,true), StructField(productId,StringType,true), StructField(quantityKpiResults,ArrayType(StructType(StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true),StructField(quantity,DoubleType,false)),true),true), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.ProdPlantKpiCalculationResult))).getPlantId()))), productId, static_invoke(UTF8String.fromString(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -2), StructField(demandChannelStreamKpiResults,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true)),true),true), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), StructField(plantId,StringType,true), StructField(productId,StringType,true), StructField(quantityKpiResults,ArrayType(StructType(StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true),StructField(quantity,DoubleType,false)),true),true), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.ProdPlantKpiCalculationResult))).getProductId()))), quantityKpiResults, mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -6), if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -6), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), StructField(quantity,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.QuantityKpiResult)))) null else named_struct(kpiResults, mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -7), if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -7), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult)))) null else named_struct(datetime, static_invoke(DateTimeUtils.fromJavaTimestamp(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -7), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult))).getDatetime()))), label, static_invoke(UTF8String.fromString(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -7), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult))).getLabel()))), value, invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -7), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult))).getValue())), invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -6), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), StructField(quantity,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.QuantityKpiResult))).getKpiResults()), None), quantity, invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -6), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), StructField(quantity,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.QuantityKpiResult))).getQuantity())), invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -2), StructField(demandChannelStreamKpiResults,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true)),true),true), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), StructField(plantId,StringType,true), StructField(productId,StringType,true), StructField(quantityKpiResults,ArrayType(StructType(StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true),StructField(quantity,DoubleType,false)),true),true), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.ProdPlantKpiCalculationResult))).getQuantityKpiResults()), None)), invoke(knownnotnull(assertnotnull(input[0, com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiCalculationResult, true])).getProdPlantResults()), None) AS prodPlantResults#896618]"];
}
134 [id="node134" labelType="html" label="<br><b>Scan</b><br><br>" tooltip="Scan[obj#896614]"];
135 [id="node135" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [_extract_productId#896819 AS product#896653, _extract_plantId#896820 AS plant#896654, null AS qty#896676, demandChannelStreamKpiResults#896659.demandChannel AS demandChannel#896661, demandChannelStreamKpiResults#896659.demandStream AS demandStream#896663, transform(demandChannelStreamKpiResults#896659.kpiResults, lambdafunction(struct(label, lambda kpi#896681.label, dateTime, lambda kpi#896681.datetime, value, lambda kpi#896681.value), lambda kpi#896681, false)) AS kpis#896815]"];
subgraph cluster136 {
isCluster="true";
id="cluster136";
label="WholeStageCodegen (2)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (2)";
137 [id="node137" labelType="html" label="<b>Generate</b><br><br>number of output rows: 0" tooltip="Generate explode(_extract_demandChannelStreamKpiResults#896821), [_extract_productId#896819, _extract_plantId#896820], false, [demandChannelStreamKpiResults#896659]"];
138 [id="node138" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [prodPlantResults#896675.productId AS _extract_productId#896819, prodPlantResults#896675.plantId AS _extract_plantId#896820, prodPlantResults#896675.demandChannelStreamKpiResults AS _extract_demandChannelStreamKpiResults#896821]"];
139 [id="node139" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((size(prodPlantResults#896675.demandChannelStreamKpiResults, true) > 0) AND isnotnull(prodPlantResults#896675.demandChannelStreamKpiResults))"];
}
140 [id="node140" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [prodPlantResults#896675], [(size(prodPlantResults#896675.demandChannelStreamKpiResults, true) > 0), isnotnull(prodPlantResults#896675.demandChannelStreamKpiResults)]"];
subgraph cluster141 {
isCluster="true";
id="cluster141";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
142 [id="node142" labelType="html" label="<br><b>Generate</b><br><br>" tooltip="Generate explode(prodPlantResults#896618), false, [prodPlantResults#896625]"];
143 [id="node143" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [prodPlantResults#896618]"];
144 [id="node144" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter ((size(prodPlantResults#896618, true) > 0) AND isnotnull(prodPlantResults#896618))"];
145 [id="node145" labelType="html" label="<br><b>SerializeFromObject</b><br><br>" tooltip="SerializeFromObject [mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -1), if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -1), StructField(measuredUnit,StringType,true), StructField(numberOfCalls,LongType,false), StructField(parent,StringType,true), StructField(runtime,LongType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.PerformanceMeasurement)))) null else named_struct(measuredUnit, static_invoke(UTF8String.fromString(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -1), StructField(measuredUnit,StringType,true), StructField(numberOfCalls,LongType,false), StructField(parent,StringType,true), StructField(runtime,LongType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.PerformanceMeasurement))).getMeasuredUnit()))), numberOfCalls, invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -1), StructField(measuredUnit,StringType,true), StructField(numberOfCalls,LongType,false), StructField(parent,StringType,true), StructField(runtime,LongType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.PerformanceMeasurement))).getNumberOfCalls()), parent, static_invoke(UTF8String.fromString(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -1), StructField(measuredUnit,StringType,true), StructField(numberOfCalls,LongType,false), StructField(parent,StringType,true), StructField(runtime,LongType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.PerformanceMeasurement))).getParent()))), runtime, invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -1), StructField(measuredUnit,StringType,true), StructField(numberOfCalls,LongType,false), StructField(parent,StringType,true), StructField(runtime,LongType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.PerformanceMeasurement))).getRuntime())), invoke(knownnotnull(assertnotnull(input[0, com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiCalculationResult, true])).getPerformanceMeasurements()), None) AS performanceMeasurements#896617, mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -2), if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -2), StructField(demandChannelStreamKpiResults,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true)),true),true), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), StructField(plantId,StringType,true), StructField(productId,StringType,true), StructField(quantityKpiResults,ArrayType(StructType(StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true),StructField(quantity,DoubleType,false)),true),true), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.ProdPlantKpiCalculationResult)))) null else named_struct(demandChannelStreamKpiResults, mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -3), if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -3), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.DemandChannelStreamKpiResult)))) null else named_struct(demandChannel, static_invoke(UTF8String.fromString(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -3), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.DemandChannelStreamKpiResult))).getDemandChannel()))), demandStream, static_invoke(UTF8String.fromString(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -3), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.DemandChannelStreamKpiResult))).getDemandStream()))), kpiResults, mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -4), if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -4), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult)))) null else named_struct(datetime, static_invoke(DateTimeUtils.fromJavaTimestamp(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -4), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult))).getDatetime()))), label, static_invoke(UTF8String.fromString(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -4), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult))).getLabel()))), value, invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -4), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult))).getValue())), invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -3), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.DemandChannelStreamKpiResult))).getKpiResults()), None)), invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -2), StructField(demandChannelStreamKpiResults,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true)),true),true), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), StructField(plantId,StringType,true), StructField(productId,StringType,true), StructField(quantityKpiResults,ArrayType(StructType(StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true),StructField(quantity,DoubleType,false)),true),true), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.ProdPlantKpiCalculationResult))).getDemandChannelStreamKpiResults()), None), kpiResults, mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -5), if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -5), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult)))) null else named_struct(datetime, static_invoke(DateTimeUtils.fromJavaTimestamp(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -5), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult))).getDatetime()))), label, static_invoke(UTF8String.fromString(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -5), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult))).getLabel()))), value, invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -5), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult))).getValue())), invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -2), StructField(demandChannelStreamKpiResults,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true)),true),true), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), StructField(plantId,StringType,true), StructField(productId,StringType,true), StructField(quantityKpiResults,ArrayType(StructType(StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true),StructField(quantity,DoubleType,false)),true),true), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.ProdPlantKpiCalculationResult))).getKpiResults()), None), plantId, static_invoke(UTF8String.fromString(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -2), StructField(demandChannelStreamKpiResults,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true)),true),true), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), StructField(plantId,StringType,true), StructField(productId,StringType,true), StructField(quantityKpiResults,ArrayType(StructType(StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true),StructField(quantity,DoubleType,false)),true),true), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.ProdPlantKpiCalculationResult))).getPlantId()))), productId, static_invoke(UTF8String.fromString(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -2), StructField(demandChannelStreamKpiResults,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true)),true),true), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), StructField(plantId,StringType,true), StructField(productId,StringType,true), StructField(quantityKpiResults,ArrayType(StructType(StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true),StructField(quantity,DoubleType,false)),true),true), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.ProdPlantKpiCalculationResult))).getProductId()))), quantityKpiResults, mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -6), if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -6), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), StructField(quantity,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.QuantityKpiResult)))) null else named_struct(kpiResults, mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -7), if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -7), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult)))) null else named_struct(datetime, static_invoke(DateTimeUtils.fromJavaTimestamp(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -7), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult))).getDatetime()))), label, static_invoke(UTF8String.fromString(invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -7), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult))).getLabel()))), value, invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -7), StructField(datetime,TimestampType,true), StructField(label,StringType,true), StructField(value,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiResult))).getValue())), invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -6), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), StructField(quantity,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.QuantityKpiResult))).getKpiResults()), None), quantity, invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -6), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), StructField(quantity,DoubleType,false), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.QuantityKpiResult))).getQuantity())), invoke(knownnotnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -2), StructField(demandChannelStreamKpiResults,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true)),true),true), StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true), StructField(plantId,StringType,true), StructField(productId,StringType,true), StructField(quantityKpiResults,ArrayType(StructType(StructField(kpiResults,ArrayType(StructType(StructField(datetime,TimestampType,true),StructField(label,StringType,true),StructField(value,DoubleType,false)),true),true),StructField(quantity,DoubleType,false)),true),true), ObjectType(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.ProdPlantKpiCalculationResult))).getQuantityKpiResults()), None)), invoke(knownnotnull(assertnotnull(input[0, com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.KpiCalculationResult, true])).getProdPlantResults()), None) AS prodPlantResults#896618]"];
}
146 [id="node146" labelType="html" label="<br><b>Scan</b><br><br>" tooltip="Scan[obj#896614]"];
147 [id="node147" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 0 ms<br>time to build: 0 ms<br>time to collect: 0 ms<br>number of output rows: 0<br>data size: 0.0 B" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(coalesce(input[2, string, true], ), isnull(input[2, string, true]), coalesce(input[3, string, true], ), isnull(input[3, string, true])),false), [plan_id=1392061]"];
subgraph cluster148 {
isCluster="true";
id="cluster148";
label="WholeStageCodegen (4)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (4)";
149 [id="node149" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 0 ms<br>peak memory: 0.0 B<br>number of output rows: 0<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[plant#815744, shardId#815740, qty#815747, worklistShardItemId#815741L, product#815743], functions=[])"];
}
150 [id="node150" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(plant#815744, shardId#815740, qty#815747, worklistShardItemId#815741L, product#815743, 37), ENSURE_REQUIREMENTS, [plan_id=1392057]"];
subgraph cluster151 {
isCluster="true";
id="cluster151";
label="WholeStageCodegen (3)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (3)";
152 [id="node152" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 0 ms<br>peak memory: 0.0 B<br>number of output rows: 0<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[plant#815744, shardId#815740, knownfloatingpointnormalized(normalizenanandzero(qty#815747)) AS qty#815747, worklistShardItemId#815741L, product#815743], functions=[])"];
153 [id="node153" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#815740, worklistShardItemId#815741L, product#815743, plant#815744, qty#815747]"];
154 [id="node154" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter isNewlyCalculated#894118: boolean"];
}
155 [id="node155" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [isNewlyCalculated#894118, plant#815744, product#815743, qty#815747, shardId#815740, worklistShardItemId#815741L], [isNewlyCalculated#894118]"];
156 [id="node156" labelType="html" label="<br><b>Union</b><br><br>" tooltip="Union"];
subgraph cluster157 {
isCluster="true";
id="cluster157";
label="WholeStageCodegen (5)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (5)";
158 [id="node158" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#815740, worklistShardItemId#815741L, version#815742, product#815743, plant#815744, qty#815747, null AS demandChannel#894115, null AS demandStream#894116, [] AS kpis#894150, true AS isNewlyCalculated#894118]"];
159 [id="node159" labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 0<br>spill size: 0.0 B" tooltip="SortMergeJoin [coalesce(shardId#815740, ), isnull(shardId#815740), coalesce(worklistShardItemId#815741L, 0), isnull(worklistShardItemId#815741L), coalesce(version#815742, 0), isnull(version#815742), coalesce(product#815743, ), isnull(product#815743), coalesce(plant#815744, ), isnull(plant#815744), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#815747, 0.0))), isnull(qty#815747)], [coalesce(shardId#894107, ), isnull(shardId#894107), coalesce(worklistShardItemId#894108L, 0), isnull(worklistShardItemId#894108L), coalesce(version#894109, 0), isnull(version#894109), coalesce(product#894110, ), isnull(product#894110), coalesce(plant#894111, ), isnull(plant#894111), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#893882, 0.0))), isnull(qty#893882)], LeftAnti"];
}
subgraph cluster160 {
isCluster="true";
id="cluster160";
label="WholeStageCodegen (1)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (1)";
161 [id="node161" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [coalesce(shardId#815740, ) ASC NULLS FIRST, isnull(shardId#815740) ASC NULLS FIRST, coalesce(worklistShardItemId#815741L, 0) ASC NULLS FIRST, isnull(worklistShardItemId#815741L) ASC NULLS FIRST, coalesce(version#815742, 0) ASC NULLS FIRST, isnull(version#815742) ASC NULLS FIRST, coalesce(product#815743, ) ASC NULLS FIRST, isnull(product#815743) ASC NULLS FIRST, coalesce(plant#815744, ) ASC NULLS FIRST, isnull(plant#815744) ASC NULLS FIRST, knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#815747, 0.0))) ASC NULLS FIRST, isnull(qty#815747) ASC NULLS FIRST], false, 0"];
}
162 [id="node162" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(coalesce(shardId#815740, ), isnull(shardId#815740), coalesce(worklistShardItemId#815741L, 0), isnull(worklistShardItemId#815741L), coalesce(version#815742, 0), isnull(version#815742), coalesce(product#815743, ), isnull(product#815743), coalesce(plant#815744, ), isnull(plant#815744), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#815747, 0.0))), isnull(qty#815747), 37), ENSURE_REQUIREMENTS, [plan_id=1391250]"];
163 [id="node163" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#815740, worklistShardItemId#815741L, version#815742, product#815743, plant#815744, qty#815747]"];
164 [id="node164" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#815743, plant#815744, 37), REPARTITION_BY_NUM, [plan_id=1391020]"];
subgraph cluster165 {
isCluster="true";
id="cluster165";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
166 [id="node166" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#815740,worklistShardItemId#815741L,version#815742,product#815743,plant#815744,periodStart#815745,periodEnd#815746,qty#815747]"];
}
subgraph cluster167 {
isCluster="true";
id="cluster167";
label="WholeStageCodegen (4)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (4)";
168 [id="node168" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [coalesce(shardId#894107, ) ASC NULLS FIRST, isnull(shardId#894107) ASC NULLS FIRST, coalesce(worklistShardItemId#894108L, 0) ASC NULLS FIRST, isnull(worklistShardItemId#894108L) ASC NULLS FIRST, coalesce(version#894109, 0) ASC NULLS FIRST, isnull(version#894109) ASC NULLS FIRST, coalesce(product#894110, ) ASC NULLS FIRST, isnull(product#894110) ASC NULLS FIRST, coalesce(plant#894111, ) ASC NULLS FIRST, isnull(plant#894111) ASC NULLS FIRST, knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#893882, 0.0))) ASC NULLS FIRST, isnull(qty#893882) ASC NULLS FIRST], false, 0"];
}
169 [id="node169" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(coalesce(shardId#894107, ), isnull(shardId#894107), coalesce(worklistShardItemId#894108L, 0), isnull(worklistShardItemId#894108L), coalesce(version#894109, 0), isnull(version#894109), coalesce(product#894110, ), isnull(product#894110), coalesce(plant#894111, ), isnull(plant#894111), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#893882, 0.0))), isnull(qty#893882), 37), ENSURE_REQUIREMENTS, [plan_id=1391270]"];
170 [id="node170" labelType="html" label="<br><b>Union</b><br><br>" tooltip="Union"];
171 [id="node171" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#894107, worklistShardItemId#894108L, version#894109, product#894110, plant#894111, qty#893882]"];
subgraph cluster172 {
isCluster="true";
id="cluster172";
label="WholeStageCodegen (7)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (7)";
173 [id="node173" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#815740, worklistShardItemId#815741L, version#815742, product#815743, plant#815744, cachedQty#893880 AS qty#893882, demandChannel#893875, demandStream#893876, cachedKpis#893881 AS kpis#893883]"];
174 [id="node174" labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 0<br>spill size: 0.0 B" tooltip="SortMergeJoin [worklistShardItemId#815741L, shardId#815740], [cachedWorklistShardItemId#893879L, cachedShardId#893878], Inner"];
}
subgraph cluster175 {
isCluster="true";
id="cluster175";
label="WholeStageCodegen (4)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (4)";
176 [id="node176" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [worklistShardItemId#815741L ASC NULLS FIRST, shardId#815740 ASC NULLS FIRST], false, 0"];
}
177 [id="node177" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(worklistShardItemId#815741L, shardId#815740, 37), ENSURE_REQUIREMENTS, [plan_id=1391138]"];
subgraph cluster178 {
isCluster="true";
id="cluster178";
label="WholeStageCodegen (3)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (3)";
179 [id="node179" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 0 ms<br>peak memory: 0.0 B<br>number of output rows: 0<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[plant#815744, shardId#815740, version#815742, worklistShardItemId#815741L, product#815743], functions=[])"];
}
180 [id="node180" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(plant#815744, shardId#815740, version#815742, worklistShardItemId#815741L, product#815743, 37), ENSURE_REQUIREMENTS, [plan_id=1391134]"];
subgraph cluster181 {
isCluster="true";
id="cluster181";
label="WholeStageCodegen (2)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (2)";
182 [id="node182" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 0 ms<br>peak memory: 0.0 B<br>number of output rows: 0<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[plant#815744, shardId#815740, version#815742, worklistShardItemId#815741L, product#815743], functions=[])"];
183 [id="node183" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#815740, worklistShardItemId#815741L, version#815742, product#815743, plant#815744]"];
184 [id="node184" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#815741L, shardId#815740], [cachedWorklistShardItemId#893869L, cachedShardId#893868], Inner, BuildLeft, ((qty#815747 = cachedQty#893870) OR isnull(qty#815747)), false"];
192 [id="node192" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#893862 AS cachedShardId#893868, worklistShardItemId#893863L AS cachedWorklistShardItemId#893869L, qty#893864 AS cachedQty#893870]"];
193 [id="node193" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#893863L) AND isnotnull(shardId#893862))"];
194 [id="node194" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#893862,worklistShardItemId#893863L,qty#893864,demandChannel#893865,demandStream#893866,kpis#893867]"];
}
185 [id="node185" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 0 ms<br>time to build: 0 ms<br>time to collect: 0 ms<br>number of output rows: 0<br>data size: 0.0 B" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(input[1, bigint, false], input[0, string, false]),false), [plan_id=1391128]"];
subgraph cluster186 {
isCluster="true";
id="cluster186";
label="WholeStageCodegen (1)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (1)";
187 [id="node187" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#815741L) AND isnotnull(shardId#815740))"];
}
188 [id="node188" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#815740, worklistShardItemId#815741L, version#815742, product#815743, plant#815744, qty#815747], [isnotnull(worklistShardItemId#815741L), isnotnull(shardId#815740)]"];
189 [id="node189" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#815743, plant#815744, 37), REPARTITION_BY_NUM, [plan_id=1391020]"];
subgraph cluster190 {
isCluster="true";
id="cluster190";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
191 [id="node191" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#815740,worklistShardItemId#815741L,version#815742,product#815743,plant#815744,periodStart#815745,periodEnd#815746,qty#815747]"];
}
subgraph cluster195 {
isCluster="true";
id="cluster195";
label="WholeStageCodegen (6)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (6)";
196 [id="node196" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [cachedWorklistShardItemId#893879L ASC NULLS FIRST, cachedShardId#893878 ASC NULLS FIRST], false, 0"];
}
197 [id="node197" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(cachedWorklistShardItemId#893879L, cachedShardId#893878, 37), ENSURE_REQUIREMENTS, [plan_id=1391144]"];
subgraph cluster198 {
isCluster="true";
id="cluster198";
label="WholeStageCodegen (5)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (5)";
199 [id="node199" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#893872 AS cachedShardId#893878, worklistShardItemId#893873L AS cachedWorklistShardItemId#893879L, qty#893874 AS cachedQty#893880, demandChannel#893875, demandStream#893876, kpis#893877 AS cachedKpis#893881]"];
200 [id="node200" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#893873L) AND isnotnull(shardId#893872))"];
201 [id="node201" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#893872,worklistShardItemId#893873L,qty#893874,demandChannel#893875,demandStream#893876,kpis#893877]"];
}
subgraph cluster202 {
isCluster="true";
id="cluster202";
label="WholeStageCodegen (3)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (3)";
203 [id="node203" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#894089, worklistShardItemId#894090L, version#894091, product#894092, plant#894093, qty#894096]"];
204 [id="node204" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#894090L, shardId#894089], [cachedWorklistShardItemId#894104L, cachedShardId#894103], Inner, BuildLeft, false"];
212 [id="node212" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#894097 AS cachedShardId#894103, worklistShardItemId#894098L AS cachedWorklistShardItemId#894104L]"];
213 [id="node213" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#894098L) AND isnotnull(shardId#894097))"];
214 [id="node214" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#894097,worklistShardItemId#894098L,qty#894099,demandChannel#894100,demandStream#894101,kpis#894102]"];
}
205 [id="node205" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 0 ms<br>time to build: 0 ms<br>time to collect: 0 ms<br>number of output rows: 0<br>data size: 0.0 B" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(input[1, bigint, false], input[0, string, false]),false), [plan_id=1391264]"];
subgraph cluster206 {
isCluster="true";
id="cluster206";
label="WholeStageCodegen (2)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (2)";
207 [id="node207" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((isnull(qty#894096) AND isnotnull(worklistShardItemId#894090L)) AND isnotnull(shardId#894089))"];
}
208 [id="node208" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#894089, worklistShardItemId#894090L, version#894091, product#894092, plant#894093, qty#894096], [isnull(qty#894096), isnotnull(worklistShardItemId#894090L), isnotnull(shardId#894089)]"];
209 [id="node209" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#815743, plant#815744, 37), REPARTITION_BY_NUM, [plan_id=1391020]"];
subgraph cluster210 {
isCluster="true";
id="cluster210";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
211 [id="node211" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#815740,worklistShardItemId#815741L,version#815742,product#815743,plant#815744,periodStart#815745,periodEnd#815746,qty#815747]"];
}
subgraph cluster215 {
isCluster="true";
id="cluster215";
label="WholeStageCodegen (6)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (6)";
216 [id="node216" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#894120, worklistShardItemId#894121L, version#894122, product#894123, plant#894124, qty#894148, demandChannel#894141, demandStream#894142, kpis#894149, false AS isNewlyCalculated#894119]"];
}
217 [id="node217" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [demandChannel#894141, demandStream#894142, kpis#894149, plant#894124, product#894123, qty#894148, shardId#894120, version#894122, worklistShardItemId#894121L]"];
subgraph cluster218 {
isCluster="true";
id="cluster218";
label="WholeStageCodegen (7)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (7)";
219 [id="node219" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#815740, worklistShardItemId#815741L, version#815742, product#815743, plant#815744, cachedQty#893880 AS qty#893882, demandChannel#893875, demandStream#893876, cachedKpis#893881 AS kpis#893883]"];
220 [id="node220" labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 0<br>spill size: 0.0 B" tooltip="SortMergeJoin [worklistShardItemId#815741L, shardId#815740], [cachedWorklistShardItemId#893879L, cachedShardId#893878], Inner"];
}
subgraph cluster221 {
isCluster="true";
id="cluster221";
label="WholeStageCodegen (4)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (4)";
222 [id="node222" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [worklistShardItemId#815741L ASC NULLS FIRST, shardId#815740 ASC NULLS FIRST], false, 0"];
}
223 [id="node223" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(worklistShardItemId#815741L, shardId#815740, 37), ENSURE_REQUIREMENTS, [plan_id=1391138]"];
subgraph cluster224 {
isCluster="true";
id="cluster224";
label="WholeStageCodegen (3)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (3)";
225 [id="node225" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 0 ms<br>peak memory: 0.0 B<br>number of output rows: 0<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[plant#815744, shardId#815740, version#815742, worklistShardItemId#815741L, product#815743], functions=[])"];
}
226 [id="node226" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(plant#815744, shardId#815740, version#815742, worklistShardItemId#815741L, product#815743, 37), ENSURE_REQUIREMENTS, [plan_id=1391134]"];
subgraph cluster227 {
isCluster="true";
id="cluster227";
label="WholeStageCodegen (2)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (2)";
228 [id="node228" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 0 ms<br>peak memory: 0.0 B<br>number of output rows: 0<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[plant#815744, shardId#815740, version#815742, worklistShardItemId#815741L, product#815743], functions=[])"];
229 [id="node229" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#815740, worklistShardItemId#815741L, version#815742, product#815743, plant#815744]"];
230 [id="node230" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#815741L, shardId#815740], [cachedWorklistShardItemId#893869L, cachedShardId#893868], Inner, BuildLeft, ((qty#815747 = cachedQty#893870) OR isnull(qty#815747)), false"];
238 [id="node238" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#893862 AS cachedShardId#893868, worklistShardItemId#893863L AS cachedWorklistShardItemId#893869L, qty#893864 AS cachedQty#893870]"];
239 [id="node239" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#893863L) AND isnotnull(shardId#893862))"];
240 [id="node240" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#893862,worklistShardItemId#893863L,qty#893864,demandChannel#893865,demandStream#893866,kpis#893867]"];
}
231 [id="node231" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 0 ms<br>time to build: 0 ms<br>time to collect: 0 ms<br>number of output rows: 0<br>data size: 0.0 B" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(input[1, bigint, false], input[0, string, false]),false), [plan_id=1391128]"];
subgraph cluster232 {
isCluster="true";
id="cluster232";
label="WholeStageCodegen (1)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (1)";
233 [id="node233" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#815741L) AND isnotnull(shardId#815740))"];
}
234 [id="node234" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#815740, worklistShardItemId#815741L, version#815742, product#815743, plant#815744, qty#815747], [isnotnull(worklistShardItemId#815741L), isnotnull(shardId#815740)]"];
235 [id="node235" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#815743, plant#815744, 37), REPARTITION_BY_NUM, [plan_id=1391020]"];
subgraph cluster236 {
isCluster="true";
id="cluster236";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
237 [id="node237" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#815740,worklistShardItemId#815741L,version#815742,product#815743,plant#815744,periodStart#815745,periodEnd#815746,qty#815747]"];
}
subgraph cluster241 {
isCluster="true";
id="cluster241";
label="WholeStageCodegen (6)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (6)";
242 [id="node242" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [cachedWorklistShardItemId#893879L ASC NULLS FIRST, cachedShardId#893878 ASC NULLS FIRST], false, 0"];
}
243 [id="node243" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(cachedWorklistShardItemId#893879L, cachedShardId#893878, 37), ENSURE_REQUIREMENTS, [plan_id=1391144]"];
subgraph cluster244 {
isCluster="true";
id="cluster244";
label="WholeStageCodegen (5)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (5)";
245 [id="node245" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#893872 AS cachedShardId#893878, worklistShardItemId#893873L AS cachedWorklistShardItemId#893879L, qty#893874 AS cachedQty#893880, demandChannel#893875, demandStream#893876, kpis#893877 AS cachedKpis#893881]"];
246 [id="node246" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#893873L) AND isnotnull(shardId#893872))"];
247 [id="node247" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#893872,worklistShardItemId#893873L,qty#893874,demandChannel#893875,demandStream#893876,kpis#893877]"];
}
248 [id="node248" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 0 ms<br>time to build: 1 ms<br>time to collect: 639 ms<br>number of output rows: 1<br>data size: 2.0 MiB" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(input[0, string, true], input[1, bigint, true]),false), [plan_id=1392229]"];
subgraph cluster249 {
isCluster="true";
id="cluster249";
label="WholeStageCodegen (4)\n \nduration: total (min, med, max (stageId: taskId))\n41 ms (0 ms, 0 ms, 5 ms (stage 97878.0: task 308608))";
tooltip="WholeStageCodegen (4)";
250 [id="node250" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build total (min, med, max (stageId: taskId))<br>17 ms (0 ms, 0 ms, 4 ms (stage 97878.0: task 308605))<br>peak memory total (min, med, max (stageId: taskId))<br>11.3 MiB (256.0 KiB, 256.0 KiB, 2.3 MiB (stage 97878.0: task 308601))<br>number of output rows: 1<br>number of sort fallback tasks: 0<br>avg hash probes per key: 1" tooltip="HashAggregate(keys=[shardId#897581, worklistShardItemId#897582L], functions=[max(version#897583)])"];
}
251 [id="node251" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 2<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 2<br>local bytes read: 101.0 B<br>merged fetch fallback count: 0<br>local blocks read: 1<br>remote merged chunks fetched: 0<br>remote blocks read: 1<br>data size total (min, med, max (stageId: taskId))<br>96.0 B (48.0 B, 48.0 B, 48.0 B (stage 97877.0: task 308542))<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time total (min, med, max (stageId: taskId))<br>1 ms (0 ms, 0 ms, 0 ms (stage 97877.0: task 308542))<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 101.0 B<br>number of partitions: 37<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>202.0 B (101.0 B, 101.0 B, 101.0 B (stage 97877.0: task 308542))" tooltip="Exchange hashpartitioning(shardId#897581, worklistShardItemId#897582L, 37), ENSURE_REQUIREMENTS, [plan_id=1392225]"];
subgraph cluster252 {
isCluster="true";
id="cluster252";
label="WholeStageCodegen (3)\n \nduration: total (min, med, max (stageId: taskId))\n1.9 s (0 ms, 1 ms, 214 ms (stage 97877.0: task 308530))";
tooltip="WholeStageCodegen (3)";
253 [id="node253" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build total (min, med, max (stageId: taskId))<br>25 ms (0 ms, 0 ms, 3 ms (stage 97877.0: task 308530))<br>peak memory total (min, med, max (stageId: taskId))<br>18.5 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 97877.0: task 308541))<br>number of output rows: 2<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[shardId#897581, worklistShardItemId#897582L], functions=[partial_max(version#897583)])"];
254 [id="node254" labelType="html" label="<b>Filter</b><br><br>number of output rows: 2" tooltip="Filter (isnotnull(shardId#897581) AND isnotnull(worklistShardItemId#897582L))"];
}
255 [id="node255" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 2" tooltip="InMemoryTableScan [shardId#897581, worklistShardItemId#897582L, version#897583], [isnotnull(shardId#897581), isnotnull(worklistShardItemId#897582L)]"];
256 [id="node256" labelType="html" label="<br><b>Union</b><br><br>" tooltip="Union"];
subgraph cluster257 {
isCluster="true";
id="cluster257";
label="WholeStageCodegen (5)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (5)";
258 [id="node258" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#815740, worklistShardItemId#815741L, version#815742, product#815743, plant#815744, qty#815747, null AS demandChannel#894115, null AS demandStream#894116, [] AS kpis#894150, true AS isNewlyCalculated#894118]"];
259 [id="node259" labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 0<br>spill size: 0.0 B" tooltip="SortMergeJoin [coalesce(shardId#815740, ), isnull(shardId#815740), coalesce(worklistShardItemId#815741L, 0), isnull(worklistShardItemId#815741L), coalesce(version#815742, 0), isnull(version#815742), coalesce(product#815743, ), isnull(product#815743), coalesce(plant#815744, ), isnull(plant#815744), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#815747, 0.0))), isnull(qty#815747)], [coalesce(shardId#894107, ), isnull(shardId#894107), coalesce(worklistShardItemId#894108L, 0), isnull(worklistShardItemId#894108L), coalesce(version#894109, 0), isnull(version#894109), coalesce(product#894110, ), isnull(product#894110), coalesce(plant#894111, ), isnull(plant#894111), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#893882, 0.0))), isnull(qty#893882)], LeftAnti"];
}
subgraph cluster260 {
isCluster="true";
id="cluster260";
label="WholeStageCodegen (1)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (1)";
261 [id="node261" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [coalesce(shardId#815740, ) ASC NULLS FIRST, isnull(shardId#815740) ASC NULLS FIRST, coalesce(worklistShardItemId#815741L, 0) ASC NULLS FIRST, isnull(worklistShardItemId#815741L) ASC NULLS FIRST, coalesce(version#815742, 0) ASC NULLS FIRST, isnull(version#815742) ASC NULLS FIRST, coalesce(product#815743, ) ASC NULLS FIRST, isnull(product#815743) ASC NULLS FIRST, coalesce(plant#815744, ) ASC NULLS FIRST, isnull(plant#815744) ASC NULLS FIRST, knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#815747, 0.0))) ASC NULLS FIRST, isnull(qty#815747) ASC NULLS FIRST], false, 0"];
}
262 [id="node262" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(coalesce(shardId#815740, ), isnull(shardId#815740), coalesce(worklistShardItemId#815741L, 0), isnull(worklistShardItemId#815741L), coalesce(version#815742, 0), isnull(version#815742), coalesce(product#815743, ), isnull(product#815743), coalesce(plant#815744, ), isnull(plant#815744), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#815747, 0.0))), isnull(qty#815747), 37), ENSURE_REQUIREMENTS, [plan_id=1391250]"];
263 [id="node263" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#815740, worklistShardItemId#815741L, version#815742, product#815743, plant#815744, qty#815747]"];
264 [id="node264" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#815743, plant#815744, 37), REPARTITION_BY_NUM, [plan_id=1391020]"];
subgraph cluster265 {
isCluster="true";
id="cluster265";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
266 [id="node266" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#815740,worklistShardItemId#815741L,version#815742,product#815743,plant#815744,periodStart#815745,periodEnd#815746,qty#815747]"];
}
subgraph cluster267 {
isCluster="true";
id="cluster267";
label="WholeStageCodegen (4)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (4)";
268 [id="node268" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [coalesce(shardId#894107, ) ASC NULLS FIRST, isnull(shardId#894107) ASC NULLS FIRST, coalesce(worklistShardItemId#894108L, 0) ASC NULLS FIRST, isnull(worklistShardItemId#894108L) ASC NULLS FIRST, coalesce(version#894109, 0) ASC NULLS FIRST, isnull(version#894109) ASC NULLS FIRST, coalesce(product#894110, ) ASC NULLS FIRST, isnull(product#894110) ASC NULLS FIRST, coalesce(plant#894111, ) ASC NULLS FIRST, isnull(plant#894111) ASC NULLS FIRST, knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#893882, 0.0))) ASC NULLS FIRST, isnull(qty#893882) ASC NULLS FIRST], false, 0"];
}
269 [id="node269" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(coalesce(shardId#894107, ), isnull(shardId#894107), coalesce(worklistShardItemId#894108L, 0), isnull(worklistShardItemId#894108L), coalesce(version#894109, 0), isnull(version#894109), coalesce(product#894110, ), isnull(product#894110), coalesce(plant#894111, ), isnull(plant#894111), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#893882, 0.0))), isnull(qty#893882), 37), ENSURE_REQUIREMENTS, [plan_id=1391270]"];
270 [id="node270" labelType="html" label="<br><b>Union</b><br><br>" tooltip="Union"];
271 [id="node271" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#894107, worklistShardItemId#894108L, version#894109, product#894110, plant#894111, qty#893882]"];
subgraph cluster272 {
isCluster="true";
id="cluster272";
label="WholeStageCodegen (7)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (7)";
273 [id="node273" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#815740, worklistShardItemId#815741L, version#815742, product#815743, plant#815744, cachedQty#893880 AS qty#893882, demandChannel#893875, demandStream#893876, cachedKpis#893881 AS kpis#893883]"];
274 [id="node274" labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 0<br>spill size: 0.0 B" tooltip="SortMergeJoin [worklistShardItemId#815741L, shardId#815740], [cachedWorklistShardItemId#893879L, cachedShardId#893878], Inner"];
}
subgraph cluster275 {
isCluster="true";
id="cluster275";
label="WholeStageCodegen (4)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (4)";
276 [id="node276" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [worklistShardItemId#815741L ASC NULLS FIRST, shardId#815740 ASC NULLS FIRST], false, 0"];
}
277 [id="node277" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(worklistShardItemId#815741L, shardId#815740, 37), ENSURE_REQUIREMENTS, [plan_id=1391138]"];
subgraph cluster278 {
isCluster="true";
id="cluster278";
label="WholeStageCodegen (3)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (3)";
279 [id="node279" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 0 ms<br>peak memory: 0.0 B<br>number of output rows: 0<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[plant#815744, shardId#815740, version#815742, worklistShardItemId#815741L, product#815743], functions=[])"];
}
280 [id="node280" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(plant#815744, shardId#815740, version#815742, worklistShardItemId#815741L, product#815743, 37), ENSURE_REQUIREMENTS, [plan_id=1391134]"];
subgraph cluster281 {
isCluster="true";
id="cluster281";
label="WholeStageCodegen (2)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (2)";
282 [id="node282" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 0 ms<br>peak memory: 0.0 B<br>number of output rows: 0<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[plant#815744, shardId#815740, version#815742, worklistShardItemId#815741L, product#815743], functions=[])"];
283 [id="node283" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#815740, worklistShardItemId#815741L, version#815742, product#815743, plant#815744]"];
284 [id="node284" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#815741L, shardId#815740], [cachedWorklistShardItemId#893869L, cachedShardId#893868], Inner, BuildLeft, ((qty#815747 = cachedQty#893870) OR isnull(qty#815747)), false"];
292 [id="node292" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#893862 AS cachedShardId#893868, worklistShardItemId#893863L AS cachedWorklistShardItemId#893869L, qty#893864 AS cachedQty#893870]"];
293 [id="node293" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#893863L) AND isnotnull(shardId#893862))"];
294 [id="node294" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#893862,worklistShardItemId#893863L,qty#893864,demandChannel#893865,demandStream#893866,kpis#893867]"];
}
285 [id="node285" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 0 ms<br>time to build: 0 ms<br>time to collect: 0 ms<br>number of output rows: 0<br>data size: 0.0 B" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(input[1, bigint, false], input[0, string, false]),false), [plan_id=1391128]"];
subgraph cluster286 {
isCluster="true";
id="cluster286";
label="WholeStageCodegen (1)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (1)";
287 [id="node287" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#815741L) AND isnotnull(shardId#815740))"];
}
288 [id="node288" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#815740, worklistShardItemId#815741L, version#815742, product#815743, plant#815744, qty#815747], [isnotnull(worklistShardItemId#815741L), isnotnull(shardId#815740)]"];
289 [id="node289" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#815743, plant#815744, 37), REPARTITION_BY_NUM, [plan_id=1391020]"];
subgraph cluster290 {
isCluster="true";
id="cluster290";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
291 [id="node291" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#815740,worklistShardItemId#815741L,version#815742,product#815743,plant#815744,periodStart#815745,periodEnd#815746,qty#815747]"];
}
subgraph cluster295 {
isCluster="true";
id="cluster295";
label="WholeStageCodegen (6)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (6)";
296 [id="node296" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [cachedWorklistShardItemId#893879L ASC NULLS FIRST, cachedShardId#893878 ASC NULLS FIRST], false, 0"];
}
297 [id="node297" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(cachedWorklistShardItemId#893879L, cachedShardId#893878, 37), ENSURE_REQUIREMENTS, [plan_id=1391144]"];
subgraph cluster298 {
isCluster="true";
id="cluster298";
label="WholeStageCodegen (5)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (5)";
299 [id="node299" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#893872 AS cachedShardId#893878, worklistShardItemId#893873L AS cachedWorklistShardItemId#893879L, qty#893874 AS cachedQty#893880, demandChannel#893875, demandStream#893876, kpis#893877 AS cachedKpis#893881]"];
300 [id="node300" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#893873L) AND isnotnull(shardId#893872))"];
301 [id="node301" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#893872,worklistShardItemId#893873L,qty#893874,demandChannel#893875,demandStream#893876,kpis#893877]"];
}
subgraph cluster302 {
isCluster="true";
id="cluster302";
label="WholeStageCodegen (3)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (3)";
303 [id="node303" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#894089, worklistShardItemId#894090L, version#894091, product#894092, plant#894093, qty#894096]"];
304 [id="node304" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#894090L, shardId#894089], [cachedWorklistShardItemId#894104L, cachedShardId#894103], Inner, BuildLeft, false"];
312 [id="node312" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#894097 AS cachedShardId#894103, worklistShardItemId#894098L AS cachedWorklistShardItemId#894104L]"];
313 [id="node313" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#894098L) AND isnotnull(shardId#894097))"];
314 [id="node314" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#894097,worklistShardItemId#894098L,qty#894099,demandChannel#894100,demandStream#894101,kpis#894102]"];
}
305 [id="node305" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 0 ms<br>time to build: 0 ms<br>time to collect: 0 ms<br>number of output rows: 0<br>data size: 0.0 B" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(input[1, bigint, false], input[0, string, false]),false), [plan_id=1391264]"];
subgraph cluster306 {
isCluster="true";
id="cluster306";
label="WholeStageCodegen (2)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (2)";
307 [id="node307" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((isnull(qty#894096) AND isnotnull(worklistShardItemId#894090L)) AND isnotnull(shardId#894089))"];
}
308 [id="node308" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#894089, worklistShardItemId#894090L, version#894091, product#894092, plant#894093, qty#894096], [isnull(qty#894096), isnotnull(worklistShardItemId#894090L), isnotnull(shardId#894089)]"];
309 [id="node309" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#815743, plant#815744, 37), REPARTITION_BY_NUM, [plan_id=1391020]"];
subgraph cluster310 {
isCluster="true";
id="cluster310";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
311 [id="node311" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#815740,worklistShardItemId#815741L,version#815742,product#815743,plant#815744,periodStart#815745,periodEnd#815746,qty#815747]"];
}
subgraph cluster315 {
isCluster="true";
id="cluster315";
label="WholeStageCodegen (6)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (6)";
316 [id="node316" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#894120, worklistShardItemId#894121L, version#894122, product#894123, plant#894124, qty#894148, demandChannel#894141, demandStream#894142, kpis#894149, false AS isNewlyCalculated#894119]"];
}
317 [id="node317" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [demandChannel#894141, demandStream#894142, kpis#894149, plant#894124, product#894123, qty#894148, shardId#894120, version#894122, worklistShardItemId#894121L]"];
subgraph cluster318 {
isCluster="true";
id="cluster318";
label="WholeStageCodegen (7)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (7)";
319 [id="node319" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#815740, worklistShardItemId#815741L, version#815742, product#815743, plant#815744, cachedQty#893880 AS qty#893882, demandChannel#893875, demandStream#893876, cachedKpis#893881 AS kpis#893883]"];
320 [id="node320" labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 0<br>spill size: 0.0 B" tooltip="SortMergeJoin [worklistShardItemId#815741L, shardId#815740], [cachedWorklistShardItemId#893879L, cachedShardId#893878], Inner"];
}
subgraph cluster321 {
isCluster="true";
id="cluster321";
label="WholeStageCodegen (4)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (4)";
322 [id="node322" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [worklistShardItemId#815741L ASC NULLS FIRST, shardId#815740 ASC NULLS FIRST], false, 0"];
}
323 [id="node323" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(worklistShardItemId#815741L, shardId#815740, 37), ENSURE_REQUIREMENTS, [plan_id=1391138]"];
subgraph cluster324 {
isCluster="true";
id="cluster324";
label="WholeStageCodegen (3)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (3)";
325 [id="node325" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 0 ms<br>peak memory: 0.0 B<br>number of output rows: 0<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[plant#815744, shardId#815740, version#815742, worklistShardItemId#815741L, product#815743], functions=[])"];
}
326 [id="node326" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(plant#815744, shardId#815740, version#815742, worklistShardItemId#815741L, product#815743, 37), ENSURE_REQUIREMENTS, [plan_id=1391134]"];
subgraph cluster327 {
isCluster="true";
id="cluster327";
label="WholeStageCodegen (2)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (2)";
328 [id="node328" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 0 ms<br>peak memory: 0.0 B<br>number of output rows: 0<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[plant#815744, shardId#815740, version#815742, worklistShardItemId#815741L, product#815743], functions=[])"];
329 [id="node329" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#815740, worklistShardItemId#815741L, version#815742, product#815743, plant#815744]"];
330 [id="node330" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#815741L, shardId#815740], [cachedWorklistShardItemId#893869L, cachedShardId#893868], Inner, BuildLeft, ((qty#815747 = cachedQty#893870) OR isnull(qty#815747)), false"];
338 [id="node338" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#893862 AS cachedShardId#893868, worklistShardItemId#893863L AS cachedWorklistShardItemId#893869L, qty#893864 AS cachedQty#893870]"];
339 [id="node339" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#893863L) AND isnotnull(shardId#893862))"];
340 [id="node340" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#893862,worklistShardItemId#893863L,qty#893864,demandChannel#893865,demandStream#893866,kpis#893867]"];
}
331 [id="node331" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 0 ms<br>time to build: 0 ms<br>time to collect: 0 ms<br>number of output rows: 0<br>data size: 0.0 B" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(input[1, bigint, false], input[0, string, false]),false), [plan_id=1391128]"];
subgraph cluster332 {
isCluster="true";
id="cluster332";
label="WholeStageCodegen (1)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (1)";
333 [id="node333" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#815741L) AND isnotnull(shardId#815740))"];
}
334 [id="node334" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#815740, worklistShardItemId#815741L, version#815742, product#815743, plant#815744, qty#815747], [isnotnull(worklistShardItemId#815741L), isnotnull(shardId#815740)]"];
335 [id="node335" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#815743, plant#815744, 37), REPARTITION_BY_NUM, [plan_id=1391020]"];
subgraph cluster336 {
isCluster="true";
id="cluster336";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
337 [id="node337" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#815740,worklistShardItemId#815741L,version#815742,product#815743,plant#815744,periodStart#815745,periodEnd#815746,qty#815747]"];
}
subgraph cluster341 {
isCluster="true";
id="cluster341";
label="WholeStageCodegen (6)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (6)";
342 [id="node342" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [cachedWorklistShardItemId#893879L ASC NULLS FIRST, cachedShardId#893878 ASC NULLS FIRST], false, 0"];
}
343 [id="node343" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(cachedWorklistShardItemId#893879L, cachedShardId#893878, 37), ENSURE_REQUIREMENTS, [plan_id=1391144]"];
subgraph cluster344 {
isCluster="true";
id="cluster344";
label="WholeStageCodegen (5)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (5)";
345 [id="node345" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#893872 AS cachedShardId#893878, worklistShardItemId#893873L AS cachedWorklistShardItemId#893879L, qty#893874 AS cachedQty#893880, demandChannel#893875, demandStream#893876, kpis#893877 AS cachedKpis#893881]"];
346 [id="node346" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#893873L) AND isnotnull(shardId#893872))"];
347 [id="node347" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#893872,worklistShardItemId#893873L,qty#893874,demandChannel#893875,demandStream#893876,kpis#893877]"];
}
1->0;
3->1;
4->3;
5->4;
7->5;
8->7;
9->8;
10->9;
12->10;
13->12;
15->13;
16->15;
17->16;
18->17;
20->18;
22->13;
23->22;
24->23;
25->24;
27->25;
28->27;
30->28;
31->30;
33->31;
34->33;
36->34;
37->36;
38->37;
39->38;
41->39;
42->41;
43->42;
45->43;
46->38;
47->46;
48->47;
50->28;
51->50;
53->51;
54->53;
55->54;
57->24;
58->57;
59->58;
61->59;
62->61;
63->62;
65->63;
66->58;
67->66;
68->67;
70->10;
71->70;
73->71;
74->73;
76->74;
77->76;
79->77;
80->79;
82->80;
83->82;
84->83;
85->84;
87->85;
88->87;
89->88;
91->89;
92->84;
93->92;
94->93;
96->74;
97->96;
99->97;
100->99;
101->100;
103->5;
104->103;
105->104;
107->105;
108->107;
109->108;
111->109;
112->111;
113->112;
114->113;
115->114;
116->115;
118->116;
119->118;
120->119;
121->120;
122->121;
123->114;
125->123;
126->125;
127->126;
128->127;
130->128;
131->130;
132->131;
133->132;
134->133;
135->114;
137->135;
138->137;
139->138;
140->139;
142->140;
143->142;
144->143;
145->144;
146->145;
147->113;
149->147;
150->149;
152->150;
153->152;
154->153;
155->154;
156->155;
158->156;
159->158;
161->159;
162->161;
163->162;
164->163;
166->164;
168->159;
169->168;
170->169;
171->170;
173->171;
174->173;
176->174;
177->176;
179->177;
180->179;
182->180;
183->182;
184->183;
185->184;
187->185;
188->187;
189->188;
191->189;
192->184;
193->192;
194->193;
196->174;
197->196;
199->197;
200->199;
201->200;
203->170;
204->203;
205->204;
207->205;
208->207;
209->208;
211->209;
212->204;
213->212;
214->213;
216->156;
217->216;
219->217;
220->219;
222->220;
223->222;
225->223;
226->225;
228->226;
229->228;
230->229;
231->230;
233->231;
234->233;
235->234;
237->235;
238->230;
239->238;
240->239;
242->220;
243->242;
245->243;
246->245;
247->246;
248->4;
250->248;
251->250;
253->251;
254->253;
255->254;
256->255;
258->256;
259->258;
261->259;
262->261;
263->262;
264->263;
266->264;
268->259;
269->268;
270->269;
271->270;
273->271;
274->273;
276->274;
277->276;
279->277;
280->279;
282->280;
283->282;
284->283;
285->284;
287->285;
288->287;
289->288;
291->289;
292->284;
293->292;
294->293;
296->274;
297->296;
299->297;
300->299;
301->300;
303->270;
304->303;
305->304;
307->305;
308->307;
309->308;
311->309;
312->304;
313->312;
314->313;
316->256;
317->316;
319->317;
320->319;
322->320;
323->322;
325->323;
326->325;
328->326;
329->328;
330->329;
331->330;
333->331;
334->333;
335->334;
337->335;
338->330;
339->338;
340->339;
342->320;
343->342;
345->343;
346->345;
347->346;
}