[SERVER-38203] Speculative transactions do not wait on commit on secondaries Created: 19/Nov/18 Updated: 27/Oct/23 Resolved: 26/Sep/19 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Replication |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Matthew Russotto | Assignee: | Backlog - Replication Team |
| Resolution: | Gone away | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Assigned Teams: |
Replication
|
| Operating System: | ALL |
| Participants: |
| Description |
|
On primaries, we handle speculative transactions by waiting for the read op time to become majority committed by treating it as a write op time when we commit the transaction with write concern majority. On secondaries, this doesn't work. If we wait for write concern on secondaries, we get a "stepped down" error. We either need to special-case read-only transactions so they can use a write concern on secondaries, or find another mechanism to wait. |
| Comments |
| Comment by William Schultz (Inactive) [ 05/Dec/18 ] |
|
If and when we do implement this, we may be able to utilize some of the machinery added in |