eldenmoon opened a new pull request, #70435: URL: https://github.com/apache/doris/pull/70435
### What problem does this PR solve? CIR-22588: after a full compaction, a VARIANT row's non-null sparse values (`tag-labeling.text_info.open.tag_id/tag_name`) became NULL in the materialized subcolumns and were removed from sparse, so the values disappeared from the output segment. The compaction path promotes sparse paths by a raw-byte `lower_bound`; sparse keys written in component order were missed and then dropped by the merge. ### What does this PR do? Adds a regression suite only (no production code change). With the byte-ordered sparse writer (#70189) and the exact-cell promotion (#70212), the suite: - writes the customer's six-row shape into a V2 table with `variant_max_subcolumns_count=2` and MOW; - runs a full compaction on the tablet; - asserts that row 1 still returns `tag_id`/`tag_name`/the parent object after compaction, and that control rows 3/4 are intact. The suite forces `enable_variant_v2=true` with `setFeConfigTemporary`, since the issue is specific to the V2 sparse Map. ### Verification - Passes on the fixed 4.1 V2 build (`sparse_promotion_compaction`, before/after/control all match). - The same suite is added to the selectdb cloud hotfix branch and is run there as well. - On the pre-fix build (8db76466) the after-compaction row 1 is NULL, so the suite catches the regression. -- 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] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
