[ 
https://issues.apache.org/jira/browse/SPARK-60252?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

ASF GitHub Bot updated SPARK-60252:
-----------------------------------
    Labels: pull-request-available  (was: )

> SCD1 Ignore-null support; Field Reconciliation Data Classes
> -----------------------------------------------------------
>
>                 Key: SPARK-60252
>                 URL: https://issues.apache.org/jira/browse/SPARK-60252
>             Project: Spark
>          Issue Type: Sub-task
>          Components: Declarative Pipelines
>    Affects Versions: 4.4.0
>            Reporter: Anish Mahto
>            Priority: Major
>              Labels: pull-request-available
>
> Introduce case classes and helpers that represent user-data fields during 
> SCD1 ignore-null reconciliation.
> SCD1 reconciliation combines a key's CDC events into one row holding the 
> key's latest state. It first collapses the incoming microbatch to at most one 
> row per key, then reconciles that row against the key's persisted tombstone 
> and, on merge, against its target row. Without ignore-null, reconciliation is 
> row-wide: one row wins every field. With ignore-null, an upsert authors a 
> selected leaf only if it provides a non-null value, so different rows can win 
> different fields.
> `Scd1FieldToReconcile` describes one field that is reconciled as a unit. That 
> is either a leaf of a column selected for ignore-null, or a whole column 
> outside the selection, since every upsert authors all of that column's 
> leaves. Reconciling it produces an `Scd1ReconciledField`, which holds the 
> reconciled value and the sequence that authored it; the version map is built 
> from those sequences. 
> Both reconciliations, within the microbatch and against the target row, use 
> these same two classes, so they define fields and build the version map the 
> same way. The transition is one-way, and neither class changes behavior until 
> follow-up tickets wire them in.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to