Skip ccpage that has no dirty keys since last datasync during datasyn…#374
Skip ccpage that has no dirty keys since last datasync during datasyn…#374
Conversation
WalkthroughReplaced a boolean persisted-data flag with a uint64_t last-data-sync timestamp in RangePartitionDataSyncScanCc; added accessor and member, removed the boolean member, tightened a slice-index assertion, updated TemplateCcMap to skip pages with no updates since the timestamp, and updated call sites to pass the timestamp. Changes
Sequence Diagram(s)(omitted) Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Possibly related PRs
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 1 | ❌ 2❌ Failed checks (2 warnings)
✅ Passed checks (1 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
f326d2d to
2063d1a
Compare
There was a problem hiding this comment.
Actionable comments posted: 0
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
tx_service/include/cc/template_cc_map.h (1)
5671-5727: Don’t skip clean pages when exporting persisted keys for split slices.In checkpoint mode, a pinned slice (
export_persisted_key_only == true) needs all persisted keys to derive subslice boundaries. The new skip path can drop clean pages and produce incomplete exports. Guard the skip with!export_persisted_key_only(or!slice_pinned).🐛 Suggested fix
- if (!req.export_base_table_item_ && - ccp->last_dirty_commit_ts_ <= req.LastDataSyncTs()) + if (!req.export_base_table_item_ && !export_persisted_key_only && + ccp->last_dirty_commit_ts_ <= req.LastDataSyncTs())
…cscan remove useless variable
2063d1a to
a432025
Compare
|
Update submodule pr: |
During the
DataSyncScanfor a range partition, skipccpagesthat have no dirty keys since the lastDataSync.remove useless variable
Here are some reminders before you submit the pull request
fixes eloqdb/tx_service#issue_id./mtr --suite=mono_main,mono_multi,mono_basicSummary by CodeRabbit
Improvements
Bug Fixes
✏️ Tip: You can customize this high-level summary in your review settings.