[SERVER-15425] Make new replication code resilient to members being removed from the replset config Created: 26/Sep/14  Updated: 25/Oct/14  Resolved: 08/Oct/14

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

Type: Bug Priority: Major - P3
Reporter: Spencer Brody (Inactive) Assignee: Spencer Brody (Inactive)
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
related to SERVER-15427 Add command to manage the slave map Backlog
is related to SERVER-15443 Provide mechanism for inspecting the ... Closed
is related to SERVER-15444 Clean op old entries in the slave tra... Closed
is related to SERVER-14744 Stop sending replSetUpdatePosition co... Closed
Backwards Compatibility: Fully Compatible
Operating System: ALL
Participants:

 Description   

Currently the _slaveInfoMap in ReplicationCoordinatorImpl is never cleared out, which can cause an fassert in prepareReplSetUpdatePositionCommand

{handshakes}

if a node in the map can't be found in the config.

Simplest way to deal with this seems to be to remove entries from the map on reconfig if the memberID can no longer be found in the new config



 Comments   
Comment by Githook User [ 08/Oct/14 ]

Author:

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

Message: SERVER-15425 Remove nodes from the _slaveInfoMap when they are removed from the replset config
Branch: master
https://github.com/mongodb/mongo/commit/ada278dd2f72981789d1151a6e419f1cce4872e6

Comment by Spencer Brody (Inactive) [ 26/Sep/14 ]

Example of this in the wild: http://buildlogs.mongodb.org/MCI_windows-64-2k8/builds/93383/test/sharding_0/mongos_no_replica_set_refresh.js

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