[SERVER-7186] Batched oplog application increases frequency of idempotency violations Created: 27/Sep/12 Updated: 11/Jul/16 Resolved: 23/Oct/12 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Replication, Storage |
| Affects Version/s: | 2.2.0 |
| Fix Version/s: | 2.2.1, 2.3.0 |
| Type: | Bug | Priority: | Blocker - P1 |
| Reporter: | Ian Whalen (Inactive) | Assignee: | Alberto Lerner |
| Resolution: | Done | Votes: | 9 |
| Labels: | rsi | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Attachments: |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Issue Links: |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Operating System: | ALL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Participants: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Description |
|
In 2.0.x, oplog entries are applied one at a time on each secondary. Thus, on a restart after a shutdown, only a single op can be applied twice. In 2.2.0, ops are applied in batches, so on a restart, potentially all the ops in the last batch can be reapplied. There are certain sequences of ops that violate idempotency guarantees needed to insure proper replication. In 2.2.0, if we detect such a sequence, the secondary halts replication and shuts down, unable to come back online. |
| Comments |
| Comment by Eric Milkie [ 05/Nov/12 ] |
|
Hi Rotem, |
| Comment by Rotem Hermon [ 05/Nov/12 ] |
|
This bug is not fixed yet. Upgraded to 2.2.1 and got the error again that brings down mongod. See attached log. |
| Comment by auto [ 17/Oct/12 ] |
|
Author: {u'date': u'2012-10-17T08:22:08-07:00', u'email': u'alerner@10gen.com', u'name': u'Alberto Lerner'}Message: |
| Comment by auto [ 17/Oct/12 ] |
|
Author: {u'date': u'2012-10-17T08:22:08-07:00', u'email': u'alerner@10gen.com', u'name': u'Alberto Lerner'}Message: |
| Comment by auto [ 12/Oct/12 ] |
|
Author: {u'date': u'2012-10-12T10:18:08-07:00', u'email': u'alerner@10gen.com', u'name': u'Alberto Lerner'}Message: |
| Comment by auto [ 12/Oct/12 ] |
|
Author: {u'date': u'2012-10-12T08:57:04-07:00', u'email': u'alerner@10gen.com', u'name': u'Alberto Lerner'}Message: |
| Comment by auto [ 12/Oct/12 ] |
|
Author: {u'date': u'2012-10-11T16:07:14-07:00', u'name': u'Alberto Lerner', u'email': u'alerner@10gen.com'}Message: |
| Comment by auto [ 12/Oct/12 ] |
|
Author: {u'date': u'2012-10-05T12:38:04-07:00', u'email': u'alerner@10gen.com', u'name': u'Alberto Lerner'}Message: |
| Comment by auto [ 12/Oct/12 ] |
|
Author: {u'date': u'2012-10-04T17:49:57-07:00', u'email': u'alerner@10gen.com', u'name': u'Alberto Lerner'}Message: |
| Comment by auto [ 12/Oct/12 ] |
|
Author: {u'date': u'2012-10-12T10:18:08-07:00', u'email': u'alerner@10gen.com', u'name': u'Alberto Lerner'}Message: |
| Comment by auto [ 12/Oct/12 ] |
|
Author: {u'date': u'2012-10-12T08:57:04-07:00', u'email': u'alerner@10gen.com', u'name': u'Alberto Lerner'}Message: |
| Comment by auto [ 11/Oct/12 ] |
|
Author: {u'date': u'2012-10-11T16:07:14-07:00', u'name': u'Alberto Lerner', u'email': u'alerner@10gen.com'}Message: |
| Comment by auto [ 06/Oct/12 ] |
|
Author: {u'date': u'2012-10-05T12:38:04-07:00', u'email': u'alerner@10gen.com', u'name': u'Alberto Lerner'}Message: |
| Comment by auto [ 05/Oct/12 ] |
|
Author: {u'date': u'2012-10-04T17:49:57-07:00', u'email': u'alerner@10gen.com', u'name': u'Alberto Lerner'}Message: |