[SERVER-28988] add ReplicationProcess and use it to cache Rollback ID Created: 26/Apr/17  Updated: 30/Oct/23  Resolved: 29/Apr/17

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

Type: Bug Priority: Major - P3
Reporter: Mathias Stearn Assignee: Benety Goh
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
is depended on by SERVER-28218 Recoverable Rollback: Implement Rollb... Closed
Related
related to SERVER-27659 persist Rollback ID and read it at st... Closed
related to SERVER-32776 Refresh rollback id cache on increment Closed
Backwards Compatibility: Fully Compatible
Operating System: ALL
Sprint: Repl 2017-05-08
Participants:
Linked BF Score: 0

 Description   

As part of SERVER-27659 we moved from an in-memory rbid to one stored in a collection, which requires a global IS lock. This makes commands that didn't used to require any global lock require one to fill in the replSet metadata. This seems to be causing spurious stepdowns in some of our tests. Additionally, it prevents FTDC from capturing data while the global lock is held or pending.



 Comments   
Comment by Githook User [ 29/Apr/17 ]

Author:

{u'username': u'benety', u'name': u'Benety Goh', u'email': u'benety@mongodb.com'}

Message: SERVER-28988 add ReplicationProcess

This class is intended to hold replication state in a secondary node related to
the copying and applying operations from the sync source.

This initial implementation holds a cached copy of the rollback ID only.
Branch: master
https://github.com/mongodb/mongo/commit/ce76085e2464c38119b307851d4c63687d9a581f

Comment by Benety Goh [ 28/Apr/17 ]

We should definitely cache the RBID. schwerin and I discussed this and we are proposing new object attached to the ServiceContext that will be used for caching the rollback ID for now but may be expanded to hold other state for replication.

Generated at Thu Feb 08 04:19:36 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.