digraph G {
0 [id="node0" labelType="html" label="<b>CollectLimit</b><br><br>shuffle records written: 37<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 1<br>local bytes read: 1116.0 B<br>merged fetch fallback count: 0<br>local blocks read: 18<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>5 ms (0 ms, 0 ms, 0 ms (stage 102269.0: task 335584))<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>2.2 KiB (62.0 B, 62.0 B, 62.0 B (stage 102269.0: task 335566))" tooltip="CollectLimit 1"];
1 [id="node1" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 1,117" tooltip="InMemoryTableScan"];
subgraph cluster2 {
isCluster="true";
id="cluster2";
label="WholeStageCodegen (5)\n \nduration: total (min, med, max (stageId: taskId))\n2.5 s (0 ms, 0 ms, 613 ms (stage 102269.0: task 335588))";
tooltip="WholeStageCodegen (5)";
3 [id="node3" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#943631, worklistShardItemId#943632L, version#976795, qty#943638, demandChannel#973426, demandStream#973427, kpis#973461]"];
4 [id="node4" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 1,117" tooltip="BroadcastHashJoin [shardId#943631, worklistShardItemId#943632L], [shardId#976892, worklistShardItemId#976893L], 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))\n659 ms (0 ms, 0 ms, 78 ms (stage 102269.0: task 335499))";
tooltip="WholeStageCodegen (1)";
7 [id="node7" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#943631, worklistShardItemId#943632L, qty#943638, demandChannel#973426, demandStream#973427, kpis#973461]"];
8 [id="node8" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((NOT isNewlyCalculated#973429 AND isnotnull(shardId#943631)) AND isnotnull(worklistShardItemId#943632L))"];
}
9 [id="node9" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 1,117" tooltip="InMemoryTableScan [demandChannel#973426, demandStream#973427, isNewlyCalculated#973429, kpis#973461, qty#943638, shardId#943631, worklistShardItemId#943632L], [NOT isNewlyCalculated#973429, isnotnull(shardId#943631), isnotnull(worklistShardItemId#943632L)]"];
10 [id="node10" labelType="html" label="<br><b>Union</b><br><br>" tooltip="Union"];
subgraph cluster11 {
isCluster="true";
id="cluster11";
label="WholeStageCodegen (5)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (5)";
12 [id="node12" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, qty#943638, null AS demandChannel#973426, null AS demandStream#973427, [] AS kpis#973461, true AS isNewlyCalculated#973429]"];
13 [id="node13" labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 0<br>spill size: 0.0 B" tooltip="SortMergeJoin [coalesce(shardId#943631, ), isnull(shardId#943631), coalesce(worklistShardItemId#943632L, 0), isnull(worklistShardItemId#943632L), coalesce(version#943633, 0), isnull(version#943633), coalesce(product#943634, ), isnull(product#943634), coalesce(plant#943635, ), isnull(plant#943635), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#943638, 0.0))), isnull(qty#943638)], [coalesce(shardId#973418, ), isnull(shardId#973418), coalesce(worklistShardItemId#973419L, 0), isnull(worklistShardItemId#973419L), coalesce(version#973420, 0), isnull(version#973420), coalesce(product#973421, ), isnull(product#973421), coalesce(plant#973422, ), isnull(plant#973422), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#973193, 0.0))), isnull(qty#973193)], LeftAnti"];
}
subgraph cluster14 {
isCluster="true";
id="cluster14";
label="WholeStageCodegen (1)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (1)";
15 [id="node15" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [coalesce(shardId#943631, ) ASC NULLS FIRST, isnull(shardId#943631) ASC NULLS FIRST, coalesce(worklistShardItemId#943632L, 0) ASC NULLS FIRST, isnull(worklistShardItemId#943632L) ASC NULLS FIRST, coalesce(version#943633, 0) ASC NULLS FIRST, isnull(version#943633) ASC NULLS FIRST, coalesce(product#943634, ) ASC NULLS FIRST, isnull(product#943634) ASC NULLS FIRST, coalesce(plant#943635, ) ASC NULLS FIRST, isnull(plant#943635) ASC NULLS FIRST, knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#943638, 0.0))) ASC NULLS FIRST, isnull(qty#943638) ASC NULLS FIRST], false, 0"];
}
16 [id="node16" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(coalesce(shardId#943631, ), isnull(shardId#943631), coalesce(worklistShardItemId#943632L, 0), isnull(worklistShardItemId#943632L), coalesce(version#943633, 0), isnull(version#943633), coalesce(product#943634, ), isnull(product#943634), coalesce(plant#943635, ), isnull(plant#943635), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#943638, 0.0))), isnull(qty#943638), 37), ENSURE_REQUIREMENTS, [plan_id=1622657]"];
17 [id="node17" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, qty#943638]"];
18 [id="node18" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#943634, plant#943635, 37), REPARTITION_BY_NUM, [plan_id=1622427]"];
subgraph cluster19 {
isCluster="true";
id="cluster19";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
20 [id="node20" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#943631,worklistShardItemId#943632L,version#943633,product#943634,plant#943635,periodStart#943636,periodEnd#943637,qty#943638]"];
}
subgraph cluster21 {
isCluster="true";
id="cluster21";
label="WholeStageCodegen (4)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (4)";
22 [id="node22" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [coalesce(shardId#973418, ) ASC NULLS FIRST, isnull(shardId#973418) ASC NULLS FIRST, coalesce(worklistShardItemId#973419L, 0) ASC NULLS FIRST, isnull(worklistShardItemId#973419L) ASC NULLS FIRST, coalesce(version#973420, 0) ASC NULLS FIRST, isnull(version#973420) ASC NULLS FIRST, coalesce(product#973421, ) ASC NULLS FIRST, isnull(product#973421) ASC NULLS FIRST, coalesce(plant#973422, ) ASC NULLS FIRST, isnull(plant#973422) ASC NULLS FIRST, knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#973193, 0.0))) ASC NULLS FIRST, isnull(qty#973193) 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#973418, ), isnull(shardId#973418), coalesce(worklistShardItemId#973419L, 0), isnull(worklistShardItemId#973419L), coalesce(version#973420, 0), isnull(version#973420), coalesce(product#973421, ), isnull(product#973421), coalesce(plant#973422, ), isnull(plant#973422), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#973193, 0.0))), isnull(qty#973193), 37), ENSURE_REQUIREMENTS, [plan_id=1622677]"];
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#973418, worklistShardItemId#973419L, version#973420, product#973421, plant#973422, qty#973193]"];
subgraph cluster26 {
isCluster="true";
id="cluster26";
label="WholeStageCodegen (7)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (7)";
27 [id="node27" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, cachedQty#973191 AS qty#973193, demandChannel#973186, demandStream#973187, cachedKpis#973192 AS kpis#973194]"];
28 [id="node28" labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 0<br>spill size: 0.0 B" tooltip="SortMergeJoin [worklistShardItemId#943632L, shardId#943631], [cachedWorklistShardItemId#973190L, cachedShardId#973189], Inner"];
}
subgraph cluster29 {
isCluster="true";
id="cluster29";
label="WholeStageCodegen (4)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (4)";
30 [id="node30" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [worklistShardItemId#943632L ASC NULLS FIRST, shardId#943631 ASC NULLS FIRST], false, 0"];
}
31 [id="node31" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(worklistShardItemId#943632L, shardId#943631, 37), ENSURE_REQUIREMENTS, [plan_id=1622545]"];
subgraph cluster32 {
isCluster="true";
id="cluster32";
label="WholeStageCodegen (3)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (3)";
33 [id="node33" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 0 ms<br>peak memory: 0.0 B<br>number of output rows: 0<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[plant#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634], functions=[])"];
}
34 [id="node34" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(plant#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634, 37), ENSURE_REQUIREMENTS, [plan_id=1622541]"];
subgraph cluster35 {
isCluster="true";
id="cluster35";
label="WholeStageCodegen (2)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (2)";
36 [id="node36" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 0 ms<br>peak memory: 0.0 B<br>number of output rows: 0<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[plant#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634], functions=[])"];
37 [id="node37" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635]"];
38 [id="node38" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#943632L, shardId#943631], [cachedWorklistShardItemId#973180L, cachedShardId#973179], Inner, BuildLeft, ((qty#943638 = cachedQty#973181) OR isnull(qty#943638)), false"];
46 [id="node46" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#973173 AS cachedShardId#973179, worklistShardItemId#973174L AS cachedWorklistShardItemId#973180L, qty#973175 AS cachedQty#973181]"];
47 [id="node47" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#973174L) AND isnotnull(shardId#973173))"];
48 [id="node48" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#973173,worklistShardItemId#973174L,qty#973175,demandChannel#973176,demandStream#973177,kpis#973178]"];
}
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=1622535]"];
subgraph cluster40 {
isCluster="true";
id="cluster40";
label="WholeStageCodegen (1)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (1)";
41 [id="node41" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#943632L) AND isnotnull(shardId#943631))"];
}
42 [id="node42" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, qty#943638], [isnotnull(worklistShardItemId#943632L), isnotnull(shardId#943631)]"];
43 [id="node43" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#943634, plant#943635, 37), REPARTITION_BY_NUM, [plan_id=1622427]"];
subgraph cluster44 {
isCluster="true";
id="cluster44";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
45 [id="node45" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#943631,worklistShardItemId#943632L,version#943633,product#943634,plant#943635,periodStart#943636,periodEnd#943637,qty#943638]"];
}
subgraph cluster49 {
isCluster="true";
id="cluster49";
label="WholeStageCodegen (6)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (6)";
50 [id="node50" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [cachedWorklistShardItemId#973190L ASC NULLS FIRST, cachedShardId#973189 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#973190L, cachedShardId#973189, 37), ENSURE_REQUIREMENTS, [plan_id=1622551]"];
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#973183 AS cachedShardId#973189, worklistShardItemId#973184L AS cachedWorklistShardItemId#973190L, qty#973185 AS cachedQty#973191, demandChannel#973186, demandStream#973187, kpis#973188 AS cachedKpis#973192]"];
54 [id="node54" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#973184L) AND isnotnull(shardId#973183))"];
55 [id="node55" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#973183,worklistShardItemId#973184L,qty#973185,demandChannel#973186,demandStream#973187,kpis#973188]"];
}
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#973400, worklistShardItemId#973401L, version#973402, product#973403, plant#973404, qty#973407]"];
58 [id="node58" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#973401L, shardId#973400], [cachedWorklistShardItemId#973415L, cachedShardId#973414], Inner, BuildLeft, false"];
66 [id="node66" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#973408 AS cachedShardId#973414, worklistShardItemId#973409L AS cachedWorklistShardItemId#973415L]"];
67 [id="node67" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#973409L) AND isnotnull(shardId#973408))"];
68 [id="node68" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#973408,worklistShardItemId#973409L,qty#973410,demandChannel#973411,demandStream#973412,kpis#973413]"];
}
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=1622671]"];
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#973407) AND isnotnull(worklistShardItemId#973401L)) AND isnotnull(shardId#973400))"];
}
62 [id="node62" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#973400, worklistShardItemId#973401L, version#973402, product#973403, plant#973404, qty#973407], [isnull(qty#973407), isnotnull(worklistShardItemId#973401L), isnotnull(shardId#973400)]"];
63 [id="node63" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#943634, plant#943635, 37), REPARTITION_BY_NUM, [plan_id=1622427]"];
subgraph cluster64 {
isCluster="true";
id="cluster64";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
65 [id="node65" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#943631,worklistShardItemId#943632L,version#943633,product#943634,plant#943635,periodStart#943636,periodEnd#943637,qty#943638]"];
}
subgraph cluster69 {
isCluster="true";
id="cluster69";
label="WholeStageCodegen (6)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (6)";
70 [id="node70" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#973431, worklistShardItemId#973432L, version#973433, product#973434, plant#973435, qty#973459, demandChannel#973452, demandStream#973453, kpis#973460, false AS isNewlyCalculated#973430]"];
}
71 [id="node71" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [demandChannel#973452, demandStream#973453, kpis#973460, plant#973435, product#973434, qty#973459, shardId#973431, version#973433, worklistShardItemId#973432L]"];
subgraph cluster72 {
isCluster="true";
id="cluster72";
label="WholeStageCodegen (7)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (7)";
73 [id="node73" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, cachedQty#973191 AS qty#973193, demandChannel#973186, demandStream#973187, cachedKpis#973192 AS kpis#973194]"];
74 [id="node74" labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 0<br>spill size: 0.0 B" tooltip="SortMergeJoin [worklistShardItemId#943632L, shardId#943631], [cachedWorklistShardItemId#973190L, cachedShardId#973189], Inner"];
}
subgraph cluster75 {
isCluster="true";
id="cluster75";
label="WholeStageCodegen (4)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (4)";
76 [id="node76" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [worklistShardItemId#943632L ASC NULLS FIRST, shardId#943631 ASC NULLS FIRST], false, 0"];
}
77 [id="node77" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(worklistShardItemId#943632L, shardId#943631, 37), ENSURE_REQUIREMENTS, [plan_id=1622545]"];
subgraph cluster78 {
isCluster="true";
id="cluster78";
label="WholeStageCodegen (3)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (3)";
79 [id="node79" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 0 ms<br>peak memory: 0.0 B<br>number of output rows: 0<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[plant#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634], functions=[])"];
}
80 [id="node80" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(plant#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634, 37), ENSURE_REQUIREMENTS, [plan_id=1622541]"];
subgraph cluster81 {
isCluster="true";
id="cluster81";
label="WholeStageCodegen (2)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (2)";
82 [id="node82" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 0 ms<br>peak memory: 0.0 B<br>number of output rows: 0<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[plant#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634], functions=[])"];
83 [id="node83" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635]"];
84 [id="node84" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#943632L, shardId#943631], [cachedWorklistShardItemId#973180L, cachedShardId#973179], Inner, BuildLeft, ((qty#943638 = cachedQty#973181) OR isnull(qty#943638)), false"];
92 [id="node92" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#973173 AS cachedShardId#973179, worklistShardItemId#973174L AS cachedWorklistShardItemId#973180L, qty#973175 AS cachedQty#973181]"];
93 [id="node93" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#973174L) AND isnotnull(shardId#973173))"];
94 [id="node94" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#973173,worklistShardItemId#973174L,qty#973175,demandChannel#973176,demandStream#973177,kpis#973178]"];
}
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=1622535]"];
subgraph cluster86 {
isCluster="true";
id="cluster86";
label="WholeStageCodegen (1)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (1)";
87 [id="node87" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#943632L) AND isnotnull(shardId#943631))"];
}
88 [id="node88" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, qty#943638], [isnotnull(worklistShardItemId#943632L), isnotnull(shardId#943631)]"];
89 [id="node89" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#943634, plant#943635, 37), REPARTITION_BY_NUM, [plan_id=1622427]"];
subgraph cluster90 {
isCluster="true";
id="cluster90";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
91 [id="node91" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#943631,worklistShardItemId#943632L,version#943633,product#943634,plant#943635,periodStart#943636,periodEnd#943637,qty#943638]"];
}
subgraph cluster95 {
isCluster="true";
id="cluster95";
label="WholeStageCodegen (6)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (6)";
96 [id="node96" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [cachedWorklistShardItemId#973190L ASC NULLS FIRST, cachedShardId#973189 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#973190L, cachedShardId#973189, 37), ENSURE_REQUIREMENTS, [plan_id=1622551]"];
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#973183 AS cachedShardId#973189, worklistShardItemId#973184L AS cachedWorklistShardItemId#973190L, qty#973185 AS cachedQty#973191, demandChannel#973186, demandStream#973187, kpis#973188 AS cachedKpis#973192]"];
100 [id="node100" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#973184L) AND isnotnull(shardId#973183))"];
101 [id="node101" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#973183,worklistShardItemId#973184L,qty#973185,demandChannel#973186,demandStream#973187,kpis#973188]"];
}
subgraph cluster102 {
isCluster="true";
id="cluster102";
label="WholeStageCodegen (2)\n \nduration: total (min, med, max (stageId: taskId))\n2.4 s (0 ms, 4 ms, 613 ms (stage 102269.0: task 335588))";
tooltip="WholeStageCodegen (2)";
103 [id="node103" labelType="html" label="<b>Filter</b><br><br>number of output rows: 1,117" tooltip="Filter (isnotnull(shardId#976800) AND isnotnull(worklistShardItemId#976801L))"];
}
104 [id="node104" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 1,117" tooltip="InMemoryTableScan [shardId#976800, worklistShardItemId#976801L, qty#975982, demandChannel#975962, demandStream#975963, kpis#975991], [isnotnull(shardId#976800), isnotnull(worklistShardItemId#976801L)]"];
105 [id="node105" labelType="html" label="<b>SortAggregate</b><br><br>number of output rows: 0" tooltip="SortAggregate(key=[demandChannel#975962, shardId#943631, qty#975982, worklistShardItemId#943632L, demandStream#975963], functions=[first(kpis#975991, 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#975962 ASC NULLS FIRST, shardId#943631 ASC NULLS FIRST, qty#975982 ASC NULLS FIRST, worklistShardItemId#943632L ASC NULLS FIRST, demandStream#975963 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#975962, shardId#943631, qty#975982, worklistShardItemId#943632L, demandStream#975963, 37), ENSURE_REQUIREMENTS, [plan_id=1623475]"];
109 [id="node109" labelType="html" label="<b>SortAggregate</b><br><br>number of output rows: 0" tooltip="SortAggregate(key=[demandChannel#975962, shardId#943631, knownfloatingpointnormalized(normalizenanandzero(qty#975982)) AS qty#975982, worklistShardItemId#943632L, demandStream#975963], functions=[partial_first(kpis#975991, 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#975962 ASC NULLS FIRST, shardId#943631 ASC NULLS FIRST, knownfloatingpointnormalized(normalizenanandzero(qty#975982)) AS qty#975982 ASC NULLS FIRST, worklistShardItemId#943632L ASC NULLS FIRST, demandStream#975963 ASC NULLS FIRST], false, 0"];
112 [id="node112" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#943631, worklistShardItemId#943632L, qty#975982, demandChannel#975962, demandStream#975963, kpis#975991]"];
113 [id="node113" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [coalesce(product#975955, ), isnull(product#975955), coalesce(plant#975956, ), isnull(plant#975956)], [coalesce(product#943634, ), isnull(product#943634), coalesce(plant#943635, ), isnull(plant#943635)], Inner, BuildRight, ((qty#975982 <=> qty#943638) OR isnull(qty#943638)), false"];
}
114 [id="node114" labelType="html" label="<br><b>Union</b><br><br>" tooltip="Union"];
115 [id="node115" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [prodPlantResults#975936.productId AS product#975955, prodPlantResults#975936.plantId AS plant#975956, null AS qty#975982, null AS demandChannel#975962, null AS demandStream#975963, transform(prodPlantResults#975936.kpiResults, lambdafunction(struct(label, lambda kpi#975992.label, dateTime, lambda kpi#975992.datetime, value, lambda kpi#975992.value), lambda kpi#975992, false)) AS kpis#975991]"];
116 [id="node116" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [prodPlantResults#975936]"];
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#975929), false, [prodPlantResults#975936]"];
119 [id="node119" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [prodPlantResults#975929]"];
120 [id="node120" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter ((size(prodPlantResults#975929, true) > 0) AND isnotnull(prodPlantResults#975929))"];
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#975928, 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#975929]"];
}
122 [id="node122" labelType="html" label="<br><b>Scan</b><br><br>" tooltip="Scan[obj#975925]"];
123 [id="node123" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [_extract_productId#976127 AS product#975942, _extract_plantId#976128 AS plant#975943, quantityKpiResults#975948.quantity AS qty#975949, null AS demandChannel#975951, null AS demandStream#975952, transform(quantityKpiResults#975948.kpiResults, lambdafunction(struct(label, lambda kpi#975992.label, dateTime, lambda kpi#975992.datetime, value, lambda kpi#975992.value), lambda kpi#975992, false)) AS kpis#976125]"];
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#976129), [_extract_productId#976127, _extract_plantId#976128], false, [quantityKpiResults#975948]"];
126 [id="node126" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [prodPlantResults#975981.productId AS _extract_productId#976127, prodPlantResults#975981.plantId AS _extract_plantId#976128, prodPlantResults#975981.quantityKpiResults AS _extract_quantityKpiResults#976129]"];
127 [id="node127" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((size(prodPlantResults#975981.quantityKpiResults, true) > 0) AND isnotnull(prodPlantResults#975981.quantityKpiResults))"];
}
128 [id="node128" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [prodPlantResults#975981], [(size(prodPlantResults#975981.quantityKpiResults, true) > 0), isnotnull(prodPlantResults#975981.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#975929), false, [prodPlantResults#975936]"];
131 [id="node131" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [prodPlantResults#975929]"];
132 [id="node132" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter ((size(prodPlantResults#975929, true) > 0) AND isnotnull(prodPlantResults#975929))"];
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#975928, 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#975929]"];
}
134 [id="node134" labelType="html" label="<br><b>Scan</b><br><br>" tooltip="Scan[obj#975925]"];
135 [id="node135" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [_extract_productId#976130 AS product#975964, _extract_plantId#976131 AS plant#975965, null AS qty#975987, demandChannelStreamKpiResults#975970.demandChannel AS demandChannel#975972, demandChannelStreamKpiResults#975970.demandStream AS demandStream#975974, transform(demandChannelStreamKpiResults#975970.kpiResults, lambdafunction(struct(label, lambda kpi#975992.label, dateTime, lambda kpi#975992.datetime, value, lambda kpi#975992.value), lambda kpi#975992, false)) AS kpis#976126]"];
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#976132), [_extract_productId#976130, _extract_plantId#976131], false, [demandChannelStreamKpiResults#975970]"];
138 [id="node138" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [prodPlantResults#975986.productId AS _extract_productId#976130, prodPlantResults#975986.plantId AS _extract_plantId#976131, prodPlantResults#975986.demandChannelStreamKpiResults AS _extract_demandChannelStreamKpiResults#976132]"];
139 [id="node139" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((size(prodPlantResults#975986.demandChannelStreamKpiResults, true) > 0) AND isnotnull(prodPlantResults#975986.demandChannelStreamKpiResults))"];
}
140 [id="node140" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [prodPlantResults#975986], [(size(prodPlantResults#975986.demandChannelStreamKpiResults, true) > 0), isnotnull(prodPlantResults#975986.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#975929), false, [prodPlantResults#975936]"];
143 [id="node143" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [prodPlantResults#975929]"];
144 [id="node144" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter ((size(prodPlantResults#975929, true) > 0) AND isnotnull(prodPlantResults#975929))"];
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#975928, 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#975929]"];
}
146 [id="node146" labelType="html" label="<br><b>Scan</b><br><br>" tooltip="Scan[obj#975925]"];
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=1623468]"];
subgraph cluster148 {
isCluster="true";
id="cluster148";
label="WholeStageCodegen (4)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (4)";
149 [id="node149" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 0 ms<br>peak memory: 0.0 B<br>number of output rows: 0<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[plant#943635, shardId#943631, qty#943638, worklistShardItemId#943632L, product#943634], functions=[])"];
}
150 [id="node150" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(plant#943635, shardId#943631, qty#943638, worklistShardItemId#943632L, product#943634, 37), ENSURE_REQUIREMENTS, [plan_id=1623464]"];
subgraph cluster151 {
isCluster="true";
id="cluster151";
label="WholeStageCodegen (3)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (3)";
152 [id="node152" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 0 ms<br>peak memory: 0.0 B<br>number of output rows: 0<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[plant#943635, shardId#943631, knownfloatingpointnormalized(normalizenanandzero(qty#943638)) AS qty#943638, worklistShardItemId#943632L, product#943634], functions=[])"];
153 [id="node153" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#943631, worklistShardItemId#943632L, product#943634, plant#943635, qty#943638]"];
154 [id="node154" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter isNewlyCalculated#973429: boolean"];
}
155 [id="node155" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [isNewlyCalculated#973429, plant#943635, product#943634, qty#943638, shardId#943631, worklistShardItemId#943632L], [isNewlyCalculated#973429]"];
156 [id="node156" labelType="html" label="<br><b>Union</b><br><br>" tooltip="Union"];
subgraph cluster157 {
isCluster="true";
id="cluster157";
label="WholeStageCodegen (5)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (5)";
158 [id="node158" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, qty#943638, null AS demandChannel#973426, null AS demandStream#973427, [] AS kpis#973461, true AS isNewlyCalculated#973429]"];
159 [id="node159" labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 0<br>spill size: 0.0 B" tooltip="SortMergeJoin [coalesce(shardId#943631, ), isnull(shardId#943631), coalesce(worklistShardItemId#943632L, 0), isnull(worklistShardItemId#943632L), coalesce(version#943633, 0), isnull(version#943633), coalesce(product#943634, ), isnull(product#943634), coalesce(plant#943635, ), isnull(plant#943635), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#943638, 0.0))), isnull(qty#943638)], [coalesce(shardId#973418, ), isnull(shardId#973418), coalesce(worklistShardItemId#973419L, 0), isnull(worklistShardItemId#973419L), coalesce(version#973420, 0), isnull(version#973420), coalesce(product#973421, ), isnull(product#973421), coalesce(plant#973422, ), isnull(plant#973422), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#973193, 0.0))), isnull(qty#973193)], LeftAnti"];
}
subgraph cluster160 {
isCluster="true";
id="cluster160";
label="WholeStageCodegen (1)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (1)";
161 [id="node161" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [coalesce(shardId#943631, ) ASC NULLS FIRST, isnull(shardId#943631) ASC NULLS FIRST, coalesce(worklistShardItemId#943632L, 0) ASC NULLS FIRST, isnull(worklistShardItemId#943632L) ASC NULLS FIRST, coalesce(version#943633, 0) ASC NULLS FIRST, isnull(version#943633) ASC NULLS FIRST, coalesce(product#943634, ) ASC NULLS FIRST, isnull(product#943634) ASC NULLS FIRST, coalesce(plant#943635, ) ASC NULLS FIRST, isnull(plant#943635) ASC NULLS FIRST, knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#943638, 0.0))) ASC NULLS FIRST, isnull(qty#943638) ASC NULLS FIRST], false, 0"];
}
162 [id="node162" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(coalesce(shardId#943631, ), isnull(shardId#943631), coalesce(worklistShardItemId#943632L, 0), isnull(worklistShardItemId#943632L), coalesce(version#943633, 0), isnull(version#943633), coalesce(product#943634, ), isnull(product#943634), coalesce(plant#943635, ), isnull(plant#943635), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#943638, 0.0))), isnull(qty#943638), 37), ENSURE_REQUIREMENTS, [plan_id=1622657]"];
163 [id="node163" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, qty#943638]"];
164 [id="node164" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#943634, plant#943635, 37), REPARTITION_BY_NUM, [plan_id=1622427]"];
subgraph cluster165 {
isCluster="true";
id="cluster165";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
166 [id="node166" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#943631,worklistShardItemId#943632L,version#943633,product#943634,plant#943635,periodStart#943636,periodEnd#943637,qty#943638]"];
}
subgraph cluster167 {
isCluster="true";
id="cluster167";
label="WholeStageCodegen (4)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (4)";
168 [id="node168" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [coalesce(shardId#973418, ) ASC NULLS FIRST, isnull(shardId#973418) ASC NULLS FIRST, coalesce(worklistShardItemId#973419L, 0) ASC NULLS FIRST, isnull(worklistShardItemId#973419L) ASC NULLS FIRST, coalesce(version#973420, 0) ASC NULLS FIRST, isnull(version#973420) ASC NULLS FIRST, coalesce(product#973421, ) ASC NULLS FIRST, isnull(product#973421) ASC NULLS FIRST, coalesce(plant#973422, ) ASC NULLS FIRST, isnull(plant#973422) ASC NULLS FIRST, knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#973193, 0.0))) ASC NULLS FIRST, isnull(qty#973193) 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#973418, ), isnull(shardId#973418), coalesce(worklistShardItemId#973419L, 0), isnull(worklistShardItemId#973419L), coalesce(version#973420, 0), isnull(version#973420), coalesce(product#973421, ), isnull(product#973421), coalesce(plant#973422, ), isnull(plant#973422), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#973193, 0.0))), isnull(qty#973193), 37), ENSURE_REQUIREMENTS, [plan_id=1622677]"];
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#973418, worklistShardItemId#973419L, version#973420, product#973421, plant#973422, qty#973193]"];
subgraph cluster172 {
isCluster="true";
id="cluster172";
label="WholeStageCodegen (7)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (7)";
173 [id="node173" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, cachedQty#973191 AS qty#973193, demandChannel#973186, demandStream#973187, cachedKpis#973192 AS kpis#973194]"];
174 [id="node174" labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 0<br>spill size: 0.0 B" tooltip="SortMergeJoin [worklistShardItemId#943632L, shardId#943631], [cachedWorklistShardItemId#973190L, cachedShardId#973189], Inner"];
}
subgraph cluster175 {
isCluster="true";
id="cluster175";
label="WholeStageCodegen (4)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (4)";
176 [id="node176" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [worklistShardItemId#943632L ASC NULLS FIRST, shardId#943631 ASC NULLS FIRST], false, 0"];
}
177 [id="node177" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(worklistShardItemId#943632L, shardId#943631, 37), ENSURE_REQUIREMENTS, [plan_id=1622545]"];
subgraph cluster178 {
isCluster="true";
id="cluster178";
label="WholeStageCodegen (3)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (3)";
179 [id="node179" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 0 ms<br>peak memory: 0.0 B<br>number of output rows: 0<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[plant#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634], functions=[])"];
}
180 [id="node180" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(plant#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634, 37), ENSURE_REQUIREMENTS, [plan_id=1622541]"];
subgraph cluster181 {
isCluster="true";
id="cluster181";
label="WholeStageCodegen (2)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (2)";
182 [id="node182" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 0 ms<br>peak memory: 0.0 B<br>number of output rows: 0<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[plant#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634], functions=[])"];
183 [id="node183" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635]"];
184 [id="node184" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#943632L, shardId#943631], [cachedWorklistShardItemId#973180L, cachedShardId#973179], Inner, BuildLeft, ((qty#943638 = cachedQty#973181) OR isnull(qty#943638)), false"];
192 [id="node192" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#973173 AS cachedShardId#973179, worklistShardItemId#973174L AS cachedWorklistShardItemId#973180L, qty#973175 AS cachedQty#973181]"];
193 [id="node193" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#973174L) AND isnotnull(shardId#973173))"];
194 [id="node194" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#973173,worklistShardItemId#973174L,qty#973175,demandChannel#973176,demandStream#973177,kpis#973178]"];
}
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=1622535]"];
subgraph cluster186 {
isCluster="true";
id="cluster186";
label="WholeStageCodegen (1)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (1)";
187 [id="node187" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#943632L) AND isnotnull(shardId#943631))"];
}
188 [id="node188" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, qty#943638], [isnotnull(worklistShardItemId#943632L), isnotnull(shardId#943631)]"];
189 [id="node189" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#943634, plant#943635, 37), REPARTITION_BY_NUM, [plan_id=1622427]"];
subgraph cluster190 {
isCluster="true";
id="cluster190";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
191 [id="node191" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#943631,worklistShardItemId#943632L,version#943633,product#943634,plant#943635,periodStart#943636,periodEnd#943637,qty#943638]"];
}
subgraph cluster195 {
isCluster="true";
id="cluster195";
label="WholeStageCodegen (6)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (6)";
196 [id="node196" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [cachedWorklistShardItemId#973190L ASC NULLS FIRST, cachedShardId#973189 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#973190L, cachedShardId#973189, 37), ENSURE_REQUIREMENTS, [plan_id=1622551]"];
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#973183 AS cachedShardId#973189, worklistShardItemId#973184L AS cachedWorklistShardItemId#973190L, qty#973185 AS cachedQty#973191, demandChannel#973186, demandStream#973187, kpis#973188 AS cachedKpis#973192]"];
200 [id="node200" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#973184L) AND isnotnull(shardId#973183))"];
201 [id="node201" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#973183,worklistShardItemId#973184L,qty#973185,demandChannel#973186,demandStream#973187,kpis#973188]"];
}
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#973400, worklistShardItemId#973401L, version#973402, product#973403, plant#973404, qty#973407]"];
204 [id="node204" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#973401L, shardId#973400], [cachedWorklistShardItemId#973415L, cachedShardId#973414], Inner, BuildLeft, false"];
212 [id="node212" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#973408 AS cachedShardId#973414, worklistShardItemId#973409L AS cachedWorklistShardItemId#973415L]"];
213 [id="node213" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#973409L) AND isnotnull(shardId#973408))"];
214 [id="node214" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#973408,worklistShardItemId#973409L,qty#973410,demandChannel#973411,demandStream#973412,kpis#973413]"];
}
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=1622671]"];
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#973407) AND isnotnull(worklistShardItemId#973401L)) AND isnotnull(shardId#973400))"];
}
208 [id="node208" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#973400, worklistShardItemId#973401L, version#973402, product#973403, plant#973404, qty#973407], [isnull(qty#973407), isnotnull(worklistShardItemId#973401L), isnotnull(shardId#973400)]"];
209 [id="node209" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#943634, plant#943635, 37), REPARTITION_BY_NUM, [plan_id=1622427]"];
subgraph cluster210 {
isCluster="true";
id="cluster210";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
211 [id="node211" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#943631,worklistShardItemId#943632L,version#943633,product#943634,plant#943635,periodStart#943636,periodEnd#943637,qty#943638]"];
}
subgraph cluster215 {
isCluster="true";
id="cluster215";
label="WholeStageCodegen (6)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (6)";
216 [id="node216" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#973431, worklistShardItemId#973432L, version#973433, product#973434, plant#973435, qty#973459, demandChannel#973452, demandStream#973453, kpis#973460, false AS isNewlyCalculated#973430]"];
}
217 [id="node217" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [demandChannel#973452, demandStream#973453, kpis#973460, plant#973435, product#973434, qty#973459, shardId#973431, version#973433, worklistShardItemId#973432L]"];
subgraph cluster218 {
isCluster="true";
id="cluster218";
label="WholeStageCodegen (7)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (7)";
219 [id="node219" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, cachedQty#973191 AS qty#973193, demandChannel#973186, demandStream#973187, cachedKpis#973192 AS kpis#973194]"];
220 [id="node220" labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 0<br>spill size: 0.0 B" tooltip="SortMergeJoin [worklistShardItemId#943632L, shardId#943631], [cachedWorklistShardItemId#973190L, cachedShardId#973189], Inner"];
}
subgraph cluster221 {
isCluster="true";
id="cluster221";
label="WholeStageCodegen (4)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (4)";
222 [id="node222" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [worklistShardItemId#943632L ASC NULLS FIRST, shardId#943631 ASC NULLS FIRST], false, 0"];
}
223 [id="node223" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(worklistShardItemId#943632L, shardId#943631, 37), ENSURE_REQUIREMENTS, [plan_id=1622545]"];
subgraph cluster224 {
isCluster="true";
id="cluster224";
label="WholeStageCodegen (3)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (3)";
225 [id="node225" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 0 ms<br>peak memory: 0.0 B<br>number of output rows: 0<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[plant#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634], functions=[])"];
}
226 [id="node226" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(plant#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634, 37), ENSURE_REQUIREMENTS, [plan_id=1622541]"];
subgraph cluster227 {
isCluster="true";
id="cluster227";
label="WholeStageCodegen (2)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (2)";
228 [id="node228" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 0 ms<br>peak memory: 0.0 B<br>number of output rows: 0<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[plant#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634], functions=[])"];
229 [id="node229" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635]"];
230 [id="node230" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#943632L, shardId#943631], [cachedWorklistShardItemId#973180L, cachedShardId#973179], Inner, BuildLeft, ((qty#943638 = cachedQty#973181) OR isnull(qty#943638)), false"];
238 [id="node238" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#973173 AS cachedShardId#973179, worklistShardItemId#973174L AS cachedWorklistShardItemId#973180L, qty#973175 AS cachedQty#973181]"];
239 [id="node239" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#973174L) AND isnotnull(shardId#973173))"];
240 [id="node240" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#973173,worklistShardItemId#973174L,qty#973175,demandChannel#973176,demandStream#973177,kpis#973178]"];
}
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=1622535]"];
subgraph cluster232 {
isCluster="true";
id="cluster232";
label="WholeStageCodegen (1)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (1)";
233 [id="node233" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#943632L) AND isnotnull(shardId#943631))"];
}
234 [id="node234" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, qty#943638], [isnotnull(worklistShardItemId#943632L), isnotnull(shardId#943631)]"];
235 [id="node235" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#943634, plant#943635, 37), REPARTITION_BY_NUM, [plan_id=1622427]"];
subgraph cluster236 {
isCluster="true";
id="cluster236";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
237 [id="node237" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#943631,worklistShardItemId#943632L,version#943633,product#943634,plant#943635,periodStart#943636,periodEnd#943637,qty#943638]"];
}
subgraph cluster241 {
isCluster="true";
id="cluster241";
label="WholeStageCodegen (6)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (6)";
242 [id="node242" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [cachedWorklistShardItemId#973190L ASC NULLS FIRST, cachedShardId#973189 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#973190L, cachedShardId#973189, 37), ENSURE_REQUIREMENTS, [plan_id=1622551]"];
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#973183 AS cachedShardId#973189, worklistShardItemId#973184L AS cachedWorklistShardItemId#973190L, qty#973185 AS cachedQty#973191, demandChannel#973186, demandStream#973187, kpis#973188 AS cachedKpis#973192]"];
246 [id="node246" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#973184L) AND isnotnull(shardId#973183))"];
247 [id="node247" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#973183,worklistShardItemId#973184L,qty#973185,demandChannel#973186,demandStream#973187,kpis#973188]"];
}
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: 697 ms<br>number of output rows: 252<br>data size: 2.0 MiB" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(input[0, string, true], input[1, bigint, true]),false), [plan_id=1623636]"];
subgraph cluster249 {
isCluster="true";
id="cluster249";
label="WholeStageCodegen (4)\n \nduration: total (min, med, max (stageId: taskId))\n127 ms (1 ms, 3 ms, 6 ms (stage 102216.0: task 335473))";
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>97 ms (1 ms, 2 ms, 5 ms (stage 102216.0: task 335473))<br>peak memory total (min, med, max (stageId: taskId))<br>83.3 MiB (2.3 MiB, 2.3 MiB, 2.3 MiB (stage 102216.0: task 335465))<br>number of output rows: 252<br>number of sort fallback tasks: 0<br>avg hash probes per key (min, med, max (stageId: taskId)):<br>(1, 1, 1 (stage 102216.0: task 335465))" tooltip="HashAggregate(keys=[shardId#976892, worklistShardItemId#976893L], functions=[max(version#976894)])"];
}
251 [id="node251" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 1,056<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 1,056<br>local bytes read total (min, med, max (stageId: taskId))<br>32.2 KiB (102.0 B, 927.0 B, 1771.0 B (stage 102216.0: task 335478))<br>merged fetch fallback count: 0<br>local blocks read: 314<br>remote merged chunks fetched: 0<br>remote blocks read: 439<br>data size total (min, med, max (stageId: taskId))<br>49.5 KiB (912.0 B, 1344.0 B, 2.1 KiB (stage 102215.0: task 335395))<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>50 ms (0 ms, 1 ms, 2 ms (stage 102215.0: task 335407))<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>4 ms (0 ms, 0 ms, 1 ms (stage 102216.0: task 335476))<br>remote bytes read total (min, med, max (stageId: taskId))<br>45.4 KiB (306.0 B, 1320.0 B, 1935.0 B (stage 102216.0: task 335478))<br>number of partitions: 37<br>remote reqs duration total (min, med, max (stageId: taskId))<br>147 ms (1 ms, 4 ms, 9 ms (stage 102216.0: task 335469))<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>77.7 KiB (1478.0 B, 2.1 KiB, 2.7 KiB (stage 102215.0: task 335398))" tooltip="Exchange hashpartitioning(shardId#976892, worklistShardItemId#976893L, 37), ENSURE_REQUIREMENTS, [plan_id=1623632]"];
subgraph cluster252 {
isCluster="true";
id="cluster252";
label="WholeStageCodegen (3)\n \nduration: total (min, med, max (stageId: taskId))\n1.9 s (0 ms, 2 ms, 208 ms (stage 102215.0: task 335378))";
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>28 ms (0 ms, 0 ms, 4 ms (stage 102215.0: task 335377))<br>peak memory total (min, med, max (stageId: taskId))<br>18.5 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 102215.0: task 335376))<br>number of output rows: 1,056<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[shardId#976892, worklistShardItemId#976893L], functions=[partial_max(version#976894)])"];
254 [id="node254" labelType="html" label="<b>Filter</b><br><br>number of output rows: 1,117" tooltip="Filter (isnotnull(shardId#976892) AND isnotnull(worklistShardItemId#976893L))"];
}
255 [id="node255" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 1,117" tooltip="InMemoryTableScan [shardId#976892, worklistShardItemId#976893L, version#976894], [isnotnull(shardId#976892), isnotnull(worklistShardItemId#976893L)]"];
256 [id="node256" labelType="html" label="<br><b>Union</b><br><br>" tooltip="Union"];
subgraph cluster257 {
isCluster="true";
id="cluster257";
label="WholeStageCodegen (5)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (5)";
258 [id="node258" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, qty#943638, null AS demandChannel#973426, null AS demandStream#973427, [] AS kpis#973461, true AS isNewlyCalculated#973429]"];
259 [id="node259" labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 0<br>spill size: 0.0 B" tooltip="SortMergeJoin [coalesce(shardId#943631, ), isnull(shardId#943631), coalesce(worklistShardItemId#943632L, 0), isnull(worklistShardItemId#943632L), coalesce(version#943633, 0), isnull(version#943633), coalesce(product#943634, ), isnull(product#943634), coalesce(plant#943635, ), isnull(plant#943635), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#943638, 0.0))), isnull(qty#943638)], [coalesce(shardId#973418, ), isnull(shardId#973418), coalesce(worklistShardItemId#973419L, 0), isnull(worklistShardItemId#973419L), coalesce(version#973420, 0), isnull(version#973420), coalesce(product#973421, ), isnull(product#973421), coalesce(plant#973422, ), isnull(plant#973422), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#973193, 0.0))), isnull(qty#973193)], LeftAnti"];
}
subgraph cluster260 {
isCluster="true";
id="cluster260";
label="WholeStageCodegen (1)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (1)";
261 [id="node261" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [coalesce(shardId#943631, ) ASC NULLS FIRST, isnull(shardId#943631) ASC NULLS FIRST, coalesce(worklistShardItemId#943632L, 0) ASC NULLS FIRST, isnull(worklistShardItemId#943632L) ASC NULLS FIRST, coalesce(version#943633, 0) ASC NULLS FIRST, isnull(version#943633) ASC NULLS FIRST, coalesce(product#943634, ) ASC NULLS FIRST, isnull(product#943634) ASC NULLS FIRST, coalesce(plant#943635, ) ASC NULLS FIRST, isnull(plant#943635) ASC NULLS FIRST, knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#943638, 0.0))) ASC NULLS FIRST, isnull(qty#943638) ASC NULLS FIRST], false, 0"];
}
262 [id="node262" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(coalesce(shardId#943631, ), isnull(shardId#943631), coalesce(worklistShardItemId#943632L, 0), isnull(worklistShardItemId#943632L), coalesce(version#943633, 0), isnull(version#943633), coalesce(product#943634, ), isnull(product#943634), coalesce(plant#943635, ), isnull(plant#943635), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#943638, 0.0))), isnull(qty#943638), 37), ENSURE_REQUIREMENTS, [plan_id=1622657]"];
263 [id="node263" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, qty#943638]"];
264 [id="node264" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#943634, plant#943635, 37), REPARTITION_BY_NUM, [plan_id=1622427]"];
subgraph cluster265 {
isCluster="true";
id="cluster265";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
266 [id="node266" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#943631,worklistShardItemId#943632L,version#943633,product#943634,plant#943635,periodStart#943636,periodEnd#943637,qty#943638]"];
}
subgraph cluster267 {
isCluster="true";
id="cluster267";
label="WholeStageCodegen (4)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (4)";
268 [id="node268" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [coalesce(shardId#973418, ) ASC NULLS FIRST, isnull(shardId#973418) ASC NULLS FIRST, coalesce(worklistShardItemId#973419L, 0) ASC NULLS FIRST, isnull(worklistShardItemId#973419L) ASC NULLS FIRST, coalesce(version#973420, 0) ASC NULLS FIRST, isnull(version#973420) ASC NULLS FIRST, coalesce(product#973421, ) ASC NULLS FIRST, isnull(product#973421) ASC NULLS FIRST, coalesce(plant#973422, ) ASC NULLS FIRST, isnull(plant#973422) ASC NULLS FIRST, knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#973193, 0.0))) ASC NULLS FIRST, isnull(qty#973193) 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#973418, ), isnull(shardId#973418), coalesce(worklistShardItemId#973419L, 0), isnull(worklistShardItemId#973419L), coalesce(version#973420, 0), isnull(version#973420), coalesce(product#973421, ), isnull(product#973421), coalesce(plant#973422, ), isnull(plant#973422), knownfloatingpointnormalized(normalizenanandzero(coalesce(qty#973193, 0.0))), isnull(qty#973193), 37), ENSURE_REQUIREMENTS, [plan_id=1622677]"];
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#973418, worklistShardItemId#973419L, version#973420, product#973421, plant#973422, qty#973193]"];
subgraph cluster272 {
isCluster="true";
id="cluster272";
label="WholeStageCodegen (7)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (7)";
273 [id="node273" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, cachedQty#973191 AS qty#973193, demandChannel#973186, demandStream#973187, cachedKpis#973192 AS kpis#973194]"];
274 [id="node274" labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 0<br>spill size: 0.0 B" tooltip="SortMergeJoin [worklistShardItemId#943632L, shardId#943631], [cachedWorklistShardItemId#973190L, cachedShardId#973189], Inner"];
}
subgraph cluster275 {
isCluster="true";
id="cluster275";
label="WholeStageCodegen (4)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (4)";
276 [id="node276" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [worklistShardItemId#943632L ASC NULLS FIRST, shardId#943631 ASC NULLS FIRST], false, 0"];
}
277 [id="node277" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(worklistShardItemId#943632L, shardId#943631, 37), ENSURE_REQUIREMENTS, [plan_id=1622545]"];
subgraph cluster278 {
isCluster="true";
id="cluster278";
label="WholeStageCodegen (3)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (3)";
279 [id="node279" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 0 ms<br>peak memory: 0.0 B<br>number of output rows: 0<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[plant#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634], functions=[])"];
}
280 [id="node280" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(plant#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634, 37), ENSURE_REQUIREMENTS, [plan_id=1622541]"];
subgraph cluster281 {
isCluster="true";
id="cluster281";
label="WholeStageCodegen (2)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (2)";
282 [id="node282" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 0 ms<br>peak memory: 0.0 B<br>number of output rows: 0<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[plant#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634], functions=[])"];
283 [id="node283" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635]"];
284 [id="node284" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#943632L, shardId#943631], [cachedWorklistShardItemId#973180L, cachedShardId#973179], Inner, BuildLeft, ((qty#943638 = cachedQty#973181) OR isnull(qty#943638)), false"];
292 [id="node292" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#973173 AS cachedShardId#973179, worklistShardItemId#973174L AS cachedWorklistShardItemId#973180L, qty#973175 AS cachedQty#973181]"];
293 [id="node293" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#973174L) AND isnotnull(shardId#973173))"];
294 [id="node294" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#973173,worklistShardItemId#973174L,qty#973175,demandChannel#973176,demandStream#973177,kpis#973178]"];
}
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=1622535]"];
subgraph cluster286 {
isCluster="true";
id="cluster286";
label="WholeStageCodegen (1)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (1)";
287 [id="node287" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#943632L) AND isnotnull(shardId#943631))"];
}
288 [id="node288" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, qty#943638], [isnotnull(worklistShardItemId#943632L), isnotnull(shardId#943631)]"];
289 [id="node289" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#943634, plant#943635, 37), REPARTITION_BY_NUM, [plan_id=1622427]"];
subgraph cluster290 {
isCluster="true";
id="cluster290";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
291 [id="node291" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#943631,worklistShardItemId#943632L,version#943633,product#943634,plant#943635,periodStart#943636,periodEnd#943637,qty#943638]"];
}
subgraph cluster295 {
isCluster="true";
id="cluster295";
label="WholeStageCodegen (6)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (6)";
296 [id="node296" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [cachedWorklistShardItemId#973190L ASC NULLS FIRST, cachedShardId#973189 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#973190L, cachedShardId#973189, 37), ENSURE_REQUIREMENTS, [plan_id=1622551]"];
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#973183 AS cachedShardId#973189, worklistShardItemId#973184L AS cachedWorklistShardItemId#973190L, qty#973185 AS cachedQty#973191, demandChannel#973186, demandStream#973187, kpis#973188 AS cachedKpis#973192]"];
300 [id="node300" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#973184L) AND isnotnull(shardId#973183))"];
301 [id="node301" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#973183,worklistShardItemId#973184L,qty#973185,demandChannel#973186,demandStream#973187,kpis#973188]"];
}
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#973400, worklistShardItemId#973401L, version#973402, product#973403, plant#973404, qty#973407]"];
304 [id="node304" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#973401L, shardId#973400], [cachedWorklistShardItemId#973415L, cachedShardId#973414], Inner, BuildLeft, false"];
312 [id="node312" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#973408 AS cachedShardId#973414, worklistShardItemId#973409L AS cachedWorklistShardItemId#973415L]"];
313 [id="node313" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#973409L) AND isnotnull(shardId#973408))"];
314 [id="node314" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#973408,worklistShardItemId#973409L,qty#973410,demandChannel#973411,demandStream#973412,kpis#973413]"];
}
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=1622671]"];
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#973407) AND isnotnull(worklistShardItemId#973401L)) AND isnotnull(shardId#973400))"];
}
308 [id="node308" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#973400, worklistShardItemId#973401L, version#973402, product#973403, plant#973404, qty#973407], [isnull(qty#973407), isnotnull(worklistShardItemId#973401L), isnotnull(shardId#973400)]"];
309 [id="node309" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#943634, plant#943635, 37), REPARTITION_BY_NUM, [plan_id=1622427]"];
subgraph cluster310 {
isCluster="true";
id="cluster310";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
311 [id="node311" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#943631,worklistShardItemId#943632L,version#943633,product#943634,plant#943635,periodStart#943636,periodEnd#943637,qty#943638]"];
}
subgraph cluster315 {
isCluster="true";
id="cluster315";
label="WholeStageCodegen (6)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (6)";
316 [id="node316" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#973431, worklistShardItemId#973432L, version#973433, product#973434, plant#973435, qty#973459, demandChannel#973452, demandStream#973453, kpis#973460, false AS isNewlyCalculated#973430]"];
}
317 [id="node317" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [demandChannel#973452, demandStream#973453, kpis#973460, plant#973435, product#973434, qty#973459, shardId#973431, version#973433, worklistShardItemId#973432L]"];
subgraph cluster318 {
isCluster="true";
id="cluster318";
label="WholeStageCodegen (7)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (7)";
319 [id="node319" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, cachedQty#973191 AS qty#973193, demandChannel#973186, demandStream#973187, cachedKpis#973192 AS kpis#973194]"];
320 [id="node320" labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 0<br>spill size: 0.0 B" tooltip="SortMergeJoin [worklistShardItemId#943632L, shardId#943631], [cachedWorklistShardItemId#973190L, cachedShardId#973189], Inner"];
}
subgraph cluster321 {
isCluster="true";
id="cluster321";
label="WholeStageCodegen (4)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (4)";
322 [id="node322" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [worklistShardItemId#943632L ASC NULLS FIRST, shardId#943631 ASC NULLS FIRST], false, 0"];
}
323 [id="node323" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(worklistShardItemId#943632L, shardId#943631, 37), ENSURE_REQUIREMENTS, [plan_id=1622545]"];
subgraph cluster324 {
isCluster="true";
id="cluster324";
label="WholeStageCodegen (3)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (3)";
325 [id="node325" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 0 ms<br>peak memory: 0.0 B<br>number of output rows: 0<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[plant#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634], functions=[])"];
}
326 [id="node326" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 0<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(plant#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634, 37), ENSURE_REQUIREMENTS, [plan_id=1622541]"];
subgraph cluster327 {
isCluster="true";
id="cluster327";
label="WholeStageCodegen (2)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (2)";
328 [id="node328" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 0 ms<br>peak memory: 0.0 B<br>number of output rows: 0<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[plant#943635, shardId#943631, version#943633, worklistShardItemId#943632L, product#943634], functions=[])"];
329 [id="node329" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635]"];
330 [id="node330" labelType="html" label="<b>BroadcastHashJoin</b><br><br>number of output rows: 0" tooltip="BroadcastHashJoin [worklistShardItemId#943632L, shardId#943631], [cachedWorklistShardItemId#973180L, cachedShardId#973179], Inner, BuildLeft, ((qty#943638 = cachedQty#973181) OR isnull(qty#943638)), false"];
338 [id="node338" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [shardId#973173 AS cachedShardId#973179, worklistShardItemId#973174L AS cachedWorklistShardItemId#973180L, qty#973175 AS cachedQty#973181]"];
339 [id="node339" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#973174L) AND isnotnull(shardId#973173))"];
340 [id="node340" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#973173,worklistShardItemId#973174L,qty#973175,demandChannel#973176,demandStream#973177,kpis#973178]"];
}
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=1622535]"];
subgraph cluster332 {
isCluster="true";
id="cluster332";
label="WholeStageCodegen (1)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (1)";
333 [id="node333" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#943632L) AND isnotnull(shardId#943631))"];
}
334 [id="node334" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [shardId#943631, worklistShardItemId#943632L, version#943633, product#943634, plant#943635, qty#943638], [isnotnull(worklistShardItemId#943632L), isnotnull(shardId#943631)]"];
335 [id="node335" labelType="html" label="<br><b>Exchange</b><br><br>" tooltip="Exchange hashpartitioning(product#943634, plant#943635, 37), REPARTITION_BY_NUM, [plan_id=1622427]"];
subgraph cluster336 {
isCluster="true";
id="cluster336";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
337 [id="node337" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#943631,worklistShardItemId#943632L,version#943633,product#943634,plant#943635,periodStart#943636,periodEnd#943637,qty#943638]"];
}
subgraph cluster341 {
isCluster="true";
id="cluster341";
label="WholeStageCodegen (6)\n \nduration: 0 ms";
tooltip="WholeStageCodegen (6)";
342 [id="node342" labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 0.0 B<br>spill size: 0.0 B" tooltip="Sort [cachedWorklistShardItemId#973190L ASC NULLS FIRST, cachedShardId#973189 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#973190L, cachedShardId#973189, 37), ENSURE_REQUIREMENTS, [plan_id=1622551]"];
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#973183 AS cachedShardId#973189, worklistShardItemId#973184L AS cachedWorklistShardItemId#973190L, qty#973185 AS cachedQty#973191, demandChannel#973186, demandStream#973187, kpis#973188 AS cachedKpis#973192]"];
346 [id="node346" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter (isnotnull(worklistShardItemId#973184L) AND isnotnull(shardId#973183))"];
347 [id="node347" labelType="html" label="<b>Scan ExistingRDD</b><br><br>number of output rows: 0" tooltip="Scan ExistingRDD[shardId#973183,worklistShardItemId#973184L,qty#973185,demandChannel#973186,demandStream#973187,kpis#973188]"];
}
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;
}