== 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@74ea1ab8, [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 ('F2A7B107E71FE5D8DE4934FD850D9426B254B7EC766323080013C4401F7746FB', 'F2C3669BC1A2DC0CCDDDDE55D1A7A1F0F6B49F3C7DF1A4BA459EDE5C6E07B2F9', 'F2D61A9B7C90C61EAD4710D957764BCB304A080C793E1FCE5EF85A7F295FED84', 'F30A007E09CE0663491986EBBFF0F2910D0801D76F217F146E79864C2F4E5EF7', 'F30BDBCC1850A9FD121538C66B142EF9AAAD8F890A272E389B38B02CCFB7F1DB'))
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 ('F2A7B107E71FE5D8DE4934FD850D9426B254B7EC766323080013C4401F7746FB', 'F2C3669BC1A2DC0CCDDDDE55D1A7A1F0F6B49F3C7DF1A4BA459EDE5C6E07B2F9', 'F2D61A9B7C90C61EAD4710D957764BCB304A080C793E1FCE5EF85A7F295FED84', 'F30A007E09CE0663491986EBBFF0F2910D0801D76F217F146E79864C2F4E5EF7', 'F30BDBCC1850A9FD121538C66B142EF9AAAD8F890A272E389B38B02CCFB7F1DB'))
AND (n.networkId IN ('F2A7B107E71FE5D8DE4934FD850D9426B254B7EC766323080013C4401F7746FB', 'F2C3669BC1A2DC0CCDDDDE55D1A7A1F0F6B49F3C7DF1A4BA459EDE5C6E07B2F9', 'F2D61A9B7C90C61EAD4710D957764BCB304A080C793E1FCE5EF85A7F295FED84', 'F30A007E09CE0663491986EBBFF0F2910D0801D76F217F146E79864C2F4E5EF7', 'F30BDBCC1850A9FD121538C66B142EF9AAAD8F890A272E389B38B02CCFB7F1DB'))
) AS _t) [numPartitions=1], [NetworkID#9840984, is_latest#9840985, brand_context_id#9840986, company_id#9840987, launch_config_ref#9840988, revision_version#9840989, facility_declaration_ref#9840990, Value_process#9840991, Materials#9840992, Child_Node#9840993], false
(4) RepartitionByExpression
Arguments: [brand_context_id#9840986, company_id#9840987, launch_config_ref#9840988, revision_version#9840989], 5
(5) Filter
Arguments: isnotnull(facility_declaration_ref#9840990)
(6) Project
Arguments: [NetworkID#9840984, is_latest#9840985, brand_context_id#9840986, company_id#9840987, launch_config_ref#9840988, revision_version#9840989, facility_declaration_ref#9840990, Value_process#9840991, Materials#9840992, Child_Node#9840993, CASE WHEN (isnull(trim(Materials#9840992, None)) OR (trim(Materials#9840992, None) = )) THEN cast(null as string) ELSE trim(Materials#9840992, None) END AS _mat_item#9841264]
(7) Project
Arguments: [NetworkID#9840984, brand_context_id#9840986, company_id#9840987, launch_config_ref#9840988, revision_version#9840989, Child_Node#9840993, is_latest#9840985, false AS is_latest_submitted#9841626, trim(facility_declaration_ref#9840990, None) AS facility_declaration_RefID#9841627, trim(Value_process#9840991, None) AS Value_process#9841628, _mat_item#9841264 AS Material#9841629, 2026-10-16 07:30:22.066784 AS update_ts#9841630]