[SERVER-13260] a race condition between the producer thread and stopReplicationAndFlushBuffer() can cause excessively long rollbacks Created: 18/Mar/14 Updated: 14/Apr/16 Resolved: 26/Aug/15 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Replication |
| Affects Version/s: | 2.6.0-rc1 |
| Fix Version/s: | None |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Matt Dannenberg | Assignee: | Benety Goh |
| Resolution: | Done | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||
| Operating System: | ALL | ||||
| Participants: | |||||
| Description |
|
This race allows for a stale op to end up in the _buffer in bgsync.cpp, which can lead to excessively long rollbacks (since the time difference is negative and as a result ignores the 30min limit) when the primary becomes secondary again and the op gets put in the oplog |
| Comments |
| Comment by Eric Milkie [ 16/Jul/15 ] |
|
Possibly gone away after the refactoring, and the fix for |