luwei16 opened a new pull request, #68793:
URL: https://github.com/apache/doris/pull/68793
### What problem does this PR solve?
Issue Number: N/A
Related PR: N/A
Problem Summary: Single-version rowsets store a zero placeholder in their
physical commit-TSO column and use rowset metadata to provide the actual
timestamp. Local index build/drop and snapshot rowset-ID conversion rebuild
metadata without preserving commit_tso. After those operations a fresh reader
can return zero instead of the committed timestamp and incorrectly prune rows.
Cloud snapshot metadata conversion has the same field omission.
Copy the source commit_tso when present in these three one-to-one rewrite
paths, reusing the existing manual-build metadata helper for index changes.
Preserve absent and unassigned fields and complete TSO ranges without changing
reader compatibility or generic multi-rowset writer behavior. Add tests for
build and drop, fresh-reader projection and pruning, persisted local
visible/stale rowsets, and Cloud metadata conversion. This prevents future
omissions but does not recover already-lost timestamps.
### Release note
Preserve rowset commit timestamps during local index changes and snapshot
metadata conversion to avoid incorrect timestamp values and filtering.
### Check List (For Author)
- Test: Unit Test
- ASAN_UT: 8 focused tests reproduced 6 failures before the fix and all
passed afterward; all 54 related BE tests passed.
- clang-format v16, check-format, changed-line clang-tidy, build
hygiene, and git diff --check.
- No deployment or SQL regression: tests exercise the real rowset
conversions, header persistence, and fresh segment readers; live Cloud RESTORE
is not validated.
- Behavior changed: Yes (preserve source commit TSO when rebuilding rowset
metadata)
- Does this need documentation: No
--
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]