lszskye opened a new pull request, #266: URL: https://github.com/apache/paimon-cpp/pull/266
### Purpose Linked issue: #174 Support `changelog-producer=full-compaction` for primary-key tables. This change: - adds `FullChangelogMergeFunctionWrapper` to compare max-level records with merged results and generate INSERT, UPDATE_BEFORE, UPDATE_AFTER, and DELETE records; - adds `FullChangelogMergeTreeCompactRewriter` and wires it into the compact manager factory; - generates changelog files when compaction outputs to the maximum level; - supports changelog row deduplication and ignored fields; - enables streaming reads of full-compaction changelog manifests; - limits the initial full streaming scan to max-level files so pending lower-level changes are not emitted twice; - removes the unused output-level argument from the regular `MergeFunctionWrapperFactory`; - removes the validation that previously rejected the full-compaction changelog producer. ### Tests Added UT for: - single-record full-compaction results; - INSERT, UPDATE, and DELETE changelog generation; - changelog row deduplication; - row-deduplication ignored fields; - rejecting multiple max-level records for the same key; Added integration coverage for: WriteAndReadInteTest -- 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]
