== Physical Plan ==
Execute SaveIntoDataSourceCommand (1)
+- SaveIntoDataSourceCommand (2)
+- Project (27)
+- Filter (26)
+- Project (25)
+- Generate (24)
+- Filter (23)
+- Project (22)
+- Filter (21)
+- Project (20)
+- Join (19)
:- ResolvedHint (7)
: +- Project (6)
: +- Filter (5)
: +- Project (4)
: +- LogicalRelation (3)
+- RepartitionByExpression (18)
+- Project (17)
+- Project (16)
+- Project (15)
+- Project (14)
+- Project (13)
+- Project (12)
+- Project (11)
+- Project (10)
+- Project (9)
+- LogicalRelation (8)
(1) Execute SaveIntoDataSourceCommand
Output: []
(2) SaveIntoDataSourceCommand
Arguments: org.apache.spark.sql.execution.datasources.jdbc.JdbcRelationProvider@4689ed06, [url=*********(redacted), batchsize=10000, isolationlevel=READ_UNCOMMITTED, driver=com.microsoft.sqlserver.jdbc.SQLServerDriver, dbtable=dbo.Datahub_dim_SCM_Supplier_Custom_Fields_Preload, usebulkcopyforbatchinsert=true, user=warehouse-datahub, password=*********(redacted)], Append
(3) LogicalRelation
Arguments: JDBCRelation((
SELECT
rs.brand_context_id, rs.company_id, rs.launch_config_ref, rs.revision_version,
rs.networkId AS NetworkID,
rs.config_name, rs.config_version, rs.entity_id, rs.submission_status, rs.is_latest,
rs.is_editable, rs.launch_date, rs.expiry_date, rs.submitted_date, rs.create_ts, rs.update_ts,
rs.create_date, rs.update_date, rs.source, rs.recurrence_count, rs.priority, rs.remarks,
rs.latest_source, rs.launch_request_name,
prof.profile_supplier_name AS direct_supplier_name,
prof.profile_supplierUID AS supplier_uid,
ou.ou_division, ou.ou_location
FROM dbo.Datahub_SCM_Network_Load_Queue inc
INNER JOIN dbo.dimscm_response_summary rs
ON rs.networkId = inc.NetworkID
OUTER APPLY (
SELECT TOP 1 p.profile_supplier_name, p.profile_supplierUID
FROM dbo.dimsupplier_profilemerge p
WHERE p.brandid = inc.brand_context_id
AND p.supplier_id = inc.company_id
ORDER BY p.profile_supplierUID
) prof
LEFT JOIN (
SELECT
d.networkId,
STRING_AGG(CASE WHEN d.ou_attribute_id = 'ou_division' THEN d.ou_attribute_value END, ',') AS ou_division,
STRING_AGG(CASE WHEN d.ou_attribute_id = 'ou_location' THEN d.ou_attribute_value END, ',') AS ou_location
FROM (
SELECT DISTINCT oa.networkId, oa.ou_attribute_id, oa.ou_attribute_value
FROM dbo.Datahub_SCM_Network_Load_Queue q
INNER JOIN dbo.dimscm_response_summary_ou_attribute oa
ON oa.networkId = q.NetworkID
WHERE q.status = 'PENDING'
AND oa.ou_attribute_id IN ('ou_division', 'ou_location')
) d
GROUP BY d.networkId
) ou
ON ou.networkId = rs.networkId
WHERE inc.status = 'PENDING'
AND (rs.source IS NULL OR rs.source <> 'PO_TRACING')
AND (rs.submission_status IS NULL OR rs.submission_status NOT IN ('AUTO_CLOSED'))
) AS _t) [numPartitions=1], [brand_context_id#2, company_id#3, launch_config_ref#4, revision_version#5, NetworkID#6, config_name#7, config_version#8, entity_id#9, submission_status#10, is_latest#11, is_editable#12, launch_date#13, expiry_date#14, submitted_date#15, create_ts#16, update_ts#17, create_date#18, update_date#19, source#20, recurrence_count#21, priority#22, remarks#23, latest_source#24, launch_request_name#25, ... 4 more fields], false
(4) Project
Arguments: [brand_context_id#2, company_id#3, launch_config_ref#4, revision_version#5, NetworkID#6, config_name#7, config_version#8, entity_id#9, submission_status#10, is_latest#11, is_editable#12, launch_date#13, expiry_date#14, submitted_date#15, create_ts#16, update_ts#17, create_date#18, update_date#19, source#20, recurrence_count#21, priority#22, remarks#23, latest_source#24, launch_request_name#25, ... 4 more fields]
(5) Filter
Arguments: NetworkID#6 IN (F5D19C3427DA9B77D2F973426247AF5D5AA7A71860FDC8AB07CA4A0142D0E44D,F5D8111A076D0F31FFB777ABB48CFA631E7EC83F8C481A9CC2910F82971E4F4D,F5DC748058952BD1C1CB71189CBCB19CE1F5B8DDE3379E970F8B24C00856D9E6,F5EECBEB8B9624CE6C70A5F377E9271216BE44E2C25E06FC7CBCC296C19221E5,F5F1C31FBA06D4F664868F5165D042693077BA7C0BFC99AEBB1E2C649F34572E)
(6) Project
Arguments: [brand_context_id#2, company_id#3, launch_config_ref#4, revision_version#5, config_name#7 AS summary__config_name#9957219, config_version#8 AS summary__config_version#9957220, entity_id#9 AS summary__entity_id#9957221, submission_status#10 AS summary__submission_status#9957222, is_latest#11 AS summary__is_latest#9957223, is_editable#12 AS summary__is_editable#9957224, launch_date#13 AS summary__launch_date#9957225, expiry_date#14 AS summary__expiry_date#9957226, submitted_date#15 AS summary__submitted_date#9957227, create_ts#16 AS summary__create_ts#9957228, update_ts#17 AS summary__update_ts#9957229, create_date#18 AS summary__create_date#9957230, update_date#19 AS summary__update_date#9957231, source#20 AS summary__source#9957232, recurrence_count#21 AS summary__recurrence_count#9957233, priority#22 AS summary__priority#9957234, remarks#23 AS summary__remarks#9957235, latest_source#24 AS summary__latest_source#9957236, launch_request_name#25 AS summary__launch_request_name#9957237, NetworkID#6 AS summary__NetworkID#9957238, ... 2 more fields]
(7) ResolvedHint
Arguments: (strategy=broadcast)
(8) LogicalRelation
Arguments: JDBCRelation((
SELECT
pn._id, pn.brand_context_id, pn.company_id, pn.launch_config_ref, pn.revision_version,
pn.parent_id, pn.parent_launch_config_ref, pn.node_status, pn.data_state, pn.tier,
pn.reference_code, pn.source_type, pn.product_name, pn.product_alias_name,
pn.supplier_dec_name, pn.supplier_dec_city, pn.supplier_dec_state, pn.supplier_dec_country,
pn.supplier_dec_address, pn.supplier_dec__address_line2,
pn.data_supplier_name, pn.data_address_city, pn.data_address_state, pn.data_address_country,
pn.data_address_line1, pn.data_address_line2, pn.data_address_lat, pn.data_address_lng,
pn.derived_supplier_dec_ref,
pn.data_supplier_default_ref, pn.supplier_type, pn.nominated_node, pn.update_ts, pn.key_values,
CAST(COALESCE(pn.levels, 0) AS INT) AS Levels,
ds.source AS decl_source, ds.supplier_id AS decl_supplier_id,
TRY_CONVERT(date, ds.create_ts) AS decl_supplier_create_date, ds.company_id AS decl_supplier_company_id,
sdm.preferrd_supplier_id AS decl_preferrd_supplier_id,
sdm.preferrd_supplier_name AS decl_preferrd_supplier_name,
sdm.reference_id AS decl_dedup_reference_id
FROM dbo.dimscm_product_node_response pn
LEFT JOIN dbo.dimsupplier_declaration ds
ON ds._id = pn.derived_supplier_dec_ref
AND ds.brand_context_id = pn.brand_context_id
LEFT JOIN dbo.dim_compute_supplier_dedup_mapping sdm
ON sdm.brand_context_id = ds.brand_context_id
AND sdm.duplicate_entities_entity_id = ds._id
WHERE (pn.networkId IN ('F5D19C3427DA9B77D2F973426247AF5D5AA7A71860FDC8AB07CA4A0142D0E44D', 'F5D8111A076D0F31FFB777ABB48CFA631E7EC83F8C481A9CC2910F82971E4F4D', 'F5DC748058952BD1C1CB71189CBCB19CE1F5B8DDE3379E970F8B24C00856D9E6', 'F5EECBEB8B9624CE6C70A5F377E9271216BE44E2C25E06FC7CBCC296C19221E5', 'F5F1C31FBA06D4F664868F5165D042693077BA7C0BFC99AEBB1E2C649F34572E'))
) AS _t) [numPartitions=1], [_id#9953813, brand_context_id#9953814, company_id#9953815, launch_config_ref#9953816, revision_version#9953817, parent_id#9953818, parent_launch_config_ref#9953819, node_status#9953820, data_state#9953821, tier#9953822, reference_code#9953823, source_type#9953824, product_name#9953825, product_alias_name#9953826, supplier_dec_name#9953827, supplier_dec_city#9953828, supplier_dec_state#9953829, supplier_dec_country#9953830, supplier_dec_address#9953831, supplier_dec__address_line2#9953832, data_supplier_name#9953833, data_address_city#9953834, data_address_state#9953835, data_address_country#9953836, ... 18 more fields], false
(9) Project
Arguments: [_id#9953813, brand_context_id#9953814, company_id#9953815, launch_config_ref#9953816, revision_version#9953817, parent_id#9953818, parent_launch_config_ref#9953819, node_status#9953820, data_state#9953821, tier#9953822, reference_code#9953823, source_type#9953824, product_name#9953825, product_alias_name#9953826, supplier_dec_name#9953827, supplier_dec_city#9953828, supplier_dec_state#9953829, supplier_dec_country#9953830, supplier_dec_address#9953831, supplier_dec__address_line2#9953832, data_supplier_name#9953833, data_address_city#9953834, data_address_state#9953835, data_address_country#9953836, ... 19 more fields]
(10) Project
Arguments: [_id#9953813, brand_context_id#9953814, company_id#9953815, launch_config_ref#9953816, revision_version#9953817, parent_id#9953818, parent_launch_config_ref#9953819, node_status#9953820, data_state#9953821, tier#9953822, reference_code#9953823, source_type#9953824, product_name#9953825, product_alias_name#9953826, supplier_dec_name#9953827, supplier_dec_city#9953828, supplier_dec_state#9953829, supplier_dec_country#9953830, supplier_dec_address#9953831, supplier_dec__address_line2#9953832, data_supplier_name#9953833, data_address_city#9953834, data_address_state#9953835, data_address_country#9953836, ... 20 more fields]
(11) Project
Arguments: [_id#9953813, brand_context_id#9953814, company_id#9953815, launch_config_ref#9953816, revision_version#9953817, parent_id#9953818, parent_launch_config_ref#9953819, node_status#9953820, data_state#9953821, tier#9953822, reference_code#9953823, source_type#9953824, product_name#9953825, product_alias_name#9953826, supplier_dec_name#9953827, supplier_dec_city#9953828, supplier_dec_state#9953829, supplier_dec_country#9953830, supplier_dec_address#9953831, supplier_dec__address_line2#9953832, data_supplier_name#9953833, data_address_city#9953834, data_address_state#9953835, data_address_country#9953836, ... 21 more fields]
(12) Project
Arguments: [_id#9953813, brand_context_id#9953814, company_id#9953815, launch_config_ref#9953816, revision_version#9953817, parent_id#9953818, parent_launch_config_ref#9953819, node_status#9953820, data_state#9953821, tier#9953822, reference_code#9953823, source_type#9953824, product_name#9953825, product_alias_name#9953826, supplier_dec_name#9953827, supplier_dec_city#9953828, supplier_dec_state#9953829, supplier_dec_country#9953830, supplier_dec_address#9953831, supplier_dec__address_line2#9953832, data_supplier_name#9953833, data_address_city#9953834, data_address_state#9953835, data_address_country#9953836, ... 22 more fields]
(13) Project
Arguments: [_id#9953813, brand_context_id#9953814, company_id#9953815, launch_config_ref#9953816, revision_version#9953817, parent_id#9953818, parent_launch_config_ref#9953819, node_status#9953820, data_state#9953821, tier#9953822, reference_code#9953823, source_type#9953824, product_name#9953825, product_alias_name#9953826, supplier_dec_name#9953827, supplier_dec_city#9953828, supplier_dec_state#9953829, supplier_dec_country#9953830, supplier_dec_address#9953831, supplier_dec__address_line2#9953832, data_supplier_name#9953833, data_address_city#9953834, data_address_state#9953835, data_address_country#9953836, ... 23 more fields]
(14) Project
Arguments: [_id#9953813, brand_context_id#9953814, company_id#9953815, launch_config_ref#9953816, revision_version#9953817, parent_id#9953818, parent_launch_config_ref#9953819, node_status#9953820, data_state#9953821, tier#9953822, reference_code#9953823, source_type#9953824, product_name#9953825, product_alias_name#9953826, supplier_dec_name#9953827, supplier_dec_city#9953828, supplier_dec_state#9953829, supplier_dec_country#9953830, supplier_dec_address#9953831, supplier_dec__address_line2#9953832, data_supplier_name#9953833, data_address_city#9953834, data_address_state#9953835, data_address_country#9953836, ... 24 more fields]
(15) Project
Arguments: [_id#9953813, brand_context_id#9953814, company_id#9953815, launch_config_ref#9953816, revision_version#9953817, parent_id#9953818, parent_launch_config_ref#9953819, node_status#9953820, data_state#9953821, tier#9953822, reference_code#9953823, source_type#9953824, product_name#9953825, product_alias_name#9953826, supplier_dec_name#9953827, supplier_dec_city#9953828, supplier_dec_state#9953829, supplier_dec_country#9953830, supplier_dec_address#9953831, supplier_dec__address_line2#9953832, data_supplier_name#9953833, data_address_city#9953834, data_address_state#9953835, data_address_country#9953836, ... 25 more fields]
(16) Project
Arguments: [_id#9953813, brand_context_id#9953814, company_id#9953815, launch_config_ref#9953816, revision_version#9953817, parent_id#9953818, parent_launch_config_ref#9953819, node_status#9953820, data_state#9953821, tier#9953822, reference_code#9953823, source_type#9953824, product_name#9953825, product_alias_name#9953826, supplier_dec_name#9953827, supplier_dec_city#9953828, supplier_dec_state#9953829, supplier_dec_country#9953830, supplier_dec_address#9953831, supplier_dec__address_line2#9953832, data_supplier_name#9953833, data_address_city#9953834, data_address_state#9953835, data_address_country#9953836, ... 26 more fields]
(17) Project
Arguments: [_id#9953813, brand_context_id#9953814, company_id#9953815, launch_config_ref#9953816, revision_version#9953817, parent_id#9953818, parent_launch_config_ref#9953819, node_status#9953820, data_state#9953821, tier#9953822, reference_code#9953823, source_type#9953824, product_name#9953825, product_alias_name#9953826, supplier_dec_name#9953827, supplier_dec_city#9953828, supplier_dec_state#9953829, supplier_dec_country#9953830, supplier_dec_address#9953831, supplier_dec__address_line2#9953832, data_supplier_name#9953833, data_address_city#9953834, data_address_state#9953835, data_address_country#9953836, ... 27 more fields]
(18) RepartitionByExpression
Arguments: [brand_context_id#9953814, company_id#9953815, launch_config_ref#9953816, revision_version#9953817], 5
(19) Join
Arguments: Inner, ((((brand_context_id#2 = brand_context_id#9953814) AND (company_id#3 = company_id#9953815)) AND (launch_config_ref#4 = launch_config_ref#9953816)) AND (revision_version#5 = revision_version#9953817))
(20) Project
Arguments: [brand_context_id#2, company_id#3, launch_config_ref#4, revision_version#5, summary__config_name#9957219, summary__config_version#9957220, summary__entity_id#9957221, summary__submission_status#9957222, summary__is_latest#9957223, summary__is_editable#9957224, summary__launch_date#9957225, summary__expiry_date#9957226, summary__submitted_date#9957227, summary__create_ts#9957228, summary__update_ts#9957229, summary__create_date#9957230, summary__update_date#9957231, summary__source#9957232, summary__recurrence_count#9957233, summary__priority#9957234, summary__remarks#9957235, summary__latest_source#9957236, summary__launch_request_name#9957237, summary__NetworkID#9957238, ... 49 more fields]
(21) Filter
Arguments: (isnotnull(key_values#9953846) AND NOT (trim(key_values#9953846, None) = ))
(22) Project
Arguments: [summary__NetworkID#9957238 AS NetworkID#9964678, brand_context_id#2, company_id#3, launch_config_ref#4, revision_version#5, _id#9953813 AS Child_Node#9964679, summary__is_latest#9957223 AS is_latest#9964680, false AS is_latest_submitted#9964681, coalesce(resolved_supplier_ref#9954906, ) AS Supplier_declaration_RefID#9964682, from_json(MapType(StringType,StringType,true), key_values#9953846, Some(Etc/UTC)) AS _kv_map#9964683]
(23) Filter
Arguments: isnotnull(_kv_map#9964683)
(24) Generate
Arguments: explode(_kv_map#9964683), false, [field_key#9964694, field_value#9964695]
(25) Project
Arguments: [NetworkID#9964678, brand_context_id#2, company_id#3, launch_config_ref#4, revision_version#5, Child_Node#9964679, is_latest#9964680, is_latest_submitted#9964681, Supplier_declaration_RefID#9964682, field_key#9964694, field_value#9964695]
(26) Filter
Arguments: isnotnull(field_value#9964695)
(27) Project
Arguments: [NetworkID#9964678, brand_context_id#2, company_id#3, launch_config_ref#4, revision_version#5, Child_Node#9964679, is_latest#9964680, is_latest_submitted#9964681, Supplier_declaration_RefID#9964682, field_key#9964694, field_value#9964695, CASE WHEN (isnull(field_value#9964695) OR (trim(field_value#9964695, None) = )) THEN TEXT WHEN lower(trim(field_value#9964695, None)) IN (true,false) THEN BOOLEAN WHEN RLIKE(trim(field_value#9964695, None), ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2})?) THEN DATE WHEN isnotnull(cast(trim(field_value#9964695, None) as double)) THEN NUMBER ELSE TEXT END AS field_type#9964761, 2026-10-16 07:30:22.066784 AS update_ts#9964762]