[SERVER-55051] Tenant migration donor primaries should not serve local, majority, and causal reads after the migration has committed Created: 08/Mar/21 Updated: 29/Oct/23 Resolved: 23/Apr/21 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Replication |
| Affects Version/s: | None |
| Fix Version/s: | 4.9.0-rc1, 5.0.0-rc0 |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Esha Maharishi (Inactive) | Assignee: | Lingzhi Deng |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | pm-1791_non-cloud-blocking, pm-1791_optimizations | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||
| Backport Requested: |
v4.9
|
||||||||
| Sprint: | Repl 2021-04-05, Repl 2021-04-19, Repl 2021-05-03 | ||||||||
| Participants: | |||||||||
| Linked BF Score: | 151 | ||||||||
| Description |
|
Tenant migrations were designed to allow donor nodes to serve local and majority reads even after the migration committed, since local and majority reads are allowed to serve stale data. While this will not cause unexpected behavior for secondary reads, it may be surprising for primary-only reads, since users expect reading and writing to the primary of a single replica set to have read-your-own-writes behavior, unless there is a split brain or failover. This is true even for causal reads, because drivers use implicit sessions by default, and causal consistency in sessions is on by default. Note that since local and majority reads are untimestamped, the donor primary will have to check if the migration has committed at the time the read starts, rather than comparing the read's timestamp to the blockTimestamp. |
| Comments |
| Comment by Githook User [ 23/Apr/21 ] |
|
Author: {'name': 'Lingzhi Deng', 'email': 'lingzhi.deng@mongodb.com', 'username': 'ldennis'}Message: (cherry picked from commit 16cb79e780c4101118fdd3253bcacf5d63be886f) |
| Comment by Githook User [ 23/Apr/21 ] |
|
Author: {'name': 'Lingzhi Deng', 'email': 'lingzhi.deng@mongodb.com', 'username': 'ldennis'}Message: |