goutamadwant opened a new pull request, #12840:
URL: https://github.com/apache/seatunnel/pull/12840

   ### Purpose of this pull request
   
   Fixes #12821.
   
   This PR changes ClickHouse sink batch reducer so rows with a NULL or 
otherwise incomplete configured key retain separate buffer entries. Previously, 
equal incomplete keys collapsed to the last row before SQL execution. Rows with 
complete keys retain the existing last-write-wins reduction.
   
   The change is confined to the ClickHouse executor and its unit and E2E 
tests; it does not alter the JDBC connector.
   
   ### Does this PR introduce _any_ user-facing change?
   
   Yes. Multiple rows with incomplete keys are no longer dropped by in-memory 
batch reduction. Complete-key behavior is unchanged.
   
   This addresses buffering, not ClickHouse SQL's handling of `= NULL`. A 
NULL-key delete is forwarded to the delete executor, but this PR does not claim 
that the existing SQL can identify and delete a physical NULL-key row.
   
   ### How was this patch tested?
   
   - Reproduced the buffer-collapse behavior and verified the corrected 
behavior.
   - Passed 65 ClickHouse connector unit tests, including new coverage for NULL 
single and composite keys, deletes forwarded to the executor, and complete-key 
reduction.
   - Passed three SeaTunnel Zeta E2E tests against a real local ClickHouse 
MergeTree table with `allow_nullable_key = 1`; the Failsafe report shows 0 
failures and 0 errors.
   - Checked formatting and the final diff. Full repository CI remains for the 
PR.
   
   ### Check list
   
   - [x] Added connector E2E coverage.
   - [x] No new dependencies or JARs.
   - [x] No configuration, default, or public-API change.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to