Details
-
Task
-
Resolution: Gone away
-
Major - P3
-
None
-
None
-
None
-
None
-
Sharding
-
Fully Compatible
-
Sharding 2017-10-02
Description
findAndModify retry design is based on storing the post/pre-image of the operation on a separate no-op oplog entry along with the actual write oplog entry. In normal cases, the retry logic can expect to see only a max of 2 oplog entries. However, due of migrations, there can be duplicate oplog entries (for the same write, but different timestamp). The findAndModify retry logic should be able to handle this.