digraph G {
0 [labelType="html" label="<br><b>AdaptiveSparkPlan</b><br><br>"];
1 [labelType="html" label="<br><b>DeserializeToObject</b><br><br>"];
subgraph cluster2 {
isCluster="true";
label="WholeStageCodegen (2)\n \nduration: 132 ms";
3 [labelType="html" label="<br><b>Project</b><br><br>"];
}
4 [labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 3<br>local merged chunks fetched: 0<br>shuffle write time total (min, med, max (stageId: taskId))<br>0 ms (0 ms, 0 ms, 0 ms (stage 30106.0: task 64650))<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 3<br>local bytes read: 414.0 B<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 1<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size total (min, med, max (stageId: taskId))<br>856.0 B (0.0 B, 856.0 B, 856.0 B (stage 30106.0: task 64650))<br>local merged bytes read: 0.0 B<br>number of partitions: 1<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>414.0 B (0.0 B, 414.0 B, 414.0 B (stage 30106.0: task 64650))"];
subgraph cluster5 {
isCluster="true";
label="WholeStageCodegen (1)\n \nduration: total (min, med, max (stageId: taskId))\n1 ms (0 ms, 1 ms, 1 ms (stage 30106.0: task 64650))";
6 [labelType="html" label="<b>Filter</b><br><br>number of output rows: 3"];
7 [labelType="html" label="<b>Scan JDBCRelation((<br> SELECT DISTINCT<br> pfd.networkId AS NetworkID, pfd.is_latest,<br> pfd.brand_context_id, pfd.company_id, pfd.launch_config_ref, pfd.revision_version,<br> CAST(COALESCE(m.facility_declaration_ref, pfd.derived_facility_dec_ref,<br> pfd.facility_default_ref) AS varchar(100)) <br> AS facility_declaration_ref,<br> pfd.Value_process, SUBSTRING(m.Materials, 0, 800) AS Materials,<br> n._id AS Child_Node<br> FROM dbo.dimscm_product_field_details_response pfd<br> INNER JOIN dbo.dimscm_product_node_response n<br> ON n.networkId = pfd.networkId<br> AND n.reference_code = pfd.product_node_response_ref<br> LEFT JOIN dbo.dim_compute_scm_product_field_details_response_materials m<br> ON m.networkId = pfd.networkId<br> AND (m.networkId IN ('387DFABD260D2AC52A715537802088A8E105E25CDBE406A600AC24FFA5427505'))<br> AND m.product_node_response_ref = CAST(pfd.product_node_response_ref AS varchar(200))<br> AND m.facility_declaration_ref = CAST(COALESCE(pfd.derived_facility_dec_ref, pfd.facility_default_ref) AS varchar(200))<br> AND m.Value_process = pfd.Value_process<br> WHERE (pfd.networkId IN ('387DFABD260D2AC52A715537802088A8E105E25CDBE406A600AC24FFA5427505'))<br> AND (n.networkId IN ('387DFABD260D2AC52A715537802088A8E105E25CDBE406A600AC24FFA5427505'))<br> ) AS _t) [numPartitions=1] </b><br><br>number of output rows: 3"];
}
1->0;
3->1;
4->3;
6->4;
7->6;
}
8
AdaptiveSparkPlan isFinalPlan=true
DeserializeToObject createexternalrow(NetworkID#12922594.toString, brand_context_id#12922596.toString, company_id#12922597.toString, launch_config_ref#12922598.toString, staticinvoke(class java.lang.Short, ObjectType(class java.lang.Short), valueOf, revision_version#12922599, true, false, true), Child_Node#12922603.toString, staticinvoke(class java.lang.Boolean, ObjectType(class java.lang.Boolean), valueOf, is_latest#12922595, true, false, true), staticinvoke(class java.lang.Boolean, ObjectType(class java.lang.Boolean), valueOf, is_latest_submitted#12922639, true, false, true), facility_declaration_RefID#12922640.toString, Value_process#12922641.toString, Material#12922662.toString, staticinvoke(class org.apache.spark.sql.catalyst.util.DateTimeUtils$, ObjectType(class java.sql.Timestamp), toJavaTimestamp, update_ts#12922663, true, false, true), StructField(NetworkID,StringType,true), StructField(brand_context_id,StringType,true), StructField(company_id,StringType,true), StructField(launch_config_ref,StringType,true), StructField(revision_version,ShortType,true), StructField(Child_Node,StringType,true), StructField(is_latest,BooleanType,true), StructField(is_latest_submitted,BooleanType,false), StructField(facility_declaration_RefID,StringType,true), StructField(Value_process,StringType,true), StructField(Material,StringType,true), StructField(update_ts,TimestampType,false)), obj#12951138: org.apache.spark.sql.Row
Project [NetworkID#12922594, brand_context_id#12922596, company_id#12922597, launch_config_ref#12922598, revision_version#12922599, Child_Node#12922603, is_latest#12922595, false AS is_latest_submitted#12922639, trim(facility_declaration_ref#12922600, None) AS facility_declaration_RefID#12922640, trim(Value_process#12922601, None) AS Value_process#12922641, CASE WHEN (isnull(trim(Materials#12922602, None)) OR (trim(Materials#12922602, None) = )) THEN null ELSE trim(Materials#12922602, None) END AS Material#12922662, 2026-10-18 07:30:07.191883 AS update_ts#12922663]
WholeStageCodegen (2)
Exchange SinglePartition, REPARTITION_BY_NUM, [plan_id=4045822]
Filter isnotnull(facility_declaration_ref#12922600)
Scan JDBCRelation((
SELECT DISTINCT
pfd.networkId AS NetworkID, pfd.is_latest,
pfd.brand_context_id, pfd.company_id, pfd.launch_config_ref, pfd.revision_version,
CAST(COALESCE(m.facility_declaration_ref, pfd.derived_facility_dec_ref,
pfd.facility_default_ref) AS varchar(100))
AS facility_declaration_ref,
pfd.Value_process, SUBSTRING(m.Materials, 0, 800) AS Materials,
n._id AS Child_Node
FROM dbo.dimscm_product_field_details_response pfd
INNER JOIN dbo.dimscm_product_node_response n
ON n.networkId = pfd.networkId
AND n.reference_code = pfd.product_node_response_ref
LEFT JOIN dbo.dim_compute_scm_product_field_details_response_materials m
ON m.networkId = pfd.networkId
AND (m.networkId IN ('387DFABD260D2AC52A715537802088A8E105E25CDBE406A600AC24FFA5427505'))
AND m.product_node_response_ref = CAST(pfd.product_node_response_ref AS varchar(200))
AND m.facility_declaration_ref = CAST(COALESCE(pfd.derived_facility_dec_ref, pfd.facility_default_ref) AS varchar(200))
AND m.Value_process = pfd.Value_process
WHERE (pfd.networkId IN ('387DFABD260D2AC52A715537802088A8E105E25CDBE406A600AC24FFA5427505'))
AND (n.networkId IN ('387DFABD260D2AC52A715537802088A8E105E25CDBE406A600AC24FFA5427505'))
) AS _t) [numPartitions=1] [NetworkID#12922594,is_latest#12922595,brand_context_id#12922596,company_id#12922597,launch_config_ref#12922598,revision_version#12922599,facility_declaration_ref#12922600,Value_process#12922601,Materials#12922602,Child_Node#12922603] PushedFilters: [IsNotNull(facility_declaration_ref)], ReadSchema: struct<NetworkID:string,is_latest:boolean,brand_context_id:string,company_id:string,launch_config...
WholeStageCodegen (1)
== Physical Plan ==
AdaptiveSparkPlan (10)
+- == Final Plan ==
DeserializeToObject (6)
+- * Project (5)
+- ShuffleQueryStage (4), Statistics(sizeInBytes=856.0 B, rowCount=3)
+- Exchange (3)
+- * Filter (2)
+- * Scan JDBCRelation((
SELECT DISTINCT
pfd.networkId AS NetworkID, pfd.is_latest,
pfd.brand_context_id, pfd.company_id, pfd.launch_config_ref, pfd.revision_version,
CAST(COALESCE(m.facility_declaration_ref, pfd.derived_facility_dec_ref,
pfd.facility_default_ref) AS varchar(100))
AS facility_declaration_ref,
pfd.Value_process, SUBSTRING(m.Materials, 0, 800) AS Materials,
n._id AS Child_Node
FROM dbo.dimscm_product_field_details_response pfd
INNER JOIN dbo.dimscm_product_node_response n
ON n.networkId = pfd.networkId
AND n.reference_code = pfd.product_node_response_ref
LEFT JOIN dbo.dim_compute_scm_product_field_details_response_materials m
ON m.networkId = pfd.networkId
AND (m.networkId IN ('387DFABD260D2AC52A715537802088A8E105E25CDBE406A600AC24FFA5427505'))
AND m.product_node_response_ref = CAST(pfd.product_node_response_ref AS varchar(200))
AND m.facility_declaration_ref = CAST(COALESCE(pfd.derived_facility_dec_ref, pfd.facility_default_ref) AS varchar(200))
AND m.Value_process = pfd.Value_process
WHERE (pfd.networkId IN ('387DFABD260D2AC52A715537802088A8E105E25CDBE406A600AC24FFA5427505'))
AND (n.networkId IN ('387DFABD260D2AC52A715537802088A8E105E25CDBE406A600AC24FFA5427505'))
) AS _t) [numPartitions=1] (1)
+- == Initial Plan ==
DeserializeToObject (9)
+- Project (8)
+- Exchange (7)
+- Filter (2)
+- Scan JDBCRelation((
SELECT DISTINCT
pfd.networkId AS NetworkID, pfd.is_latest,
pfd.brand_context_id, pfd.company_id, pfd.launch_config_ref, pfd.revision_version,
CAST(COALESCE(m.facility_declaration_ref, pfd.derived_facility_dec_ref,
pfd.facility_default_ref) AS varchar(100))
AS facility_declaration_ref,
pfd.Value_process, SUBSTRING(m.Materials, 0, 800) AS Materials,
n._id AS Child_Node
FROM dbo.dimscm_product_field_details_response pfd
INNER JOIN dbo.dimscm_product_node_response n
ON n.networkId = pfd.networkId
AND n.reference_code = pfd.product_node_response_ref
LEFT JOIN dbo.dim_compute_scm_product_field_details_response_materials m
ON m.networkId = pfd.networkId
AND (m.networkId IN ('387DFABD260D2AC52A715537802088A8E105E25CDBE406A600AC24FFA5427505'))
AND m.product_node_response_ref = CAST(pfd.product_node_response_ref AS varchar(200))
AND m.facility_declaration_ref = CAST(COALESCE(pfd.derived_facility_dec_ref, pfd.facility_default_ref) AS varchar(200))
AND m.Value_process = pfd.Value_process
WHERE (pfd.networkId IN ('387DFABD260D2AC52A715537802088A8E105E25CDBE406A600AC24FFA5427505'))
AND (n.networkId IN ('387DFABD260D2AC52A715537802088A8E105E25CDBE406A600AC24FFA5427505'))
) AS _t) [numPartitions=1] (1)
(1) Scan JDBCRelation((
SELECT DISTINCT
pfd.networkId AS NetworkID, pfd.is_latest,
pfd.brand_context_id, pfd.company_id, pfd.launch_config_ref, pfd.revision_version,
CAST(COALESCE(m.facility_declaration_ref, pfd.derived_facility_dec_ref,
pfd.facility_default_ref) AS varchar(100))
AS facility_declaration_ref,
pfd.Value_process, SUBSTRING(m.Materials, 0, 800) AS Materials,
n._id AS Child_Node
FROM dbo.dimscm_product_field_details_response pfd
INNER JOIN dbo.dimscm_product_node_response n
ON n.networkId = pfd.networkId
AND n.reference_code = pfd.product_node_response_ref
LEFT JOIN dbo.dim_compute_scm_product_field_details_response_materials m
ON m.networkId = pfd.networkId
AND (m.networkId IN ('387DFABD260D2AC52A715537802088A8E105E25CDBE406A600AC24FFA5427505'))
AND m.product_node_response_ref = CAST(pfd.product_node_response_ref AS varchar(200))
AND m.facility_declaration_ref = CAST(COALESCE(pfd.derived_facility_dec_ref, pfd.facility_default_ref) AS varchar(200))
AND m.Value_process = pfd.Value_process
WHERE (pfd.networkId IN ('387DFABD260D2AC52A715537802088A8E105E25CDBE406A600AC24FFA5427505'))
AND (n.networkId IN ('387DFABD260D2AC52A715537802088A8E105E25CDBE406A600AC24FFA5427505'))
) AS _t) [numPartitions=1] [codegen id : 1]
Output [10]: [NetworkID#12922594, is_latest#12922595, brand_context_id#12922596, company_id#12922597, launch_config_ref#12922598, revision_version#12922599, facility_declaration_ref#12922600, Value_process#12922601, Materials#12922602, Child_Node#12922603]
PushedFilters: [IsNotNull(facility_declaration_ref)]
ReadSchema: struct<NetworkID:string,is_latest:boolean,brand_context_id:string,company_id:string,launch_config_ref:string,revision_version:smallint,facility_declaration_ref:string,Value_process:string,Materials:string,Child_Node:string>
(2) Filter [codegen id : 1]
Input [10]: [NetworkID#12922594, is_latest#12922595, brand_context_id#12922596, company_id#12922597, launch_config_ref#12922598, revision_version#12922599, facility_declaration_ref#12922600, Value_process#12922601, Materials#12922602, Child_Node#12922603]
Condition : isnotnull(facility_declaration_ref#12922600)
(3) Exchange
Input [10]: [NetworkID#12922594, is_latest#12922595, brand_context_id#12922596, company_id#12922597, launch_config_ref#12922598, revision_version#12922599, facility_declaration_ref#12922600, Value_process#12922601, Materials#12922602, Child_Node#12922603]
Arguments: SinglePartition, REPARTITION_BY_NUM, [plan_id=4045822]
(4) ShuffleQueryStage
Output [10]: [NetworkID#12922594, is_latest#12922595, brand_context_id#12922596, company_id#12922597, launch_config_ref#12922598, revision_version#12922599, facility_declaration_ref#12922600, Value_process#12922601, Materials#12922602, Child_Node#12922603]
Arguments: 0
(5) Project [codegen id : 2]
Output [12]: [NetworkID#12922594, brand_context_id#12922596, company_id#12922597, launch_config_ref#12922598, revision_version#12922599, Child_Node#12922603, is_latest#12922595, false AS is_latest_submitted#12922639, trim(facility_declaration_ref#12922600, None) AS facility_declaration_RefID#12922640, trim(Value_process#12922601, None) AS Value_process#12922641, CASE WHEN (isnull(trim(Materials#12922602, None)) OR (trim(Materials#12922602, None) = )) THEN null ELSE trim(Materials#12922602, None) END AS Material#12922662, 2026-10-18 07:30:07.191883 AS update_ts#12922663]
Input [10]: [NetworkID#12922594, is_latest#12922595, brand_context_id#12922596, company_id#12922597, launch_config_ref#12922598, revision_version#12922599, facility_declaration_ref#12922600, Value_process#12922601, Materials#12922602, Child_Node#12922603]
(6) DeserializeToObject
Input [12]: [NetworkID#12922594, brand_context_id#12922596, company_id#12922597, launch_config_ref#12922598, revision_version#12922599, Child_Node#12922603, is_latest#12922595, is_latest_submitted#12922639, facility_declaration_RefID#12922640, Value_process#12922641, Material#12922662, update_ts#12922663]
Arguments: createexternalrow(NetworkID#12922594.toString, brand_context_id#12922596.toString, company_id#12922597.toString, launch_config_ref#12922598.toString, staticinvoke(class java.lang.Short, ObjectType(class java.lang.Short), valueOf, revision_version#12922599, true, false, true), Child_Node#12922603.toString, staticinvoke(class java.lang.Boolean, ObjectType(class java.lang.Boolean), valueOf, is_latest#12922595, true, false, true), staticinvoke(class java.lang.Boolean, ObjectType(class java.lang.Boolean), valueOf, is_latest_submitted#12922639, true, false, true), facility_declaration_RefID#12922640.toString, Value_process#12922641.toString, Material#12922662.toString, staticinvoke(class org.apache.spark.sql.catalyst.util.DateTimeUtils$, ObjectType(class java.sql.Timestamp), toJavaTimestamp, update_ts#12922663, true, false, true), StructField(NetworkID,StringType,true), StructField(brand_context_id,StringType,true), StructField(company_id,StringType,true), StructField(launch_config_ref,StringType,true), StructField(revision_version,ShortType,true), StructField(Child_Node,StringType,true), StructField(is_latest,BooleanType,true), StructField(is_latest_submitted,BooleanType,false), StructField(facility_declaration_RefID,StringType,true), StructField(Value_process,StringType,true), StructField(Material,StringType,true), StructField(update_ts,TimestampType,false)), obj#12951138: org.apache.spark.sql.Row
(7) Exchange
Input [10]: [NetworkID#12922594, is_latest#12922595, brand_context_id#12922596, company_id#12922597, launch_config_ref#12922598, revision_version#12922599, facility_declaration_ref#12922600, Value_process#12922601, Materials#12922602, Child_Node#12922603]
Arguments: SinglePartition, REPARTITION_BY_NUM, [plan_id=4045813]
(8) Project
Output [12]: [NetworkID#12922594, brand_context_id#12922596, company_id#12922597, launch_config_ref#12922598, revision_version#12922599, Child_Node#12922603, is_latest#12922595, false AS is_latest_submitted#12922639, trim(facility_declaration_ref#12922600, None) AS facility_declaration_RefID#12922640, trim(Value_process#12922601, None) AS Value_process#12922641, CASE WHEN (isnull(trim(Materials#12922602, None)) OR (trim(Materials#12922602, None) = )) THEN null ELSE trim(Materials#12922602, None) END AS Material#12922662, 2026-10-18 07:30:07.191883 AS update_ts#12922663]
Input [10]: [NetworkID#12922594, is_latest#12922595, brand_context_id#12922596, company_id#12922597, launch_config_ref#12922598, revision_version#12922599, facility_declaration_ref#12922600, Value_process#12922601, Materials#12922602, Child_Node#12922603]
(9) DeserializeToObject
Input [12]: [NetworkID#12922594, brand_context_id#12922596, company_id#12922597, launch_config_ref#12922598, revision_version#12922599, Child_Node#12922603, is_latest#12922595, is_latest_submitted#12922639, facility_declaration_RefID#12922640, Value_process#12922641, Material#12922662, update_ts#12922663]
Arguments: createexternalrow(NetworkID#12922594.toString, brand_context_id#12922596.toString, company_id#12922597.toString, launch_config_ref#12922598.toString, staticinvoke(class java.lang.Short, ObjectType(class java.lang.Short), valueOf, revision_version#12922599, true, false, true), Child_Node#12922603.toString, staticinvoke(class java.lang.Boolean, ObjectType(class java.lang.Boolean), valueOf, is_latest#12922595, true, false, true), staticinvoke(class java.lang.Boolean, ObjectType(class java.lang.Boolean), valueOf, is_latest_submitted#12922639, true, false, true), facility_declaration_RefID#12922640.toString, Value_process#12922641.toString, Material#12922662.toString, staticinvoke(class org.apache.spark.sql.catalyst.util.DateTimeUtils$, ObjectType(class java.sql.Timestamp), toJavaTimestamp, update_ts#12922663, true, false, true), StructField(NetworkID,StringType,true), StructField(brand_context_id,StringType,true), StructField(company_id,StringType,true), StructField(launch_config_ref,StringType,true), StructField(revision_version,ShortType,true), StructField(Child_Node,StringType,true), StructField(is_latest,BooleanType,true), StructField(is_latest_submitted,BooleanType,false), StructField(facility_declaration_RefID,StringType,true), StructField(Value_process,StringType,true), StructField(Material,StringType,true), StructField(update_ts,TimestampType,false)), obj#12951138: org.apache.spark.sql.Row
(10) AdaptiveSparkPlan
Output [1]: [obj#12951138]
Arguments: isFinalPlan=true