digraph G {
0 [id="node0" labelType="html" label="<b>CollectLimit</b><br><br>shuffle records written: 31<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 1<br>local bytes read: 744.0 B<br>merged fetch fallback count: 0<br>local blocks read: 12<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>4 ms (0 ms, 0 ms, 0 ms (stage 106331.0: task 354074))<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>1922.0 B (62.0 B, 62.0 B, 62.0 B (stage 106331.0: task 354054))" tooltip="CollectLimit 1"];
1 [id="node1" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 66" tooltip="InMemoryTableScan"];
subgraph cluster2 {
isCluster="true";
id="cluster2";
label="WholeStageCodegen (5)\n \nduration: total (min, med, max (stageId: taskId))\n1.6 s (0 ms, 0 ms, 638 ms (stage 106331.0: task 354070))";
tooltip="WholeStageCodegen (5)";
3 [id="node3" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#1011815, worklistShardItemId#1011816L, version#1031790, qty#1011822, demandChannel#1028421, demandStream#1028422, kpis#1028456]"];
4 [id="node4" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 66" tooltip="BroadcastHashJoin [shardId#1011815, worklistShardItemId#1011816L], [shardId#1031887, worklistShardItemId#1031888L], 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))\n1.4 s (0 ms, 0 ms, 285 ms (stage 106331.0: task 353987))";
tooltip="WholeStageCodegen (1)";
7 [id="node7" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#1011815, worklistShardItemId#1011816L, qty#1011822, demandChannel#1028421, demandStream#1028422, kpis#1028456]"];
8 [id="node8" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((NOT isNewlyCalculated#1028424 AND isnotnull(shardId#1011815)) AND isnotnull(worklistShardItemId#1011816L))"];
}
9 [id="node9" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 66" tooltip="InMemoryTableScan [demandChannel#1028421, demandStream#1028422, isNewlyCalculated#1028424, kpis#1028456, qty#1011822, shardId#1011815, worklistShardItemId#1011816L], [NOT isNewlyCalculated#1028424, isnotnull(shardId#1011815), isnotnull(worklistShardItemId#1011816L)]"];
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#1011815, worklistShardItemId#1011816L, version#1011817, product#1011818, plant#1011819, qty#1011822, null AS demandChannel#1028421, null AS demandStream#1028422, [] AS kpis#1028456, true AS isNewlyCalculated#1028424]"];
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#1011815, ), isnull(shardId#1011815), coalesce(worklistShardItemId#1011816L, 0), isnull(worklistShardItemId#1011816L), coalesce(version#1011817, 0), isnull(version#1011817), coalesce(product#1011818, ), isnull(product#1011818), coalesce(plant#1011819, ), isnull(plant#1011819), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#1011822, 0.0))), isnull(qty#1011822)], [coalesce(shardId#1028413, ), isnull(shardId#1028413), coalesce(worklistShardItemId#1028414L, 0), isnull(worklistShardItemId#1028414L), coalesce(version#1028415, 0), isnull(version#1028415), coalesce(product#1028416, ), isnull(product#1028416), coalesce(plant#1028417, ), isnull(plant#1028417), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#1028188, 0.0))), isnull(qty#1028188)], 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#1011815, ) ASC NULLS FIRST, isnull(shardId#1011815) ASC NULLS FIRST, coalesce(worklistShardItemId#1011816L, 0) ASC NULLS FIRST, isnull(worklistShardItemId#1011816L) ASC NULLS FIRST, coalesce(version#1011817, 0) ASC NULLS FIRST, isnull(version#1011817) ASC NULLS FIRST, coalesce(product#1011818, ) ASC NULLS FIRST, isnull(product#1011818) ASC NULLS FIRST, coalesce(plant#1011819, ) ASC NULLS FIRST, isnull(plant#1011819) ASC NULLS FIRST, knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#1011822, 0.0))) ASC NULLS FIRST, isnull(qty#1011822) 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#1011815, ), isnull(shardId#1011815), coalesce(worklistShardItemId#1011816L, 0), isnull(worklistShardItemId#1011816L), coalesce(version#1011817, 0), isnull(version#1011817), coalesce(product#1011818, ), isnull(product#1011818), coalesce(plant#1011819, ), isnull(plant#1011819), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#1011822, 0.0))), isnull(qty#1011822), 37), ENSURE_REQUIREMENTS, [plan_id=1678536]"];
17 [id="node17" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#1011815, worklistShardItemId#1011816L, version#1011817, product#1011818, plant#1011819, qty#1011822]"];
18 [id="node18" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#1011818, plant#1011819, 37), REPARTITION_BY_NUM, [plan_id=1678306]"];
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#1011815,worklistShardItemId#1011816L,version#1011817,product#1011818,plant#1011819,periodStart#1011820,periodEnd#1011821,qty#1011822]"];
}
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#1028413, ) ASC NULLS FIRST, isnull(shardId#1028413) ASC NULLS FIRST, coalesce(worklistShardItemId#1028414L, 0) ASC NULLS FIRST, isnull(worklistShardItemId#1028414L) ASC NULLS FIRST, coalesce(version#1028415, 0) ASC NULLS FIRST, isnull(version#1028415) ASC NULLS FIRST, coalesce(product#1028416, ) ASC NULLS FIRST, isnull(product#1028416) ASC NULLS FIRST, coalesce(plant#1028417, ) ASC NULLS FIRST, isnull(plant#1028417) ASC NULLS FIRST, knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#1028188, 0.0))) ASC NULLS FIRST, isnull(qty#1028188) 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#1028413, ), isnull(shardId#1028413), coalesce(worklistShardItemId#1028414L, 0), isnull(worklistShardItemId#1028414L), coalesce(version#1028415, 0), isnull(version#1028415), coalesce(product#1028416, ), isnull(product#1028416), coalesce(plant#1028417, ), isnull(plant#1028417), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#1028188, 0.0))), isnull(qty#1028188), 37), ENSURE_REQUIREMENTS, [plan_id=1678556]"];
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#1028413, worklistShardItemId#1028414L, version#1028415, product#1028416, plant#1028417, qty#1028188]"];
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#1011815, worklistShardItemId#1011816L, version#1011817, product#1011818, plant#1011819, cachedQty#1028186 AS qty#1028188, demandChannel#1028181, demandStream#1028182, cachedKpis#1028187 AS kpis#1028189]"];
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#1011816L, shardId#1011815], [cachedWorklistShardItemId#1028185L, cachedShardId#1028184], 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#1011816L ASC NULLS FIRST, shardId#1011815 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#1011816L, shardId#1011815, 37), ENSURE_REQUIREMENTS, [plan_id=1678424]"];
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#1011819, shardId#1011815, version#1011817, worklistShardItemId#1011816L, product#1011818], 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#1011819, shardId#1011815, version#1011817, worklistShardItemId#1011816L, product#1011818, 37), ENSURE_REQUIREMENTS, [plan_id=1678420]"];
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#1011819, shardId#1011815, version#1011817, worklistShardItemId#1011816L, product#1011818], functions=[])"];
37 [id="node37" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#1011815, worklistShardItemId#1011816L, version#1011817, product#1011818, plant#1011819]"];
38 [id="node38" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#1011816L, shardId#1011815], [cachedWorklistShardItemId#1028175L, cachedShardId#1028174], Inner, BuildLeft, ((qty#1011822 = cachedQty#1028176) OR isnull(qty#1011822)), false"];
46 [id="node46" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#1028168 AS cachedShardId#1028174, worklistShardItemId#1028169L AS cachedWorklistShardItemId#1028175L, qty#1028170 AS cachedQty#1028176]"];
47 [id="node47" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#1028169L) AND isnotnull(shardId#1028168))"];
48 [id="node48" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#1028168,worklistShardItemId#1028169L,qty#1028170,demandChannel#1028171,demandStream#1028172,kpis#1028173]"];
}
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=1678414]"];
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#1011816L) AND isnotnull(shardId#1011815))"];
}
42 [id="node42" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#1011815, worklistShardItemId#1011816L, version#1011817, product#1011818, plant#1011819, qty#1011822], [isnotnull(worklistShardItemId#1011816L), isnotnull(shardId#1011815)]"];
43 [id="node43" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#1011818, plant#1011819, 37), REPARTITION_BY_NUM, [plan_id=1678306]"];
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#1011815,worklistShardItemId#1011816L,version#1011817,product#1011818,plant#1011819,periodStart#1011820,periodEnd#1011821,qty#1011822]"];
}
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#1028185L ASC NULLS FIRST, cachedShardId#1028184 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#1028185L, cachedShardId#1028184, 37), ENSURE_REQUIREMENTS, [plan_id=1678430]"];
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#1028178 AS cachedShardId#1028184, worklistShardItemId#1028179L AS cachedWorklistShardItemId#1028185L, qty#1028180 AS cachedQty#1028186, demandChannel#1028181, demandStream#1028182, kpis#1028183 AS cachedKpis#1028187]"];
54 [id="node54" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#1028179L) AND isnotnull(shardId#1028178))"];
55 [id="node55" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#1028178,worklistShardItemId#1028179L,qty#1028180,demandChannel#1028181,demandStream#1028182,kpis#1028183]"];
}
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#1028395, worklistShardItemId#1028396L, version#1028397, product#1028398, plant#1028399, qty#1028402]"];
58 [id="node58" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#1028396L, shardId#1028395], [cachedWorklistShardItemId#1028410L, cachedShardId#1028409], Inner, BuildLeft, false"];
66 [id="node66" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#1028403 AS cachedShardId#1028409, worklistShardItemId#1028404L AS cachedWorklistShardItemId#1028410L]"];
67 [id="node67" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#1028404L) AND isnotnull(shardId#1028403))"];
68 [id="node68" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#1028403,worklistShardItemId#1028404L,qty#1028405,demandChannel#1028406,demandStream#1028407,kpis#1028408]"];
}
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=1678550]"];
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#1028402) AND isnotnull(worklistShardItemId#1028396L)) AND isnotnull(shardId#1028395))"];
}
62 [id="node62" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#1028395, worklistShardItemId#1028396L, version#1028397, product#1028398, plant#1028399, qty#1028402], [isnull(qty#1028402), isnotnull(worklistShardItemId#1028396L), isnotnull(shardId#1028395)]"];
63 [id="node63" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#1011818, plant#1011819, 37), REPARTITION_BY_NUM, [plan_id=1678306]"];
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#1011815,worklistShardItemId#1011816L,version#1011817,product#1011818,plant#1011819,periodStart#1011820,periodEnd#1011821,qty#1011822]"];
}
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#1028426, worklistShardItemId#1028427L, version#1028428, product#1028429, plant#1028430, qty#1028454, demandChannel#1028447, demandStream#1028448, kpis#1028455, false AS isNewlyCalculated#1028425]"];
}
71 [id="node71" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [demandChannel#1028447, demandStream#1028448, kpis#1028455, plant#1028430, product#1028429, qty#1028454, shardId#1028426, version#1028428, worklistShardItemId#1028427L]"];
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#1011815, worklistShardItemId#1011816L, version#1011817, product#1011818, plant#1011819, cachedQty#1028186 AS qty#1028188, demandChannel#1028181, demandStream#1028182, cachedKpis#1028187 AS kpis#1028189]"];
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#1011816L, shardId#1011815], [cachedWorklistShardItemId#1028185L, cachedShardId#1028184], 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#1011816L ASC NULLS FIRST, shardId#1011815 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#1011816L, shardId#1011815, 37), ENSURE_REQUIREMENTS, [plan_id=1678424]"];
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#1011819, shardId#1011815, version#1011817, worklistShardItemId#1011816L, product#1011818], 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#1011819, shardId#1011815, version#1011817, worklistShardItemId#1011816L, product#1011818, 37), ENSURE_REQUIREMENTS, [plan_id=1678420]"];
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#1011819, shardId#1011815, version#1011817, worklistShardItemId#1011816L, product#1011818], functions=[])"];
83 [id="node83" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#1011815, worklistShardItemId#1011816L, version#1011817, product#1011818, plant#1011819]"];
84 [id="node84" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#1011816L, shardId#1011815], [cachedWorklistShardItemId#1028175L, cachedShardId#1028174], Inner, BuildLeft, ((qty#1011822 = cachedQty#1028176) OR isnull(qty#1011822)), false"];
92 [id="node92" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#1028168 AS cachedShardId#1028174, worklistShardItemId#1028169L AS cachedWorklistShardItemId#1028175L, qty#1028170 AS cachedQty#1028176]"];
93 [id="node93" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#1028169L) AND isnotnull(shardId#1028168))"];
94 [id="node94" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#1028168,worklistShardItemId#1028169L,qty#1028170,demandChannel#1028171,demandStream#1028172,kpis#1028173]"];
}
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=1678414]"];
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#1011816L) AND isnotnull(shardId#1011815))"];
}
88 [id="node88" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#1011815, worklistShardItemId#1011816L, version#1011817, product#1011818, plant#1011819, qty#1011822], [isnotnull(worklistShardItemId#1011816L), isnotnull(shardId#1011815)]"];
89 [id="node89" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#1011818, plant#1011819, 37), REPARTITION_BY_NUM, [plan_id=1678306]"];
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#1011815,worklistShardItemId#1011816L,version#1011817,product#1011818,plant#1011819,periodStart#1011820,periodEnd#1011821,qty#1011822]"];
}
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#1028185L ASC NULLS FIRST, cachedShardId#1028184 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#1028185L, cachedShardId#1028184, 37), ENSURE_REQUIREMENTS, [plan_id=1678430]"];
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#1028178 AS cachedShardId#1028184, worklistShardItemId#1028179L AS cachedWorklistShardItemId#1028185L, qty#1028180 AS cachedQty#1028186, demandChannel#1028181, demandStream#1028182, kpis#1028183 AS cachedKpis#1028187]"];
100 [id="node100" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#1028179L) AND isnotnull(shardId#1028178))"];
101 [id="node101" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#1028178,worklistShardItemId#1028179L,qty#1028180,demandChannel#1028181,demandStream#1028182,kpis#1028183]"];
}
subgraph cluster102 {
isCluster="true";
id="cluster102";
label="WholeStageCodegen (2)\n \nduration: total (min, med, max (stageId: taskId))\n697 ms (0 ms, 0 ms, 638 ms (stage 106331.0: task 354070))";
tooltip="WholeStageCodegen (2)";
103 [id="node103" labelType="html" label="<b>Filter</b><br><br>number of output rows: 66" tooltip="Filter (isnotnull(shardId#1031795) AND isnotnull(worklistShardItemId#1031796L))"];
}
104 [id="node104" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 66" tooltip="InMemoryTableScan [shardId#1031795, worklistShardItemId#1031796L, qty#1030977, demandChannel#1030957, demandStream#1030958, kpis#1030986], [isnotnull(shardId#1031795), isnotnull(worklistShardItemId#1031796L)]"];
105 [id="node105" labelType="html" label="<b>SortAggregate</b><br><br>number of output rows: 0" tooltip="SortAggregate(key=[demandChannel#1030957, shardId#1011815, qty#1030977, worklistShardItemId#1011816L, demandStream#1030958], functions=[first(kpis#1030986, 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#1030957 ASC NULLS FIRST, shardId#1011815 ASC NULLS FIRST, qty#1030977 ASC NULLS FIRST, worklistShardItemId#1011816L ASC NULLS FIRST, demandStream#1030958 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#1030957, shardId#1011815, qty#1030977, worklistShardItemId#1011816L, demandStream#1030958, 37), ENSURE_REQUIREMENTS, [plan_id=1679354]"];
109 [id="node109" labelType="html" label="<b>SortAggregate</b><br><br>number of output rows: 0" tooltip="SortAggregate(key=[demandChannel#1030957, shardId#1011815, knownfloatingpointnormalized(normalizenanandzero(qty#1030977)) AS qty#1030977, worklistShardItemId#1011816L, demandStream#1030958], functions=[partial_first(kpis#1030986, 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#1030957 ASC NULLS FIRST, shardId#1011815 ASC NULLS FIRST, knownfloatingpointnormalized(normalizenanandzero(qty#1030977)) AS qty#1030977 ASC NULLS FIRST, worklistShardItemId#1011816L ASC NULLS FIRST, demandStream#1030958 ASC NULLS FIRST], false, 0"];
112 [id="node112" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#1011815, worklistShardItemId#1011816L, qty#1030977, demandChannel#1030957, demandStream#1030958, kpis#1030986]"];
113 [id="node113" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [coalesce(product#1030950, ), isnull(product#1030950), coalesce(plant#1030951, ), isnull(plant#1030951)], [coalesce(product#1011818, ), isnull(product#1011818), coalesce(plant#1011819, ), isnull(plant#1011819)], Inner, BuildRight, ((qty#1030977 <=> qty#1011822) OR isnull(qty#1011822)), 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#1030931.productId AS product#1030950, prodPlantResults#1030931.plantId AS plant#1030951, null AS qty#1030977, null AS demandChannel#1030957, null AS demandStream#1030958, transform(prodPlantResults#1030931.kpiResults, lambdafunction(struct(label, lambda kpi#1030987.label, dateTime, lambda kpi#1030987.datetime, value, lambda kpi#1030987.value), lambda kpi#1030987, false)) AS kpis#1030986]"];
116 [id="node116" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [prodPlantResults#1030931]"];
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#1030924), false, [prodPlantResults#1030931]"];
119 [id="node119" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [prodPlantResults#1030924]"];
120 [id="node120" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter ((size(prodPlantResults#1030924, true) > 0) AND isnotnull(prodPlantResults#1030924))"];
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#1030923, 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#1030924]"];
}
122 [id="node122" labelType="html" label="<br><b>Scan</b><br><br>" tooltip="Scan[obj#1030920]"];
123 [id="node123" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [_extract_productId#1031122 AS product#1030937, _extract_plantId#1031123 AS plant#1030938, quantityKpiResults#1030943.quantity AS qty#1030944, null AS demandChannel#1030946, null AS demandStream#1030947, transform(quantityKpiResults#1030943.kpiResults, lambdafunction(struct(label, lambda kpi#1030987.label, dateTime, lambda kpi#1030987.datetime, value, lambda kpi#1030987.value), lambda kpi#1030987, false)) AS kpis#1031120]"];
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#1031124), [_extract_productId#1031122, _extract_plantId#1031123], false, [quantityKpiResults#1030943]"];
126 [id="node126" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [prodPlantResults#1030976.productId AS _extract_productId#1031122, prodPlantResults#1030976.plantId AS _extract_plantId#1031123, prodPlantResults#1030976.quantityKpiResults AS _extract_quantityKpiResults#1031124]"];
127 [id="node127" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((size(prodPlantResults#1030976.quantityKpiResults, true) > 0) AND isnotnull(prodPlantResults#1030976.quantityKpiResults))"];
}
128 [id="node128" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [prodPlantResults#1030976], [(size(prodPlantResults#1030976.quantityKpiResults, true) > 0), isnotnull(prodPlantResults#1030976.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#1030924), false, [prodPlantResults#1030931]"];
131 [id="node131" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [prodPlantResults#1030924]"];
132 [id="node132" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter ((size(prodPlantResults#1030924, true) > 0) AND isnotnull(prodPlantResults#1030924))"];
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#1030923, 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#1030924]"];
}
134 [id="node134" labelType="html" label="<br><b>Scan</b><br><br>" tooltip="Scan[obj#1030920]"];
135 [id="node135" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [_extract_productId#1031125 AS product#1030959, _extract_plantId#1031126 AS plant#1030960, null AS qty#1030982, demandChannelStreamKpiResults#1030965.demandChannel AS demandChannel#1030967, demandChannelStreamKpiResults#1030965.demandStream AS demandStream#1030969, transform(demandChannelStreamKpiResults#1030965.kpiResults, lambdafunction(struct(label, lambda kpi#1030987.label, dateTime, lambda kpi#1030987.datetime, value, lambda kpi#1030987.value), lambda kpi#1030987, false)) AS kpis#1031121]"];
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#1031127), [_extract_productId#1031125, _extract_plantId#1031126], false, [demandChannelStreamKpiResults#1030965]"];
138 [id="node138" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [prodPlantResults#1030981.productId AS _extract_productId#1031125, prodPlantResults#1030981.plantId AS _extract_plantId#1031126, prodPlantResults#1030981.demandChannelStreamKpiResults AS _extract_demandChannelStreamKpiResults#1031127]"];
139 [id="node139" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((size(prodPlantResults#1030981.demandChannelStreamKpiResults, true) > 0) AND isnotnull(prodPlantResults#1030981.demandChannelStreamKpiResults))"];
}
140 [id="node140" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [prodPlantResults#1030981], [(size(prodPlantResults#1030981.demandChannelStreamKpiResults, true) > 0), isnotnull(prodPlantResults#1030981.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#1030924), false, [prodPlantResults#1030931]"];
143 [id="node143" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [prodPlantResults#1030924]"];
144 [id="node144" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter ((size(prodPlantResults#1030924, true) > 0) AND isnotnull(prodPlantResults#1030924))"];
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#1030923, 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#1030924]"];
}
146 [id="node146" labelType="html" label="<br><b>Scan</b><br><br>" tooltip="Scan[obj#1030920]"];
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=1679347]"];
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#1011819, shardId#1011815, qty#1011822, worklistShardItemId#1011816L, product#1011818], 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#1011819, shardId#1011815, qty#1011822, worklistShardItemId#1011816L, product#1011818, 37), ENSURE_REQUIREMENTS, [plan_id=1679343]"];
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#1011819, shardId#1011815, knownfloatingpointnormalized(normalizenanandzero(qty#1011822)) AS qty#1011822, worklistShardItemId#1011816L, product#1011818], functions=[])"];
153 [id="node153" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#1011815, worklistShardItemId#1011816L, product#1011818, plant#1011819, qty#1011822]"];
154 [id="node154" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter isNewlyCalculated#1028424: boolean"];
}
155 [id="node155" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [isNewlyCalculated#1028424, plant#1011819, product#1011818, qty#1011822, shardId#1011815, worklistShardItemId#1011816L], [isNewlyCalculated#1028424]"];
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#1011815, worklistShardItemId#1011816L, version#1011817, product#1011818, plant#1011819, qty#1011822, null AS demandChannel#1028421, null AS demandStream#1028422, [] AS kpis#1028456, true AS isNewlyCalculated#1028424]"];
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#1011815, ), isnull(shardId#1011815), coalesce(worklistShardItemId#1011816L, 0), isnull(worklistShardItemId#1011816L), coalesce(version#1011817, 0), isnull(version#1011817), coalesce(product#1011818, ), isnull(product#1011818), coalesce(plant#1011819, ), isnull(plant#1011819), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#1011822, 0.0))), isnull(qty#1011822)], [coalesce(shardId#1028413, ), isnull(shardId#1028413), coalesce(worklistShardItemId#1028414L, 0), isnull(worklistShardItemId#1028414L), coalesce(version#1028415, 0), isnull(version#1028415), coalesce(product#1028416, ), isnull(product#1028416), coalesce(plant#1028417, ), isnull(plant#1028417), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#1028188, 0.0))), isnull(qty#1028188)], 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#1011815, ) ASC NULLS FIRST, isnull(shardId#1011815) ASC NULLS FIRST, coalesce(worklistShardItemId#1011816L, 0) ASC NULLS FIRST, isnull(worklistShardItemId#1011816L) ASC NULLS FIRST, coalesce(version#1011817, 0) ASC NULLS FIRST, isnull(version#1011817) ASC NULLS FIRST, coalesce(product#1011818, ) ASC NULLS FIRST, isnull(product#1011818) ASC NULLS FIRST, coalesce(plant#1011819, ) ASC NULLS FIRST, isnull(plant#1011819) ASC NULLS FIRST, knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#1011822, 0.0))) ASC NULLS FIRST, isnull(qty#1011822) 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#1011815, ), isnull(shardId#1011815), coalesce(worklistShardItemId#1011816L, 0), isnull(worklistShardItemId#1011816L), coalesce(version#1011817, 0), isnull(version#1011817), coalesce(product#1011818, ), isnull(product#1011818), coalesce(plant#1011819, ), isnull(plant#1011819), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#1011822, 0.0))), isnull(qty#1011822), 37), ENSURE_REQUIREMENTS, [plan_id=1678536]"];
163 [id="node163" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#1011815, worklistShardItemId#1011816L, version#1011817, product#1011818, plant#1011819, qty#1011822]"];
164 [id="node164" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#1011818, plant#1011819, 37), REPARTITION_BY_NUM, [plan_id=1678306]"];
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#1011815,worklistShardItemId#1011816L,version#1011817,product#1011818,plant#1011819,periodStart#1011820,periodEnd#1011821,qty#1011822]"];
}
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#1028413, ) ASC NULLS FIRST, isnull(shardId#1028413) ASC NULLS FIRST, coalesce(worklistShardItemId#1028414L, 0) ASC NULLS FIRST, isnull(worklistShardItemId#1028414L) ASC NULLS FIRST, coalesce(version#1028415, 0) ASC NULLS FIRST, isnull(version#1028415) ASC NULLS FIRST, coalesce(product#1028416, ) ASC NULLS FIRST, isnull(product#1028416) ASC NULLS FIRST, coalesce(plant#1028417, ) ASC NULLS FIRST, isnull(plant#1028417) ASC NULLS FIRST, knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#1028188, 0.0))) ASC NULLS FIRST, isnull(qty#1028188) 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#1028413, ), isnull(shardId#1028413), coalesce(worklistShardItemId#1028414L, 0), isnull(worklistShardItemId#1028414L), coalesce(version#1028415, 0), isnull(version#1028415), coalesce(product#1028416, ), isnull(product#1028416), coalesce(plant#1028417, ), isnull(plant#1028417), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#1028188, 0.0))), isnull(qty#1028188), 37), ENSURE_REQUIREMENTS, [plan_id=1678556]"];
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#1028413, worklistShardItemId#1028414L, version#1028415, product#1028416, plant#1028417, qty#1028188]"];
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#1011815, worklistShardItemId#1011816L, version#1011817, product#1011818, plant#1011819, cachedQty#1028186 AS qty#1028188, demandChannel#1028181, demandStream#1028182, cachedKpis#1028187 AS kpis#1028189]"];
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#1011816L, shardId#1011815], [cachedWorklistShardItemId#1028185L, cachedShardId#1028184], 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#1011816L ASC NULLS FIRST, shardId#1011815 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#1011816L, shardId#1011815, 37), ENSURE_REQUIREMENTS, [plan_id=1678424]"];
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#1011819, shardId#1011815, version#1011817, worklistShardItemId#1011816L, product#1011818], 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#1011819, shardId#1011815, version#1011817, worklistShardItemId#1011816L, product#1011818, 37), ENSURE_REQUIREMENTS, [plan_id=1678420]"];
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#1011819, shardId#1011815, version#1011817, worklistShardItemId#1011816L, product#1011818], functions=[])"];
183 [id="node183" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#1011815, worklistShardItemId#1011816L, version#1011817, product#1011818, plant#1011819]"];
184 [id="node184" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#1011816L, shardId#1011815], [cachedWorklistShardItemId#1028175L, cachedShardId#1028174], Inner, BuildLeft, ((qty#1011822 = cachedQty#1028176) OR isnull(qty#1011822)), false"];
192 [id="node192" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#1028168 AS cachedShardId#1028174, worklistShardItemId#1028169L AS cachedWorklistShardItemId#1028175L, qty#1028170 AS cachedQty#1028176]"];
193 [id="node193" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#1028169L) AND isnotnull(shardId#1028168))"];
194 [id="node194" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#1028168,worklistShardItemId#1028169L,qty#1028170,demandChannel#1028171,demandStream#1028172,kpis#1028173]"];
}
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=1678414]"];
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#1011816L) AND isnotnull(shardId#1011815))"];
}
188 [id="node188" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#1011815, worklistShardItemId#1011816L, version#1011817, product#1011818, plant#1011819, qty#1011822], [isnotnull(worklistShardItemId#1011816L), isnotnull(shardId#1011815)]"];
189 [id="node189" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#1011818, plant#1011819, 37), REPARTITION_BY_NUM, [plan_id=1678306]"];
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#1011815,worklistShardItemId#1011816L,version#1011817,product#1011818,plant#1011819,periodStart#1011820,periodEnd#1011821,qty#1011822]"];
}
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#1028185L ASC NULLS FIRST, cachedShardId#1028184 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#1028185L, cachedShardId#1028184, 37), ENSURE_REQUIREMENTS, [plan_id=1678430]"];
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#1028178 AS cachedShardId#1028184, worklistShardItemId#1028179L AS cachedWorklistShardItemId#1028185L, qty#1028180 AS cachedQty#1028186, demandChannel#1028181, demandStream#1028182, kpis#1028183 AS cachedKpis#1028187]"];
200 [id="node200" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#1028179L) AND isnotnull(shardId#1028178))"];
201 [id="node201" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#1028178,worklistShardItemId#1028179L,qty#1028180,demandChannel#1028181,demandStream#1028182,kpis#1028183]"];
}
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#1028395, worklistShardItemId#1028396L, version#1028397, product#1028398, plant#1028399, qty#1028402]"];
204 [id="node204" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#1028396L, shardId#1028395], [cachedWorklistShardItemId#1028410L, cachedShardId#1028409], Inner, BuildLeft, false"];
212 [id="node212" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#1028403 AS cachedShardId#1028409, worklistShardItemId#1028404L AS cachedWorklistShardItemId#1028410L]"];
213 [id="node213" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#1028404L) AND isnotnull(shardId#1028403))"];
214 [id="node214" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#1028403,worklistShardItemId#1028404L,qty#1028405,demandChannel#1028406,demandStream#1028407,kpis#1028408]"];
}
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=1678550]"];
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#1028402) AND isnotnull(worklistShardItemId#1028396L)) AND isnotnull(shardId#1028395))"];
}
208 [id="node208" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#1028395, worklistShardItemId#1028396L, version#1028397, product#1028398, plant#1028399, qty#1028402], [isnull(qty#1028402), isnotnull(worklistShardItemId#1028396L), isnotnull(shardId#1028395)]"];
209 [id="node209" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#1011818, plant#1011819, 37), REPARTITION_BY_NUM, [plan_id=1678306]"];
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#1011815,worklistShardItemId#1011816L,version#1011817,product#1011818,plant#1011819,periodStart#1011820,periodEnd#1011821,qty#1011822]"];
}
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#1028426, worklistShardItemId#1028427L, version#1028428, product#1028429, plant#1028430, qty#1028454, demandChannel#1028447, demandStream#1028448, kpis#1028455, false AS isNewlyCalculated#1028425]"];
}
217 [id="node217" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [demandChannel#1028447, demandStream#1028448, kpis#1028455, plant#1028430, product#1028429, qty#1028454, shardId#1028426, version#1028428, worklistShardItemId#1028427L]"];
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#1011815, worklistShardItemId#1011816L, version#1011817, product#1011818, plant#1011819, cachedQty#1028186 AS qty#1028188, demandChannel#1028181, demandStream#1028182, cachedKpis#1028187 AS kpis#1028189]"];
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#1011816L, shardId#1011815], [cachedWorklistShardItemId#1028185L, cachedShardId#1028184], 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#1011816L ASC NULLS FIRST, shardId#1011815 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#1011816L, shardId#1011815, 37), ENSURE_REQUIREMENTS, [plan_id=1678424]"];
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#1011819, shardId#1011815, version#1011817, worklistShardItemId#1011816L, product#1011818], 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#1011819, shardId#1011815, version#1011817, worklistShardItemId#1011816L, product#1011818, 37), ENSURE_REQUIREMENTS, [plan_id=1678420]"];
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#1011819, shardId#1011815, version#1011817, worklistShardItemId#1011816L, product#1011818], functions=[])"];
229 [id="node229" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#1011815, worklistShardItemId#1011816L, version#1011817, product#1011818, plant#1011819]"];
230 [id="node230" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#1011816L, shardId#1011815], [cachedWorklistShardItemId#1028175L, cachedShardId#1028174], Inner, BuildLeft, ((qty#1011822 = cachedQty#1028176) OR isnull(qty#1011822)), false"];
238 [id="node238" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#1028168 AS cachedShardId#1028174, worklistShardItemId#1028169L AS cachedWorklistShardItemId#1028175L, qty#1028170 AS cachedQty#1028176]"];
239 [id="node239" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#1028169L) AND isnotnull(shardId#1028168))"];
240 [id="node240" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#1028168,worklistShardItemId#1028169L,qty#1028170,demandChannel#1028171,demandStream#1028172,kpis#1028173]"];
}
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=1678414]"];
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#1011816L) AND isnotnull(shardId#1011815))"];
}
234 [id="node234" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#1011815, worklistShardItemId#1011816L, version#1011817, product#1011818, plant#1011819, qty#1011822], [isnotnull(worklistShardItemId#1011816L), isnotnull(shardId#1011815)]"];
235 [id="node235" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#1011818, plant#1011819, 37), REPARTITION_BY_NUM, [plan_id=1678306]"];
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#1011815,worklistShardItemId#1011816L,version#1011817,product#1011818,plant#1011819,periodStart#1011820,periodEnd#1011821,qty#1011822]"];
}
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#1028185L ASC NULLS FIRST, cachedShardId#1028184 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#1028185L, cachedShardId#1028184, 37), ENSURE_REQUIREMENTS, [plan_id=1678430]"];
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#1028178 AS cachedShardId#1028184, worklistShardItemId#1028179L AS cachedWorklistShardItemId#1028185L, qty#1028180 AS cachedQty#1028186, demandChannel#1028181, demandStream#1028182, kpis#1028183 AS cachedKpis#1028187]"];
246 [id="node246" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#1028179L) AND isnotnull(shardId#1028178))"];
247 [id="node247" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#1028178,worklistShardItemId#1028179L,qty#1028180,demandChannel#1028181,demandStream#1028182,kpis#1028183]"];
}
248 [id="node248" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 0 ms<br>time to build: 1 ms<br>time to collect: 285 ms<br>number of output rows: 28<br>data size: 2.0 MiB" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(input[0, string, true], input[1, bigint, true]),false), [plan_id=1679515]"];
subgraph cluster249 {
isCluster="true";
id="cluster249";
label="WholeStageCodegen (4)\n \nduration: total (min, med, max (stageId: taskId))\n22 ms (0 ms, 0 ms, 3 ms (stage 106296.0: task 353954))";
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>13 ms (0 ms, 0 ms, 3 ms (stage 106296.0: task 353941))<br>peak memory total (min, med, max (stageId: taskId))<br>49.3 MiB (256.0 KiB, 2.3 MiB, 2.3 MiB (stage 106296.0: task 353944))<br>number of output rows: 28<br>number of sort fallback tasks: 0<br>avg hash probes per key (min, med, max (stageId: taskId)):<br>(1, 1, 1 (stage 106296.0: task 353944))" tooltip="HashAggregate(keys=[shardId#1031887, worklistShardItemId#1031888L], functions=[max(version#1031889)])"];
}
251 [id="node251" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 66<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 66<br>local bytes read total (min, med, max (stageId: taskId))<br>4.5 KiB (100.0 B, 200.0 B, 600.0 B (stage 106296.0: task 353954))<br>merged fetch fallback count: 0<br>local blocks read: 46<br>remote merged chunks fetched: 0<br>remote blocks read: 20<br>data size total (min, med, max (stageId: taskId))<br>3.1 KiB (48.0 B, 96.0 B, 240.0 B (stage 106295.0: task 353892))<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>19 ms (0 ms, 0 ms, 0 ms (stage 106295.0: task 353869))<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>5 ms (0 ms, 0 ms, 2 ms (stage 106296.0: task 353941))<br>remote bytes read total (min, med, max (stageId: taskId))<br>2000.0 B (100.0 B, 101.0 B, 400.0 B (stage 106296.0: task 353949))<br>number of partitions: 37<br>remote reqs duration total (min, med, max (stageId: taskId))<br>12 ms (0 ms, 0 ms, 3 ms (stage 106296.0: task 353954))<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>6.4 KiB (99.0 B, 200.0 B, 500.0 B (stage 106295.0: task 353892))" tooltip="Exchange hashpartitioning(shardId#1031887, worklistShardItemId#1031888L, 37), ENSURE_REQUIREMENTS, [plan_id=1679511]"];
subgraph cluster252 {
isCluster="true";
id="cluster252";
label="WholeStageCodegen (3)\n \nduration: total (min, med, max (stageId: taskId))\n789 ms (0 ms, 1 ms, 72 ms (stage 106295.0: task 353865))";
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>22 ms (0 ms, 0 ms, 4 ms (stage 106295.0: task 353867))<br>peak memory total (min, med, max (stageId: taskId))<br>18.5 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 106295.0: task 353872))<br>number of output rows: 66<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[shardId#1031887, worklistShardItemId#1031888L], functions=[partial_max(version#1031889)])"];
254 [id="node254" labelType="html" label="<b>Filter</b><br><br>number of output rows: 66" tooltip="Filter (isnotnull(shardId#1031887) AND isnotnull(worklistShardItemId#1031888L))"];
}
255 [id="node255" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 66" tooltip="InMemoryTableScan [shardId#1031887, worklistShardItemId#1031888L, version#1031889], [isnotnull(shardId#1031887), isnotnull(worklistShardItemId#1031888L)]"];
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#1011815, worklistShardItemId#1011816L, version#1011817, product#1011818, plant#1011819, qty#1011822, null AS demandChannel#1028421, null AS demandStream#1028422, [] AS kpis#1028456, true AS isNewlyCalculated#1028424]"];
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#1011815, ), isnull(shardId#1011815), coalesce(worklistShardItemId#1011816L, 0), isnull(worklistShardItemId#1011816L), coalesce(version#1011817, 0), isnull(version#1011817), coalesce(product#1011818, ), isnull(product#1011818), coalesce(plant#1011819, ), isnull(plant#1011819), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#1011822, 0.0))), isnull(qty#1011822)], [coalesce(shardId#1028413, ), isnull(shardId#1028413), coalesce(worklistShardItemId#1028414L, 0), isnull(worklistShardItemId#1028414L), coalesce(version#1028415, 0), isnull(version#1028415), coalesce(product#1028416, ), isnull(product#1028416), coalesce(plant#1028417, ), isnull(plant#1028417), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#1028188, 0.0))), isnull(qty#1028188)], 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#1011815, ) ASC NULLS FIRST, isnull(shardId#1011815) ASC NULLS FIRST, coalesce(worklistShardItemId#1011816L, 0) ASC NULLS FIRST, isnull(worklistShardItemId#1011816L) ASC NULLS FIRST, coalesce(version#1011817, 0) ASC NULLS FIRST, isnull(version#1011817) ASC NULLS FIRST, coalesce(product#1011818, ) ASC NULLS FIRST, isnull(product#1011818) ASC NULLS FIRST, coalesce(plant#1011819, ) ASC NULLS FIRST, isnull(plant#1011819) ASC NULLS FIRST, knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#1011822, 0.0))) ASC NULLS FIRST, isnull(qty#1011822) 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#1011815, ), isnull(shardId#1011815), coalesce(worklistShardItemId#1011816L, 0), isnull(worklistShardItemId#1011816L), coalesce(version#1011817, 0), isnull(version#1011817), coalesce(product#1011818, ), isnull(product#1011818), coalesce(plant#1011819, ), isnull(plant#1011819), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#1011822, 0.0))), isnull(qty#1011822), 37), ENSURE_REQUIREMENTS, [plan_id=1678536]"];
263 [id="node263" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#1011815, worklistShardItemId#1011816L, version#1011817, product#1011818, plant#1011819, qty#1011822]"];
264 [id="node264" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#1011818, plant#1011819, 37), REPARTITION_BY_NUM, [plan_id=1678306]"];
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#1011815,worklistShardItemId#1011816L,version#1011817,product#1011818,plant#1011819,periodStart#1011820,periodEnd#1011821,qty#1011822]"];
}
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#1028413, ) ASC NULLS FIRST, isnull(shardId#1028413) ASC NULLS FIRST, coalesce(worklistShardItemId#1028414L, 0) ASC NULLS FIRST, isnull(worklistShardItemId#1028414L) ASC NULLS FIRST, coalesce(version#1028415, 0) ASC NULLS FIRST, isnull(version#1028415) ASC NULLS FIRST, coalesce(product#1028416, ) ASC NULLS FIRST, isnull(product#1028416) ASC NULLS FIRST, coalesce(plant#1028417, ) ASC NULLS FIRST, isnull(plant#1028417) ASC NULLS FIRST, knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#1028188, 0.0))) ASC NULLS FIRST, isnull(qty#1028188) 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#1028413, ), isnull(shardId#1028413), coalesce(worklistShardItemId#1028414L, 0), isnull(worklistShardItemId#1028414L), coalesce(version#1028415, 0), isnull(version#1028415), coalesce(product#1028416, ), isnull(product#1028416), coalesce(plant#1028417, ), isnull(plant#1028417), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#1028188, 0.0))), isnull(qty#1028188), 37), ENSURE_REQUIREMENTS, [plan_id=1678556]"];
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#1028413, worklistShardItemId#1028414L, version#1028415, product#1028416, plant#1028417, qty#1028188]"];
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#1011815, worklistShardItemId#1011816L, version#1011817, product#1011818, plant#1011819, cachedQty#1028186 AS qty#1028188, demandChannel#1028181, demandStream#1028182, cachedKpis#1028187 AS kpis#1028189]"];
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#1011816L, shardId#1011815], [cachedWorklistShardItemId#1028185L, cachedShardId#1028184], 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#1011816L ASC NULLS FIRST, shardId#1011815 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#1011816L, shardId#1011815, 37), ENSURE_REQUIREMENTS, [plan_id=1678424]"];
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#1011819, shardId#1011815, version#1011817, worklistShardItemId#1011816L, product#1011818], 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#1011819, shardId#1011815, version#1011817, worklistShardItemId#1011816L, product#1011818, 37), ENSURE_REQUIREMENTS, [plan_id=1678420]"];
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#1011819, shardId#1011815, version#1011817, worklistShardItemId#1011816L, product#1011818], functions=[])"];
283 [id="node283" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#1011815, worklistShardItemId#1011816L, version#1011817, product#1011818, plant#1011819]"];
284 [id="node284" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#1011816L, shardId#1011815], [cachedWorklistShardItemId#1028175L, cachedShardId#1028174], Inner, BuildLeft, ((qty#1011822 = cachedQty#1028176) OR isnull(qty#1011822)), false"];
292 [id="node292" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#1028168 AS cachedShardId#1028174, worklistShardItemId#1028169L AS cachedWorklistShardItemId#1028175L, qty#1028170 AS cachedQty#1028176]"];
293 [id="node293" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#1028169L) AND isnotnull(shardId#1028168))"];
294 [id="node294" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#1028168,worklistShardItemId#1028169L,qty#1028170,demandChannel#1028171,demandStream#1028172,kpis#1028173]"];
}
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=1678414]"];
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#1011816L) AND isnotnull(shardId#1011815))"];
}
288 [id="node288" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#1011815, worklistShardItemId#1011816L, version#1011817, product#1011818, plant#1011819, qty#1011822], [isnotnull(worklistShardItemId#1011816L), isnotnull(shardId#1011815)]"];
289 [id="node289" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#1011818, plant#1011819, 37), REPARTITION_BY_NUM, [plan_id=1678306]"];
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#1011815,worklistShardItemId#1011816L,version#1011817,product#1011818,plant#1011819,periodStart#1011820,periodEnd#1011821,qty#1011822]"];
}
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#1028185L ASC NULLS FIRST, cachedShardId#1028184 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#1028185L, cachedShardId#1028184, 37), ENSURE_REQUIREMENTS, [plan_id=1678430]"];
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#1028178 AS cachedShardId#1028184, worklistShardItemId#1028179L AS cachedWorklistShardItemId#1028185L, qty#1028180 AS cachedQty#1028186, demandChannel#1028181, demandStream#1028182, kpis#1028183 AS cachedKpis#1028187]"];
300 [id="node300" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#1028179L) AND isnotnull(shardId#1028178))"];
301 [id="node301" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#1028178,worklistShardItemId#1028179L,qty#1028180,demandChannel#1028181,demandStream#1028182,kpis#1028183]"];
}
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#1028395, worklistShardItemId#1028396L, version#1028397, product#1028398, plant#1028399, qty#1028402]"];
304 [id="node304" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#1028396L, shardId#1028395], [cachedWorklistShardItemId#1028410L, cachedShardId#1028409], Inner, BuildLeft, false"];
312 [id="node312" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#1028403 AS cachedShardId#1028409, worklistShardItemId#1028404L AS cachedWorklistShardItemId#1028410L]"];
313 [id="node313" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#1028404L) AND isnotnull(shardId#1028403))"];
314 [id="node314" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#1028403,worklistShardItemId#1028404L,qty#1028405,demandChannel#1028406,demandStream#1028407,kpis#1028408]"];
}
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=1678550]"];
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#1028402) AND isnotnull(worklistShardItemId#1028396L)) AND isnotnull(shardId#1028395))"];
}
308 [id="node308" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#1028395, worklistShardItemId#1028396L, version#1028397, product#1028398, plant#1028399, qty#1028402], [isnull(qty#1028402), isnotnull(worklistShardItemId#1028396L), isnotnull(shardId#1028395)]"];
309 [id="node309" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#1011818, plant#1011819, 37), REPARTITION_BY_NUM, [plan_id=1678306]"];
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#1011815,worklistShardItemId#1011816L,version#1011817,product#1011818,plant#1011819,periodStart#1011820,periodEnd#1011821,qty#1011822]"];
}
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#1028426, worklistShardItemId#1028427L, version#1028428, product#1028429, plant#1028430, qty#1028454, demandChannel#1028447, demandStream#1028448, kpis#1028455, false AS isNewlyCalculated#1028425]"];
}
317 [id="node317" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [demandChannel#1028447, demandStream#1028448, kpis#1028455, plant#1028430, product#1028429, qty#1028454, shardId#1028426, version#1028428, worklistShardItemId#1028427L]"];
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#1011815, worklistShardItemId#1011816L, version#1011817, product#1011818, plant#1011819, cachedQty#1028186 AS qty#1028188, demandChannel#1028181, demandStream#1028182, cachedKpis#1028187 AS kpis#1028189]"];
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#1011816L, shardId#1011815], [cachedWorklistShardItemId#1028185L, cachedShardId#1028184], 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#1011816L ASC NULLS FIRST, shardId#1011815 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#1011816L, shardId#1011815, 37), ENSURE_REQUIREMENTS, [plan_id=1678424]"];
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#1011819, shardId#1011815, version#1011817, worklistShardItemId#1011816L, product#1011818], 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#1011819, shardId#1011815, version#1011817, worklistShardItemId#1011816L, product#1011818, 37), ENSURE_REQUIREMENTS, [plan_id=1678420]"];
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#1011819, shardId#1011815, version#1011817, worklistShardItemId#1011816L, product#1011818], functions=[])"];
329 [id="node329" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#1011815, worklistShardItemId#1011816L, version#1011817, product#1011818, plant#1011819]"];
330 [id="node330" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#1011816L, shardId#1011815], [cachedWorklistShardItemId#1028175L, cachedShardId#1028174], Inner, BuildLeft, ((qty#1011822 = cachedQty#1028176) OR isnull(qty#1011822)), false"];
338 [id="node338" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#1028168 AS cachedShardId#1028174, worklistShardItemId#1028169L AS cachedWorklistShardItemId#1028175L, qty#1028170 AS cachedQty#1028176]"];
339 [id="node339" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#1028169L) AND isnotnull(shardId#1028168))"];
340 [id="node340" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#1028168,worklistShardItemId#1028169L,qty#1028170,demandChannel#1028171,demandStream#1028172,kpis#1028173]"];
}
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=1678414]"];
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#1011816L) AND isnotnull(shardId#1011815))"];
}
334 [id="node334" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#1011815, worklistShardItemId#1011816L, version#1011817, product#1011818, plant#1011819, qty#1011822], [isnotnull(worklistShardItemId#1011816L), isnotnull(shardId#1011815)]"];
335 [id="node335" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#1011818, plant#1011819, 37), REPARTITION_BY_NUM, [plan_id=1678306]"];
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#1011815,worklistShardItemId#1011816L,version#1011817,product#1011818,plant#1011819,periodStart#1011820,periodEnd#1011821,qty#1011822]"];
}
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#1028185L ASC NULLS FIRST, cachedShardId#1028184 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#1028185L, cachedShardId#1028184, 37), ENSURE_REQUIREMENTS, [plan_id=1678430]"];
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#1028178 AS cachedShardId#1028184, worklistShardItemId#1028179L AS cachedWorklistShardItemId#1028185L, qty#1028180 AS cachedQty#1028186, demandChannel#1028181, demandStream#1028182, kpis#1028183 AS cachedKpis#1028187]"];
346 [id="node346" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#1028179L) AND isnotnull(shardId#1028178))"];
347 [id="node347" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#1028178,worklistShardItemId#1028179L,qty#1028180,demandChannel#1028181,demandStream#1028182,kpis#1028183]"];
}
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;
}