-
Notifications
You must be signed in to change notification settings - Fork 517
feat: use independent region manifest for MemWAL #5689
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
|
Thanks for pushing progress on this, I will take a look tomorrow morning! |
- Mark as experimental - Restructure sections (architecture first, then components) - Use bloom filter instead of btree for PK existence - Fix vector index: use same IVF type/centroids/codebook as base - Add region pruning, sync/async ops summary - Update query plans for multi-region (no cross-region dedup) - Rename _memwal to _mem_wal - Remove redundant sections Co-Authored-By: Claude Opus 4.5 <[email protected]>
535ed44 to
5a7d379
Compare
Co-Authored-By: Claude Opus 4.5 <[email protected]>
Codecov Report❌ Patch coverage is 📢 Thoughts on this report? Let us know! |
- Replace RegionId struct with Uuid type alias for consistency - Rename snapshot_timestamp to snapshot_ts_millis per spec - Add conflict resolution between UpdateMemWalState and CreateIndex of MemWalIndex - Implement generation comparison: committed >= to_commit is non-retryable, committed < to_commit is retryable - Add rebase logic to merge merged_generations when CreateIndex rebases against UpdateMemWalState - Add comprehensive unit and integration tests for conflict scenarios Co-Authored-By: Jack Ye <[email protected]> Co-Authored-By: Claude <[email protected]>
- Propagate load_mem_wal_index_details errors instead of silently returning Ok - Consume conflicting_mem_wal_merged_gens directly to avoid clone Co-Authored-By: Jack Ye <[email protected]> Co-Authored-By: Claude <[email protected]>
jackye1995
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks for working with me for all the comments! Looks good to me now, pending CI
Based on discussion with @jackye1995 past few days, update the current MemWAL structure to introduce region specific manifest for independent update so that it can more efficiently run updates in streaming engines like Flink. This mostly comes from draft from @jackye1995, but separate out the MemWAL index part first with some my custom edits.