== Physical Plan ==
Execute SaveIntoDataSourceCommand (1)
+- SaveIntoDataSourceCommand (2)
+- Project (7)
+- Project (6)
+- Filter (5)
+- RepartitionByExpression (4)
+- LogicalRelation (3)
(1) Execute SaveIntoDataSourceCommand
Output: []
(2) SaveIntoDataSourceCommand
Arguments: org.apache.spark.sql.execution.datasources.jdbc.JdbcRelationProvider@6011bbce, [url=*********(redacted), batchsize=10000, isolationlevel=READ_UNCOMMITTED, driver=com.microsoft.sqlserver.jdbc.SQLServerDriver, dbtable=dbo.Datahub_dim_SCM_Facility_Materials_Preload, usebulkcopyforbatchinsert=true, user=warehouse-datahub, password=*********(redacted)], Append
(3) LogicalRelation
Arguments: 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 ('F48D5ABFF81CC15BBFC0CD8C8830B315A4014578245C42517A418632DD40C39D', 'F4AC6CBEC0F494DE8A20434F38D2E0A6739BDBDDB9AC17820A14E2D5130F2229', 'F4DD316F5333F13F063D5811DBCA4C65BAC4216E2A01BD55DB285FFF17F6F7D3', 'F4E0C40FE0D377A06D3ADBF7129BAB7F47472F472BBF003E1AF27F982C2A19D9', 'F4F74D87871F1225A64D97A51DA2BE4C6C25512832677E67EF9C1A42E0ACE136'))
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 ('F48D5ABFF81CC15BBFC0CD8C8830B315A4014578245C42517A418632DD40C39D', 'F4AC6CBEC0F494DE8A20434F38D2E0A6739BDBDDB9AC17820A14E2D5130F2229', 'F4DD316F5333F13F063D5811DBCA4C65BAC4216E2A01BD55DB285FFF17F6F7D3', 'F4E0C40FE0D377A06D3ADBF7129BAB7F47472F472BBF003E1AF27F982C2A19D9', 'F4F74D87871F1225A64D97A51DA2BE4C6C25512832677E67EF9C1A42E0ACE136'))
AND (n.networkId IN ('F48D5ABFF81CC15BBFC0CD8C8830B315A4014578245C42517A418632DD40C39D', 'F4AC6CBEC0F494DE8A20434F38D2E0A6739BDBDDB9AC17820A14E2D5130F2229', 'F4DD316F5333F13F063D5811DBCA4C65BAC4216E2A01BD55DB285FFF17F6F7D3', 'F4E0C40FE0D377A06D3ADBF7129BAB7F47472F472BBF003E1AF27F982C2A19D9', 'F4F74D87871F1225A64D97A51DA2BE4C6C25512832677E67EF9C1A42E0ACE136'))
) AS _t) [numPartitions=1], [NetworkID#9883623, is_latest#9883624, brand_context_id#9883625, company_id#9883626, launch_config_ref#9883627, revision_version#9883628, facility_declaration_ref#9883629, Value_process#9883630, Materials#9883631, Child_Node#9883632], false
(4) RepartitionByExpression
Arguments: [brand_context_id#9883625, company_id#9883626, launch_config_ref#9883627, revision_version#9883628], 5
(5) Filter
Arguments: isnotnull(facility_declaration_ref#9883629)
(6) Project
Arguments: [NetworkID#9883623, is_latest#9883624, brand_context_id#9883625, company_id#9883626, launch_config_ref#9883627, revision_version#9883628, facility_declaration_ref#9883629, Value_process#9883630, Materials#9883631, Child_Node#9883632, CASE WHEN (isnull(trim(Materials#9883631, None)) OR (trim(Materials#9883631, None) = )) THEN cast(null as string) ELSE trim(Materials#9883631, None) END AS _mat_item#9883711]
(7) Project
Arguments: [NetworkID#9883623, brand_context_id#9883625, company_id#9883626, launch_config_ref#9883627, revision_version#9883628, Child_Node#9883632, is_latest#9883624, false AS is_latest_submitted#9883724, trim(facility_declaration_ref#9883629, None) AS facility_declaration_RefID#9883793, trim(Value_process#9883630, None) AS Value_process#9883794, _mat_item#9883711 AS Material#9883795, 2026-10-16 07:30:22.066784 AS update_ts#9883796]