[SERVER-20487] w:majority writes that return an error should wait until previous write majority-commits Created: 18/Sep/15  Updated: 11/Nov/16  Resolved: 23/Sep/15

Status: Closed
Project: Core Server
Component/s: Replication
Affects Version/s: None
Fix Version/s: 3.1.9

Type: Improvement Priority: Major - P3
Reporter: Eric Milkie Assignee: Eric Milkie
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
Related
related to SERVER-27005 Write error revalidate logic needs to... Closed
Backwards Compatibility: Fully Compatible
Sprint: RPL A (10/09/15)
Participants:
Linked BF Score: 0

 Description   

This is to permit w:majority writers to subsequently read-level-majority the data that caused the error.



 Comments   
Comment by Githook User [ 30/Sep/15 ]

Author:

{u'username': u'milkie', u'name': u'Eric Milkie', u'email': u'milkie@10gen.com'}

Message: SERVER-20487 actually honor WC for batch write commands, even for errors
Branch: master
https://github.com/mongodb/mongo/commit/e11728471f3c428ef5c6fdd4b458c2a50013ce04

Comment by Githook User [ 28/Sep/15 ]

Author:

{u'username': u'stbrody', u'name': u'Spencer T Brody', u'email': u'spencer@mongodb.com'}

Message: SERVER-20645 SERVER-20487 Store lastVisibleOpTime instead of lastCommittedOpTime on responses from config servers
Branch: master
https://github.com/mongodb/mongo/commit/076800cf6d771303202f72f01e7980095befaf8b

Comment by Githook User [ 23/Sep/15 ]

Author:

{u'username': u'milkie', u'name': u'Eric Milkie', u'email': u'milkie@10gen.com'}

Message: SERVER-20487 w:majority writes that return an error should wait for replication
Branch: master
https://github.com/mongodb/mongo/commit/1aa5dffef1dbf3906aa7fb0a0bbc3da8209f19ff

Comment by Githook User [ 21/Sep/15 ]

Author:

{u'username': u'renctan', u'name': u'Randolph Tan', u'email': u'randolph@10gen.com'}

Message: SERVER-20487 Advance config server opTime on write error
Branch: master
https://github.com/mongodb/mongo/commit/a74ecb2a746e4d8a8ab78610c07d509788c4d8ad

Comment by Andy Schwerin [ 18/Sep/15 ]

I think that if the error occurs independent of what values are stored in the database, there's no need to wait. For example, a malformed update request needn't wait, but a duplicate key error must. I'm not sure if this is particularly easy to achieve, and it's certainly always safe to wait.

Generated at Thu Feb 08 03:54:22 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.