[Mirror] [ENH] add MCMR property tests and fix dirty log detection (upstream #6835)#3
Open
hashbender wants to merge 20 commits intomainfrom
Open
[Mirror] [ENH] add MCMR property tests and fix dirty log detection (upstream #6835)#3hashbender wants to merge 20 commits intomainfrom
hashbender wants to merge 20 commits intomainfrom
Conversation
Introduce dedicated multi-cluster multi-region (MCMR) property tests that write records across two regions and verify cross-region replication invariants. Parameterize existing test_add tests by database name so they run against both classic and MCMR databases when multi-region is enabled. Fix dirty log detection in the repl manifest manager: - Treat intrinsic_cursor=0 as unset so newly initialized logs are not spuriously reported as dirty - Initialize manifest_regions rows with intrinsic_cursor=0 instead of omitting the column, preventing GC from misinterpreting the starting offset as an active reader position - Change the SQL threshold comparison from > to >= so logs at the exact threshold boundary are correctly included - Add decode_intrinsic_cursor helper that filters out zero values Retry Spanner-aborted flush compaction transactions: - Add is_spanner_aborted() to SysDbError to detect gRPC Aborted status - Wrap the flush_collection_compaction read-write transaction with backon retry (100ms delay, 4 attempts) on Spanner abort - Propagate gRPC status codes through SysDbError and FlushCompactionError instead of mapping all Spanner errors to Internal Improve dirty log test diagnostics by dumping in-memory and Spanner state on assertion failure. Add regression tests for single-add and three-add dirty log scenarios. Co-authored-by: AI
This reverts commit 0eebd27.
|
Tenki Code Review - Complete Files Reviewed: 16 I reviewed the PR changes across workflow/config updates, property tests, and Rust runtime components, including sysdb Spanner retry logic and WAL manifest dirty-log handling. No confirmed code quality or security issues reachable via current callers were identified. Files Reviewed (16 files) |
Reviewer ChecklistPlease leverage this checklist to ensure your code review is thorough before approving Testing, Bugs, Errors, Logs, Documentation
System Compatibility
Quality
|
Owner
Author
|
Tenki Code Review - Complete Files Reviewed: 16 I reviewed the PR changes and did not find any actionable code quality or security issues introduced by this diff. The runtime changes appear consistent with current callers and include regression coverage for the updated behavior. Files Reviewed (16 files) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Mirrored from chroma-core#6835 — Multi-region replication tests, Spanner retry logic, dirty log detection fixes