digraph G {
0 [id="node0" labelType="html" label="<b>CollectLimit</b><br><br>shuffle records written: 37<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 1<br>local bytes read: 1054.0 B<br>merged fetch fallback count: 0<br>local blocks read: 17<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>6 ms (0 ms, 0 ms, 0 ms (stage 101498.0: task 331418))<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>2.2 KiB (62.0 B, 62.0 B, 62.0 B (stage 101498.0: task 331394))" tooltip="CollectLimit 1"];
1 [id="node1" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 2,802" tooltip="InMemoryTableScan"];
subgraph cluster2 {
isCluster="true";
id="cluster2";
label="WholeStageCodegen (5)\n \nduration: total (min, med, max (stageId: taskId))\n1.3 s (0 ms, 0 ms, 468 ms (stage 101498.0: task 331413))";
tooltip="WholeStageCodegen (5)";
3 [id="node3" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#943631, worklistShardItemId#943632L, version#965679, qty#943638, demandChannel#960601, demandStream#960602, kpis#960636]"];
4 [id="node4" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 2,802" tooltip="BroadcastHashJoin [shardId#943631, worklistShardItemId#943632L], [shardId#965776, worklistShardItemId#965777L], 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))\n675 ms (0 ms, 0 ms, 77 ms (stage 101498.0: task 331322))";
tooltip="WholeStageCodegen (1)";
7 [id="node7" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#943631, worklistShardItemId#943632L, qty#943638, demandChannel#960601, demandStream#960602, kpis#960636]"];
8 [id="node8" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((NOT isNewlyCalculated#960604 AND isnotnull(shardId#943631)) AND isnotnull(worklistShardItemId#943632L))"];
}
9 [id="node9" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 434" tooltip="InMemoryTableScan [demandChannel#960601, demandStream#960602, isNewlyCalculated#960604, kpis#960636, qty#943638, shardId#943631, worklistShardItemId#943632L], [NOT isNewlyCalculated#960604, isnotnull(shardId#943631), isnotnull(worklistShardItemId#943632L)]"];
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#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, qty#943638, null AS demandChannel#960601, null AS demandStream#960602, [] AS kpis#960636, true AS isNewlyCalculated#960604]"];
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#943631, ), isnull(shardId#943631), coalesce(worklistShardItemId#943632L, 0), isnull(worklistShardItemId#943632L), coalesce(version#943633, 0), isnull(version#943633), coalesce(product#943634, ), isnull(product#943634), coalesce(plant#943635, ), isnull(plant#943635), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#943638, 0.0))), isnull(qty#943638)], [coalesce(shardId#960593, ), isnull(shardId#960593), coalesce(worklistShardItemId#960594L, 0), isnull(worklistShardItemId#960594L), coalesce(version#960595, 0), isnull(version#960595), coalesce(product#960596, ), isnull(product#960596), coalesce(plant#960597, ), isnull(plant#960597), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#960368, 0.0))), isnull(qty#960368)], 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#943631, ) ASC NULLS FIRST, isnull(shardId#943631) ASC NULLS FIRST, coalesce(worklistShardItemId#943632L, 0) ASC NULLS FIRST, isnull(worklistShardItemId#943632L) ASC NULLS FIRST, coalesce(version#943633, 0) ASC NULLS FIRST, isnull(version#943633) ASC NULLS FIRST, coalesce(product#943634, ) ASC NULLS FIRST, isnull(product#943634) ASC NULLS FIRST, coalesce(plant#943635, ) ASC NULLS FIRST, isnull(plant#943635) ASC NULLS FIRST, knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#943638, 0.0))) ASC NULLS FIRST, isnull(qty#943638) 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#943631, ), isnull(shardId#943631), coalesce(worklistShardItemId#943632L, 0), isnull(worklistShardItemId#943632L), coalesce(version#943633, 0), isnull(version#943633), coalesce(product#943634, ), isnull(product#943634), coalesce(plant#943635, ), isnull(plant#943635), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#943638, 0.0))), isnull(qty#943638), 37), ENSURE_REQUIREMENTS, [plan_id=1595416]"];
17 [id="node17" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, qty#943638]"];
18 [id="node18" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#943634, plant#943635, 37), REPARTITION_BY_NUM, [plan_id=1594958]"];
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#943631,worklistShardItemId#943632L,version#943633,product#943634,plant#943635,periodStart#943636,periodEnd#943637,qty#943638]"];
}
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#960593, ) ASC NULLS FIRST, isnull(shardId#960593) ASC NULLS FIRST, coalesce(worklistShardItemId#960594L, 0) ASC NULLS FIRST, isnull(worklistShardItemId#960594L) ASC NULLS FIRST, coalesce(version#960595, 0) ASC NULLS FIRST, isnull(version#960595) ASC NULLS FIRST, coalesce(product#960596, ) ASC NULLS FIRST, isnull(product#960596) ASC NULLS FIRST, coalesce(plant#960597, ) ASC NULLS FIRST, isnull(plant#960597) ASC NULLS FIRST, knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#960368, 0.0))) ASC NULLS FIRST, isnull(qty#960368) 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#960593, ), isnull(shardId#960593), coalesce(worklistShardItemId#960594L, 0), isnull(worklistShardItemId#960594L), coalesce(version#960595, 0), isnull(version#960595), coalesce(product#960596, ), isnull(product#960596), coalesce(plant#960597, ), isnull(plant#960597), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#960368, 0.0))), isnull(qty#960368), 37), ENSURE_REQUIREMENTS, [plan_id=1595436]"];
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#960593, worklistShardItemId#960594L, version#960595, product#960596, plant#960597, qty#960368]"];
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#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, cachedQty#960366 AS qty#960368, demandChannel#960361, demandStream#960362, cachedKpis#960367 AS kpis#960369]"];
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#943632L, shardId#943631], [cachedWorklistShardItemId#960365L, cachedShardId#960364], 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#943632L ASC NULLS FIRST, shardId#943631 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#943632L, shardId#943631, 37), ENSURE_REQUIREMENTS, [plan_id=1595304]"];
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#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634], 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#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634, 37), ENSURE_REQUIREMENTS, [plan_id=1595300]"];
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#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634], functions=[])"];
37 [id="node37" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635]"];
38 [id="node38" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#943632L, shardId#943631], [cachedWorklistShardItemId#960355L, cachedShardId#960354], Inner, BuildLeft, ((qty#943638 = cachedQty#960356) OR isnull(qty#943638)), false"];
46 [id="node46" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#960348 AS cachedShardId#960354, worklistShardItemId#960349L AS cachedWorklistShardItemId#960355L, qty#960350 AS cachedQty#960356]"];
47 [id="node47" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#960349L) AND isnotnull(shardId#960348))"];
48 [id="node48" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#960348,worklistShardItemId#960349L,qty#960350,demandChannel#960351,demandStream#960352,kpis#960353]"];
}
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=1595294]"];
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#943632L) AND isnotnull(shardId#943631))"];
}
42 [id="node42" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, qty#943638], [isnotnull(worklistShardItemId#943632L), isnotnull(shardId#943631)]"];
43 [id="node43" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#943634, plant#943635, 37), REPARTITION_BY_NUM, [plan_id=1594958]"];
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#943631,worklistShardItemId#943632L,version#943633,product#943634,plant#943635,periodStart#943636,periodEnd#943637,qty#943638]"];
}
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#960365L ASC NULLS FIRST, cachedShardId#960364 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#960365L, cachedShardId#960364, 37), ENSURE_REQUIREMENTS, [plan_id=1595310]"];
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#960358 AS cachedShardId#960364, worklistShardItemId#960359L AS cachedWorklistShardItemId#960365L, qty#960360 AS cachedQty#960366, demandChannel#960361, demandStream#960362, kpis#960363 AS cachedKpis#960367]"];
54 [id="node54" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#960359L) AND isnotnull(shardId#960358))"];
55 [id="node55" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#960358,worklistShardItemId#960359L,qty#960360,demandChannel#960361,demandStream#960362,kpis#960363]"];
}
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#960575, worklistShardItemId#960576L, version#960577, product#960578, plant#960579, qty#960582]"];
58 [id="node58" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#960576L, shardId#960575], [cachedWorklistShardItemId#960590L, cachedShardId#960589], Inner, BuildLeft, false"];
66 [id="node66" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#960583 AS cachedShardId#960589, worklistShardItemId#960584L AS cachedWorklistShardItemId#960590L]"];
67 [id="node67" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#960584L) AND isnotnull(shardId#960583))"];
68 [id="node68" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#960583,worklistShardItemId#960584L,qty#960585,demandChannel#960586,demandStream#960587,kpis#960588]"];
}
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=1595430]"];
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#960582) AND isnotnull(worklistShardItemId#960576L)) AND isnotnull(shardId#960575))"];
}
62 [id="node62" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#960575, worklistShardItemId#960576L, version#960577, product#960578, plant#960579, qty#960582], [isnull(qty#960582), isnotnull(worklistShardItemId#960576L), isnotnull(shardId#960575)]"];
63 [id="node63" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#943634, plant#943635, 37), REPARTITION_BY_NUM, [plan_id=1594958]"];
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#943631,worklistShardItemId#943632L,version#943633,product#943634,plant#943635,periodStart#943636,periodEnd#943637,qty#943638]"];
}
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#960606, worklistShardItemId#960607L, version#960608, product#960609, plant#960610, qty#960634, demandChannel#960627, demandStream#960628, kpis#960635, false AS isNewlyCalculated#960605]"];
}
71 [id="node71" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [demandChannel#960627, demandStream#960628, kpis#960635, plant#960610, product#960609, qty#960634, shardId#960606, version#960608, worklistShardItemId#960607L]"];
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#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, cachedQty#960366 AS qty#960368, demandChannel#960361, demandStream#960362, cachedKpis#960367 AS kpis#960369]"];
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#943632L, shardId#943631], [cachedWorklistShardItemId#960365L, cachedShardId#960364], 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#943632L ASC NULLS FIRST, shardId#943631 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#943632L, shardId#943631, 37), ENSURE_REQUIREMENTS, [plan_id=1595304]"];
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#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634], 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#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634, 37), ENSURE_REQUIREMENTS, [plan_id=1595300]"];
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#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634], functions=[])"];
83 [id="node83" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635]"];
84 [id="node84" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#943632L, shardId#943631], [cachedWorklistShardItemId#960355L, cachedShardId#960354], Inner, BuildLeft, ((qty#943638 = cachedQty#960356) OR isnull(qty#943638)), false"];
92 [id="node92" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#960348 AS cachedShardId#960354, worklistShardItemId#960349L AS cachedWorklistShardItemId#960355L, qty#960350 AS cachedQty#960356]"];
93 [id="node93" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#960349L) AND isnotnull(shardId#960348))"];
94 [id="node94" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#960348,worklistShardItemId#960349L,qty#960350,demandChannel#960351,demandStream#960352,kpis#960353]"];
}
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=1595294]"];
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#943632L) AND isnotnull(shardId#943631))"];
}
88 [id="node88" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, qty#943638], [isnotnull(worklistShardItemId#943632L), isnotnull(shardId#943631)]"];
89 [id="node89" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#943634, plant#943635, 37), REPARTITION_BY_NUM, [plan_id=1594958]"];
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#943631,worklistShardItemId#943632L,version#943633,product#943634,plant#943635,periodStart#943636,periodEnd#943637,qty#943638]"];
}
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#960365L ASC NULLS FIRST, cachedShardId#960364 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#960365L, cachedShardId#960364, 37), ENSURE_REQUIREMENTS, [plan_id=1595310]"];
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#960358 AS cachedShardId#960364, worklistShardItemId#960359L AS cachedWorklistShardItemId#960365L, qty#960360 AS cachedQty#960366, demandChannel#960361, demandStream#960362, kpis#960363 AS cachedKpis#960367]"];
100 [id="node100" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#960359L) AND isnotnull(shardId#960358))"];
101 [id="node101" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#960358,worklistShardItemId#960359L,qty#960360,demandChannel#960361,demandStream#960362,kpis#960363]"];
}
subgraph cluster102 {
isCluster="true";
id="cluster102";
label="WholeStageCodegen (2)\n \nduration: total (min, med, max (stageId: taskId))\n1.2 s (0 ms, 3 ms, 468 ms (stage 101498.0: task 331413))";
tooltip="WholeStageCodegen (2)";
103 [id="node103" labelType="html" label="<b>Filter</b><br><br>number of output rows: 2,802" tooltip="Filter (isnotnull(shardId#965684) AND isnotnull(worklistShardItemId#965685L))"];
}
104 [id="node104" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 2,802" tooltip="InMemoryTableScan [shardId#965684, worklistShardItemId#965685L, qty#964850, demandChannel#964830, demandStream#964831, kpis#964859], [isnotnull(shardId#965684), isnotnull(worklistShardItemId#965685L)]"];
105 [id="node105" labelType="html" label="<b>SortAggregate</b><br><br>number of output rows: 0" tooltip="SortAggregate(key=[demandChannel#964830, shardId#943631, qty#964850, worklistShardItemId#943632L, demandStream#964831], functions=[first(kpis#964859, 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#964830 ASC NULLS FIRST, shardId#943631 ASC NULLS FIRST, qty#964850 ASC NULLS FIRST, worklistShardItemId#943632L ASC NULLS FIRST, demandStream#964831 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#964830, shardId#943631, qty#964850, worklistShardItemId#943632L, demandStream#964831, 37), ENSURE_REQUIREMENTS, [plan_id=1620191]"];
109 [id="node109" labelType="html" label="<b>SortAggregate</b><br><br>number of output rows: 0" tooltip="SortAggregate(key=[demandChannel#964830, shardId#943631, knownfloatingpointnormalized(normalizenanandzero(qty#964850)) AS qty#964850, worklistShardItemId#943632L, demandStream#964831], functions=[partial_first(kpis#964859, 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#964830 ASC NULLS FIRST, shardId#943631 ASC NULLS FIRST, knownfloatingpointnormalized(normalizenanandzero(qty#964850)) AS qty#964850 ASC NULLS FIRST, worklistShardItemId#943632L ASC NULLS FIRST, demandStream#964831 ASC NULLS FIRST], false, 0"];
112 [id="node112" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#943631, worklistShardItemId#943632L, qty#964850, demandChannel#964830, demandStream#964831, kpis#964859]"];
113 [id="node113" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [coalesce(product#964823, ), isnull(product#964823), coalesce(plant#964824, ), isnull(plant#964824)], [coalesce(product#943634, ), isnull(product#943634), coalesce(plant#943635, ), isnull(plant#943635)], Inner, BuildRight, ((qty#964850 <=> qty#943638) OR isnull(qty#943638)), 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#964804.productId AS product#964823, prodPlantResults#964804.plantId AS plant#964824, null AS qty#964850, null AS demandChannel#964830, null AS demandStream#964831, transform(prodPlantResults#964804.kpiResults, lambdafunction(struct(label, lambda kpi#964860.label, dateTime, lambda kpi#964860.datetime, value, lambda kpi#964860.value), lambda kpi#964860, false)) AS kpis#964859]"];
116 [id="node116" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [prodPlantResults#964804]"];
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#964797), false, [prodPlantResults#964804]"];
119 [id="node119" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [prodPlantResults#964797]"];
120 [id="node120" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter ((size(prodPlantResults#964797, true) > 0) AND isnotnull(prodPlantResults#964797))"];
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#964796, 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#964797]"];
}
122 [id="node122" labelType="html" label="<br><b>Scan</b><br><br>" tooltip="Scan[obj#964793]"];
123 [id="node123" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [_extract_productId#964995 AS product#964810, _extract_plantId#964996 AS plant#964811, quantityKpiResults#964816.quantity AS qty#964817, null AS demandChannel#964819, null AS demandStream#964820, transform(quantityKpiResults#964816.kpiResults, lambdafunction(struct(label, lambda kpi#964860.label, dateTime, lambda kpi#964860.datetime, value, lambda kpi#964860.value), lambda kpi#964860, false)) AS kpis#964993]"];
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#964997), [_extract_productId#964995, _extract_plantId#964996], false, [quantityKpiResults#964816]"];
126 [id="node126" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [prodPlantResults#964849.productId AS _extract_productId#964995, prodPlantResults#964849.plantId AS _extract_plantId#964996, prodPlantResults#964849.quantityKpiResults AS _extract_quantityKpiResults#964997]"];
127 [id="node127" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((size(prodPlantResults#964849.quantityKpiResults, true) > 0) AND isnotnull(prodPlantResults#964849.quantityKpiResults))"];
}
128 [id="node128" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [prodPlantResults#964849], [(size(prodPlantResults#964849.quantityKpiResults, true) > 0), isnotnull(prodPlantResults#964849.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#964797), false, [prodPlantResults#964804]"];
131 [id="node131" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [prodPlantResults#964797]"];
132 [id="node132" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter ((size(prodPlantResults#964797, true) > 0) AND isnotnull(prodPlantResults#964797))"];
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#964796, 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#964797]"];
}
134 [id="node134" labelType="html" label="<br><b>Scan</b><br><br>" tooltip="Scan[obj#964793]"];
135 [id="node135" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [_extract_productId#964998 AS product#964832, _extract_plantId#964999 AS plant#964833, null AS qty#964855, demandChannelStreamKpiResults#964838.demandChannel AS demandChannel#964840, demandChannelStreamKpiResults#964838.demandStream AS demandStream#964842, transform(demandChannelStreamKpiResults#964838.kpiResults, lambdafunction(struct(label, lambda kpi#964860.label, dateTime, lambda kpi#964860.datetime, value, lambda kpi#964860.value), lambda kpi#964860, false)) AS kpis#964994]"];
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#965000), [_extract_productId#964998, _extract_plantId#964999], false, [demandChannelStreamKpiResults#964838]"];
138 [id="node138" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [prodPlantResults#964854.productId AS _extract_productId#964998, prodPlantResults#964854.plantId AS _extract_plantId#964999, prodPlantResults#964854.demandChannelStreamKpiResults AS _extract_demandChannelStreamKpiResults#965000]"];
139 [id="node139" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((size(prodPlantResults#964854.demandChannelStreamKpiResults, true) > 0) AND isnotnull(prodPlantResults#964854.demandChannelStreamKpiResults))"];
}
140 [id="node140" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [prodPlantResults#964854], [(size(prodPlantResults#964854.demandChannelStreamKpiResults, true) > 0), isnotnull(prodPlantResults#964854.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#964797), false, [prodPlantResults#964804]"];
143 [id="node143" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [prodPlantResults#964797]"];
144 [id="node144" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter ((size(prodPlantResults#964797, true) > 0) AND isnotnull(prodPlantResults#964797))"];
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#964796, 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#964797]"];
}
146 [id="node146" labelType="html" label="<br><b>Scan</b><br><br>" tooltip="Scan[obj#964793]"];
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=1620184]"];
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#943635, shardId#943631, qty#943638, worklistShardItemId#943632L, product#943634], 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#943635, shardId#943631, qty#943638, worklistShardItemId#943632L, product#943634, 37), ENSURE_REQUIREMENTS, [plan_id=1620180]"];
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#943635, shardId#943631, knownfloatingpointnormalized(normalizenanandzero(qty#943638)) AS qty#943638, worklistShardItemId#943632L, product#943634], functions=[])"];
153 [id="node153" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#943631, worklistShardItemId#943632L, product#943634, plant#943635, qty#943638]"];
154 [id="node154" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter isNewlyCalculated#960604: boolean"];
}
155 [id="node155" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [isNewlyCalculated#960604, plant#943635, product#943634, qty#943638, shardId#943631, worklistShardItemId#943632L], [isNewlyCalculated#960604]"];
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#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, qty#943638, null AS demandChannel#960601, null AS demandStream#960602, [] AS kpis#960636, true AS isNewlyCalculated#960604]"];
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#943631, ), isnull(shardId#943631), coalesce(worklistShardItemId#943632L, 0), isnull(worklistShardItemId#943632L), coalesce(version#943633, 0), isnull(version#943633), coalesce(product#943634, ), isnull(product#943634), coalesce(plant#943635, ), isnull(plant#943635), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#943638, 0.0))), isnull(qty#943638)], [coalesce(shardId#960593, ), isnull(shardId#960593), coalesce(worklistShardItemId#960594L, 0), isnull(worklistShardItemId#960594L), coalesce(version#960595, 0), isnull(version#960595), coalesce(product#960596, ), isnull(product#960596), coalesce(plant#960597, ), isnull(plant#960597), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#960368, 0.0))), isnull(qty#960368)], 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#943631, ) ASC NULLS FIRST, isnull(shardId#943631) ASC NULLS FIRST, coalesce(worklistShardItemId#943632L, 0) ASC NULLS FIRST, isnull(worklistShardItemId#943632L) ASC NULLS FIRST, coalesce(version#943633, 0) ASC NULLS FIRST, isnull(version#943633) ASC NULLS FIRST, coalesce(product#943634, ) ASC NULLS FIRST, isnull(product#943634) ASC NULLS FIRST, coalesce(plant#943635, ) ASC NULLS FIRST, isnull(plant#943635) ASC NULLS FIRST, knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#943638, 0.0))) ASC NULLS FIRST, isnull(qty#943638) 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#943631, ), isnull(shardId#943631), coalesce(worklistShardItemId#943632L, 0), isnull(worklistShardItemId#943632L), coalesce(version#943633, 0), isnull(version#943633), coalesce(product#943634, ), isnull(product#943634), coalesce(plant#943635, ), isnull(plant#943635), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#943638, 0.0))), isnull(qty#943638), 37), ENSURE_REQUIREMENTS, [plan_id=1595416]"];
163 [id="node163" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, qty#943638]"];
164 [id="node164" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#943634, plant#943635, 37), REPARTITION_BY_NUM, [plan_id=1594958]"];
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#943631,worklistShardItemId#943632L,version#943633,product#943634,plant#943635,periodStart#943636,periodEnd#943637,qty#943638]"];
}
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#960593, ) ASC NULLS FIRST, isnull(shardId#960593) ASC NULLS FIRST, coalesce(worklistShardItemId#960594L, 0) ASC NULLS FIRST, isnull(worklistShardItemId#960594L) ASC NULLS FIRST, coalesce(version#960595, 0) ASC NULLS FIRST, isnull(version#960595) ASC NULLS FIRST, coalesce(product#960596, ) ASC NULLS FIRST, isnull(product#960596) ASC NULLS FIRST, coalesce(plant#960597, ) ASC NULLS FIRST, isnull(plant#960597) ASC NULLS FIRST, knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#960368, 0.0))) ASC NULLS FIRST, isnull(qty#960368) 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#960593, ), isnull(shardId#960593), coalesce(worklistShardItemId#960594L, 0), isnull(worklistShardItemId#960594L), coalesce(version#960595, 0), isnull(version#960595), coalesce(product#960596, ), isnull(product#960596), coalesce(plant#960597, ), isnull(plant#960597), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#960368, 0.0))), isnull(qty#960368), 37), ENSURE_REQUIREMENTS, [plan_id=1595436]"];
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#960593, worklistShardItemId#960594L, version#960595, product#960596, plant#960597, qty#960368]"];
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#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, cachedQty#960366 AS qty#960368, demandChannel#960361, demandStream#960362, cachedKpis#960367 AS kpis#960369]"];
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#943632L, shardId#943631], [cachedWorklistShardItemId#960365L, cachedShardId#960364], 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#943632L ASC NULLS FIRST, shardId#943631 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#943632L, shardId#943631, 37), ENSURE_REQUIREMENTS, [plan_id=1595304]"];
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#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634], 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#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634, 37), ENSURE_REQUIREMENTS, [plan_id=1595300]"];
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#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634], functions=[])"];
183 [id="node183" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635]"];
184 [id="node184" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#943632L, shardId#943631], [cachedWorklistShardItemId#960355L, cachedShardId#960354], Inner, BuildLeft, ((qty#943638 = cachedQty#960356) OR isnull(qty#943638)), false"];
192 [id="node192" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#960348 AS cachedShardId#960354, worklistShardItemId#960349L AS cachedWorklistShardItemId#960355L, qty#960350 AS cachedQty#960356]"];
193 [id="node193" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#960349L) AND isnotnull(shardId#960348))"];
194 [id="node194" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#960348,worklistShardItemId#960349L,qty#960350,demandChannel#960351,demandStream#960352,kpis#960353]"];
}
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=1595294]"];
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#943632L) AND isnotnull(shardId#943631))"];
}
188 [id="node188" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, qty#943638], [isnotnull(worklistShardItemId#943632L), isnotnull(shardId#943631)]"];
189 [id="node189" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#943634, plant#943635, 37), REPARTITION_BY_NUM, [plan_id=1594958]"];
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#943631,worklistShardItemId#943632L,version#943633,product#943634,plant#943635,periodStart#943636,periodEnd#943637,qty#943638]"];
}
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#960365L ASC NULLS FIRST, cachedShardId#960364 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#960365L, cachedShardId#960364, 37), ENSURE_REQUIREMENTS, [plan_id=1595310]"];
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#960358 AS cachedShardId#960364, worklistShardItemId#960359L AS cachedWorklistShardItemId#960365L, qty#960360 AS cachedQty#960366, demandChannel#960361, demandStream#960362, kpis#960363 AS cachedKpis#960367]"];
200 [id="node200" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#960359L) AND isnotnull(shardId#960358))"];
201 [id="node201" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#960358,worklistShardItemId#960359L,qty#960360,demandChannel#960361,demandStream#960362,kpis#960363]"];
}
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#960575, worklistShardItemId#960576L, version#960577, product#960578, plant#960579, qty#960582]"];
204 [id="node204" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#960576L, shardId#960575], [cachedWorklistShardItemId#960590L, cachedShardId#960589], Inner, BuildLeft, false"];
212 [id="node212" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#960583 AS cachedShardId#960589, worklistShardItemId#960584L AS cachedWorklistShardItemId#960590L]"];
213 [id="node213" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#960584L) AND isnotnull(shardId#960583))"];
214 [id="node214" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#960583,worklistShardItemId#960584L,qty#960585,demandChannel#960586,demandStream#960587,kpis#960588]"];
}
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=1595430]"];
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#960582) AND isnotnull(worklistShardItemId#960576L)) AND isnotnull(shardId#960575))"];
}
208 [id="node208" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#960575, worklistShardItemId#960576L, version#960577, product#960578, plant#960579, qty#960582], [isnull(qty#960582), isnotnull(worklistShardItemId#960576L), isnotnull(shardId#960575)]"];
209 [id="node209" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#943634, plant#943635, 37), REPARTITION_BY_NUM, [plan_id=1594958]"];
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#943631,worklistShardItemId#943632L,version#943633,product#943634,plant#943635,periodStart#943636,periodEnd#943637,qty#943638]"];
}
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#960606, worklistShardItemId#960607L, version#960608, product#960609, plant#960610, qty#960634, demandChannel#960627, demandStream#960628, kpis#960635, false AS isNewlyCalculated#960605]"];
}
217 [id="node217" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [demandChannel#960627, demandStream#960628, kpis#960635, plant#960610, product#960609, qty#960634, shardId#960606, version#960608, worklistShardItemId#960607L]"];
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#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, cachedQty#960366 AS qty#960368, demandChannel#960361, demandStream#960362, cachedKpis#960367 AS kpis#960369]"];
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#943632L, shardId#943631], [cachedWorklistShardItemId#960365L, cachedShardId#960364], 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#943632L ASC NULLS FIRST, shardId#943631 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#943632L, shardId#943631, 37), ENSURE_REQUIREMENTS, [plan_id=1595304]"];
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#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634], 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#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634, 37), ENSURE_REQUIREMENTS, [plan_id=1595300]"];
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#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634], functions=[])"];
229 [id="node229" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635]"];
230 [id="node230" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#943632L, shardId#943631], [cachedWorklistShardItemId#960355L, cachedShardId#960354], Inner, BuildLeft, ((qty#943638 = cachedQty#960356) OR isnull(qty#943638)), false"];
238 [id="node238" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#960348 AS cachedShardId#960354, worklistShardItemId#960349L AS cachedWorklistShardItemId#960355L, qty#960350 AS cachedQty#960356]"];
239 [id="node239" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#960349L) AND isnotnull(shardId#960348))"];
240 [id="node240" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#960348,worklistShardItemId#960349L,qty#960350,demandChannel#960351,demandStream#960352,kpis#960353]"];
}
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=1595294]"];
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#943632L) AND isnotnull(shardId#943631))"];
}
234 [id="node234" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, qty#943638], [isnotnull(worklistShardItemId#943632L), isnotnull(shardId#943631)]"];
235 [id="node235" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#943634, plant#943635, 37), REPARTITION_BY_NUM, [plan_id=1594958]"];
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#943631,worklistShardItemId#943632L,version#943633,product#943634,plant#943635,periodStart#943636,periodEnd#943637,qty#943638]"];
}
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#960365L ASC NULLS FIRST, cachedShardId#960364 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#960365L, cachedShardId#960364, 37), ENSURE_REQUIREMENTS, [plan_id=1595310]"];
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#960358 AS cachedShardId#960364, worklistShardItemId#960359L AS cachedWorklistShardItemId#960365L, qty#960360 AS cachedQty#960366, demandChannel#960361, demandStream#960362, kpis#960363 AS cachedKpis#960367]"];
246 [id="node246" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#960359L) AND isnotnull(shardId#960358))"];
247 [id="node247" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#960358,worklistShardItemId#960359L,qty#960360,demandChannel#960361,demandStream#960362,kpis#960363]"];
}
248 [id="node248" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 0 ms<br>time to build: 10 ms<br>time to collect: 757 ms<br>number of output rows: 434<br>data size: 2.0 MiB" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(input[0, string, true], input[1, bigint, true]),false), [plan_id=1620456]"];
subgraph cluster249 {
isCluster="true";
id="cluster249";
label="WholeStageCodegen (4)\n \nduration: total (min, med, max (stageId: taskId))\n109 ms (1 ms, 3 ms, 5 ms (stage 101481.0: task 331286))";
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>76 ms (0 ms, 2 ms, 4 ms (stage 101481.0: task 331286))<br>peak memory total (min, med, max (stageId: taskId))<br>83.3 MiB (2.3 MiB, 2.3 MiB, 2.3 MiB (stage 101481.0: task 331282))<br>number of output rows: 434<br>number of sort fallback tasks: 0<br>avg hash probes per key (min, med, max (stageId: taskId)):<br>(1, 1, 1 (stage 101481.0: task 331282))" tooltip="HashAggregate(keys=[shardId#965776, worklistShardItemId#965777L], functions=[max(version#965778)])"];
}
251 [id="node251" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 434<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 434<br>local bytes read total (min, med, max (stageId: taskId))<br>16.6 KiB (99.0 B, 496.0 B, 934.0 B (stage 101481.0: task 331282))<br>merged fetch fallback count: 0<br>local blocks read: 167<br>remote merged chunks fetched: 0<br>remote blocks read: 210<br>data size total (min, med, max (stageId: taskId))<br>20.3 KiB (144.0 B, 576.0 B, 864.0 B (stage 101480.0: task 331234))<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>31 ms (0 ms, 0 ms, 1 ms (stage 101480.0: task 331215))<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time total (min, med, max (stageId: taskId))<br>12 ms (0 ms, 0 ms, 1 ms (stage 101481.0: task 331300))<br>remote bytes read total (min, med, max (stageId: taskId))<br>20.8 KiB (99.0 B, 596.0 B, 1044.0 B (stage 101481.0: task 331296))<br>number of partitions: 37<br>remote reqs duration total (min, med, max (stageId: taskId))<br>109 ms (0 ms, 3 ms, 8 ms (stage 101481.0: task 331289))<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>37.4 KiB (299.0 B, 1023.0 B, 1709.0 B (stage 101480.0: task 331234))" tooltip="Exchange hashpartitioning(shardId#965776, worklistShardItemId#965777L, 37), ENSURE_REQUIREMENTS, [plan_id=1620452]"];
subgraph cluster252 {
isCluster="true";
id="cluster252";
label="WholeStageCodegen (3)\n \nduration: total (min, med, max (stageId: taskId))\n2.0 s (0 ms, 1 ms, 248 ms (stage 101480.0: task 331214))";
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>29 ms (0 ms, 0 ms, 4 ms (stage 101480.0: task 331211))<br>peak memory total (min, med, max (stageId: taskId))<br>18.5 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 101480.0: task 331219))<br>number of output rows: 434<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[shardId#965776, worklistShardItemId#965777L], functions=[partial_max(version#965778)])"];
254 [id="node254" labelType="html" label="<b>Filter</b><br><br>number of output rows: 434" tooltip="Filter (isnotnull(shardId#965776) AND isnotnull(worklistShardItemId#965777L))"];
}
255 [id="node255" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 434" tooltip="InMemoryTableScan [shardId#965776, worklistShardItemId#965777L, version#965778], [isnotnull(shardId#965776), isnotnull(worklistShardItemId#965777L)]"];
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#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, qty#943638, null AS demandChannel#960601, null AS demandStream#960602, [] AS kpis#960636, true AS isNewlyCalculated#960604]"];
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#943631, ), isnull(shardId#943631), coalesce(worklistShardItemId#943632L, 0), isnull(worklistShardItemId#943632L), coalesce(version#943633, 0), isnull(version#943633), coalesce(product#943634, ), isnull(product#943634), coalesce(plant#943635, ), isnull(plant#943635), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#943638, 0.0))), isnull(qty#943638)], [coalesce(shardId#960593, ), isnull(shardId#960593), coalesce(worklistShardItemId#960594L, 0), isnull(worklistShardItemId#960594L), coalesce(version#960595, 0), isnull(version#960595), coalesce(product#960596, ), isnull(product#960596), coalesce(plant#960597, ), isnull(plant#960597), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#960368, 0.0))), isnull(qty#960368)], 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#943631, ) ASC NULLS FIRST, isnull(shardId#943631) ASC NULLS FIRST, coalesce(worklistShardItemId#943632L, 0) ASC NULLS FIRST, isnull(worklistShardItemId#943632L) ASC NULLS FIRST, coalesce(version#943633, 0) ASC NULLS FIRST, isnull(version#943633) ASC NULLS FIRST, coalesce(product#943634, ) ASC NULLS FIRST, isnull(product#943634) ASC NULLS FIRST, coalesce(plant#943635, ) ASC NULLS FIRST, isnull(plant#943635) ASC NULLS FIRST, knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#943638, 0.0))) ASC NULLS FIRST, isnull(qty#943638) 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#943631, ), isnull(shardId#943631), coalesce(worklistShardItemId#943632L, 0), isnull(worklistShardItemId#943632L), coalesce(version#943633, 0), isnull(version#943633), coalesce(product#943634, ), isnull(product#943634), coalesce(plant#943635, ), isnull(plant#943635), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#943638, 0.0))), isnull(qty#943638), 37), ENSURE_REQUIREMENTS, [plan_id=1595416]"];
263 [id="node263" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, qty#943638]"];
264 [id="node264" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#943634, plant#943635, 37), REPARTITION_BY_NUM, [plan_id=1594958]"];
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#943631,worklistShardItemId#943632L,version#943633,product#943634,plant#943635,periodStart#943636,periodEnd#943637,qty#943638]"];
}
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#960593, ) ASC NULLS FIRST, isnull(shardId#960593) ASC NULLS FIRST, coalesce(worklistShardItemId#960594L, 0) ASC NULLS FIRST, isnull(worklistShardItemId#960594L) ASC NULLS FIRST, coalesce(version#960595, 0) ASC NULLS FIRST, isnull(version#960595) ASC NULLS FIRST, coalesce(product#960596, ) ASC NULLS FIRST, isnull(product#960596) ASC NULLS FIRST, coalesce(plant#960597, ) ASC NULLS FIRST, isnull(plant#960597) ASC NULLS FIRST, knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#960368, 0.0))) ASC NULLS FIRST, isnull(qty#960368) 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#960593, ), isnull(shardId#960593), coalesce(worklistShardItemId#960594L, 0), isnull(worklistShardItemId#960594L), coalesce(version#960595, 0), isnull(version#960595), coalesce(product#960596, ), isnull(product#960596), coalesce(plant#960597, ), isnull(plant#960597), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#960368, 0.0))), isnull(qty#960368), 37), ENSURE_REQUIREMENTS, [plan_id=1595436]"];
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#960593, worklistShardItemId#960594L, version#960595, product#960596, plant#960597, qty#960368]"];
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#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, cachedQty#960366 AS qty#960368, demandChannel#960361, demandStream#960362, cachedKpis#960367 AS kpis#960369]"];
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#943632L, shardId#943631], [cachedWorklistShardItemId#960365L, cachedShardId#960364], 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#943632L ASC NULLS FIRST, shardId#943631 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#943632L, shardId#943631, 37), ENSURE_REQUIREMENTS, [plan_id=1595304]"];
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#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634], 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#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634, 37), ENSURE_REQUIREMENTS, [plan_id=1595300]"];
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#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634], functions=[])"];
283 [id="node283" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635]"];
284 [id="node284" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#943632L, shardId#943631], [cachedWorklistShardItemId#960355L, cachedShardId#960354], Inner, BuildLeft, ((qty#943638 = cachedQty#960356) OR isnull(qty#943638)), false"];
292 [id="node292" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#960348 AS cachedShardId#960354, worklistShardItemId#960349L AS cachedWorklistShardItemId#960355L, qty#960350 AS cachedQty#960356]"];
293 [id="node293" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#960349L) AND isnotnull(shardId#960348))"];
294 [id="node294" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#960348,worklistShardItemId#960349L,qty#960350,demandChannel#960351,demandStream#960352,kpis#960353]"];
}
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=1595294]"];
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#943632L) AND isnotnull(shardId#943631))"];
}
288 [id="node288" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, qty#943638], [isnotnull(worklistShardItemId#943632L), isnotnull(shardId#943631)]"];
289 [id="node289" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#943634, plant#943635, 37), REPARTITION_BY_NUM, [plan_id=1594958]"];
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#943631,worklistShardItemId#943632L,version#943633,product#943634,plant#943635,periodStart#943636,periodEnd#943637,qty#943638]"];
}
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#960365L ASC NULLS FIRST, cachedShardId#960364 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#960365L, cachedShardId#960364, 37), ENSURE_REQUIREMENTS, [plan_id=1595310]"];
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#960358 AS cachedShardId#960364, worklistShardItemId#960359L AS cachedWorklistShardItemId#960365L, qty#960360 AS cachedQty#960366, demandChannel#960361, demandStream#960362, kpis#960363 AS cachedKpis#960367]"];
300 [id="node300" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#960359L) AND isnotnull(shardId#960358))"];
301 [id="node301" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#960358,worklistShardItemId#960359L,qty#960360,demandChannel#960361,demandStream#960362,kpis#960363]"];
}
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#960575, worklistShardItemId#960576L, version#960577, product#960578, plant#960579, qty#960582]"];
304 [id="node304" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#960576L, shardId#960575], [cachedWorklistShardItemId#960590L, cachedShardId#960589], Inner, BuildLeft, false"];
312 [id="node312" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#960583 AS cachedShardId#960589, worklistShardItemId#960584L AS cachedWorklistShardItemId#960590L]"];
313 [id="node313" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#960584L) AND isnotnull(shardId#960583))"];
314 [id="node314" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#960583,worklistShardItemId#960584L,qty#960585,demandChannel#960586,demandStream#960587,kpis#960588]"];
}
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=1595430]"];
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#960582) AND isnotnull(worklistShardItemId#960576L)) AND isnotnull(shardId#960575))"];
}
308 [id="node308" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#960575, worklistShardItemId#960576L, version#960577, product#960578, plant#960579, qty#960582], [isnull(qty#960582), isnotnull(worklistShardItemId#960576L), isnotnull(shardId#960575)]"];
309 [id="node309" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#943634, plant#943635, 37), REPARTITION_BY_NUM, [plan_id=1594958]"];
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#943631,worklistShardItemId#943632L,version#943633,product#943634,plant#943635,periodStart#943636,periodEnd#943637,qty#943638]"];
}
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#960606, worklistShardItemId#960607L, version#960608, product#960609, plant#960610, qty#960634, demandChannel#960627, demandStream#960628, kpis#960635, false AS isNewlyCalculated#960605]"];
}
317 [id="node317" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [demandChannel#960627, demandStream#960628, kpis#960635, plant#960610, product#960609, qty#960634, shardId#960606, version#960608, worklistShardItemId#960607L]"];
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#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, cachedQty#960366 AS qty#960368, demandChannel#960361, demandStream#960362, cachedKpis#960367 AS kpis#960369]"];
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#943632L, shardId#943631], [cachedWorklistShardItemId#960365L, cachedShardId#960364], 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#943632L ASC NULLS FIRST, shardId#943631 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#943632L, shardId#943631, 37), ENSURE_REQUIREMENTS, [plan_id=1595304]"];
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#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634], 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#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634, 37), ENSURE_REQUIREMENTS, [plan_id=1595300]"];
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#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634], functions=[])"];
329 [id="node329" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635]"];
330 [id="node330" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#943632L, shardId#943631], [cachedWorklistShardItemId#960355L, cachedShardId#960354], Inner, BuildLeft, ((qty#943638 = cachedQty#960356) OR isnull(qty#943638)), false"];
338 [id="node338" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#960348 AS cachedShardId#960354, worklistShardItemId#960349L AS cachedWorklistShardItemId#960355L, qty#960350 AS cachedQty#960356]"];
339 [id="node339" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#960349L) AND isnotnull(shardId#960348))"];
340 [id="node340" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#960348,worklistShardItemId#960349L,qty#960350,demandChannel#960351,demandStream#960352,kpis#960353]"];
}
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=1595294]"];
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#943632L) AND isnotnull(shardId#943631))"];
}
334 [id="node334" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, qty#943638], [isnotnull(worklistShardItemId#943632L), isnotnull(shardId#943631)]"];
335 [id="node335" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#943634, plant#943635, 37), REPARTITION_BY_NUM, [plan_id=1594958]"];
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#943631,worklistShardItemId#943632L,version#943633,product#943634,plant#943635,periodStart#943636,periodEnd#943637,qty#943638]"];
}
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#960365L ASC NULLS FIRST, cachedShardId#960364 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#960365L, cachedShardId#960364, 37), ENSURE_REQUIREMENTS, [plan_id=1595310]"];
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#960358 AS cachedShardId#960364, worklistShardItemId#960359L AS cachedWorklistShardItemId#960365L, qty#960360 AS cachedQty#960366, demandChannel#960361, demandStream#960362, kpis#960363 AS cachedKpis#960367]"];
346 [id="node346" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#960359L) AND isnotnull(shardId#960358))"];
347 [id="node347" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#960358,worklistShardItemId#960359L,qty#960360,demandChannel#960361,demandStream#960362,kpis#960363]"];
}
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;
}