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]
