== 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@37fb09e, [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 ('F5861CF812060F2C0A55DC2878B583EC8A37C7CA86F0E73F26BA7415B5BCC148', 'F58E582521F0BD52AED8CE5DAFAF4757137FB48D8AE275CE23E44A1CB8B8CB8C', 'F591DB83A26875BCD42CDBDFFBFC8C4357E33C43C7708DAF334E09D04F6B5323', 'F598D440F3775A2D0A7408B1C812FB679E2D4D8CC4167B53513CB88F72BD4924', 'F59B53D820B3CB0A48D9FF11A0A2C861DA7D9EB6AEDCED6C78EC4EA37B067648'))
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 ('F5861CF812060F2C0A55DC2878B583EC8A37C7CA86F0E73F26BA7415B5BCC148', 'F58E582521F0BD52AED8CE5DAFAF4757137FB48D8AE275CE23E44A1CB8B8CB8C', 'F591DB83A26875BCD42CDBDFFBFC8C4357E33C43C7708DAF334E09D04F6B5323', 'F598D440F3775A2D0A7408B1C812FB679E2D4D8CC4167B53513CB88F72BD4924', 'F59B53D820B3CB0A48D9FF11A0A2C861DA7D9EB6AEDCED6C78EC4EA37B067648'))
AND (n.networkId IN ('F5861CF812060F2C0A55DC2878B583EC8A37C7CA86F0E73F26BA7415B5BCC148', 'F58E582521F0BD52AED8CE5DAFAF4757137FB48D8AE275CE23E44A1CB8B8CB8C', 'F591DB83A26875BCD42CDBDFFBFC8C4357E33C43C7708DAF334E09D04F6B5323', 'F598D440F3775A2D0A7408B1C812FB679E2D4D8CC4167B53513CB88F72BD4924', 'F59B53D820B3CB0A48D9FF11A0A2C861DA7D9EB6AEDCED6C78EC4EA37B067648'))
) AS _t) [numPartitions=1], [NetworkID#9921634, is_latest#9921635, brand_context_id#9921636, company_id#9921637, launch_config_ref#9921638, revision_version#9921639, facility_declaration_ref#9921640, Value_process#9921641, Materials#9921642, Child_Node#9921643], false
(4) RepartitionByExpression
Arguments: [brand_context_id#9921636, company_id#9921637, launch_config_ref#9921638, revision_version#9921639], 5
(5) Filter
Arguments: isnotnull(facility_declaration_ref#9921640)
(6) Project
Arguments: [NetworkID#9921634, is_latest#9921635, brand_context_id#9921636, company_id#9921637, launch_config_ref#9921638, revision_version#9921639, facility_declaration_ref#9921640, Value_process#9921641, Materials#9921642, Child_Node#9921643, CASE WHEN (isnull(trim(Materials#9921642, None)) OR (trim(Materials#9921642, None) = )) THEN cast(null as string) ELSE trim(Materials#9921642, None) END AS _mat_item#9921654]
(7) Project
Arguments: [NetworkID#9921634, brand_context_id#9921636, company_id#9921637, launch_config_ref#9921638, revision_version#9921639, Child_Node#9921643, is_latest#9921635, false AS is_latest_submitted#9921666, trim(facility_declaration_ref#9921640, None) AS facility_declaration_RefID#9921667, trim(Value_process#9921641, None) AS Value_process#9921668, _mat_item#9921654 AS Material#9921669, 2026-10-16 07:30:22.066784 AS update_ts#9921670]