-
Type: Bug
-
Resolution: Duplicate
-
Priority: Major - P3
-
None
-
Affects Version/s: 3.0.6, 3.0.7
-
Component/s: Replication
-
None
-
Replication
-
ALL
-
v3.4, v3.2
-
-
Repl E (01/08/16), Repl F (01/29/16), Repl 10 (02/19/16), Repl 11 (03/11/16), Repl 12 (04/01/16), Repl 18 (08/05/16), Repl 2016-08-29
The parameter chainingAllowed = false is not enforced after a rs.stepDown() command.
The secondaries are chained with the old primary connecting to the new primary directly but the other secondary syncing from the old primary.
Before stepDown()
abc:PRIMARY> rs.status() { "set" : "abc", "date" : ISODate("2015-11-18T21:30:38.767Z"), "myState" : 1, "members" : [ { "_id" : 0, "name" : "Rubens-MacBook-Pro.local:27117", "health" : 1, "state" : 1, "stateStr" : "PRIMARY", "uptime" : 45, "optime" : Timestamp(1447881863, 1), "optimeDate" : ISODate("2015-11-18T21:24:23Z"), "electionTime" : Timestamp(1447882202, 1), "electionDate" : ISODate("2015-11-18T21:30:02Z"), "configVersion" : 4, "self" : true }, { "_id" : 1, "name" : "Rubens-MacBook-Pro.local:27118", "health" : 1, "state" : 2, "stateStr" : "SECONDARY", "uptime" : 36, "optime" : Timestamp(1447881863, 1), "optimeDate" : ISODate("2015-11-18T21:24:23Z"), "lastHeartbeat" : ISODate("2015-11-18T21:30:38.370Z"), "lastHeartbeatRecv" : ISODate("2015-11-18T21:30:38.282Z"), "pingMs" : 0, "syncingTo" : "Rubens-MacBook-Pro.local:27117", "configVersion" : 4 }, { "_id" : 2, "name" : "Rubens-MacBook-Pro.local:27119", "health" : 1, "state" : 2, "stateStr" : "SECONDARY", "uptime" : 32, "optime" : Timestamp(1447881863, 1), "optimeDate" : ISODate("2015-11-18T21:24:23Z"), "lastHeartbeat" : ISODate("2015-11-18T21:30:38.724Z"), "lastHeartbeatRecv" : ISODate("2015-11-18T21:30:38.685Z"), "pingMs" : 8, "syncingTo" : "Rubens-MacBook-Pro.local:27117", "configVersion" : 4 } ], "ok" : 1 }
After stepDown()
abc:SECONDARY> rs.status() { "set" : "abc", "date" : ISODate("2015-11-18T21:30:51.041Z"), "myState" : 2, "syncingTo" : "Rubens-MacBook-Pro.local:27119", "members" : [ { "_id" : 0, "name" : "Rubens-MacBook-Pro.local:27117", "health" : 1, "state" : 2, "stateStr" : "SECONDARY", "uptime" : 58, "optime" : Timestamp(1447881863, 1), "optimeDate" : ISODate("2015-11-18T21:24:23Z"), "syncingTo" : "Rubens-MacBook-Pro.local:27119", "configVersion" : 4, "self" : true }, { "_id" : 1, "name" : "Rubens-MacBook-Pro.local:27118", "health" : 1, "state" : 2, "stateStr" : "SECONDARY", "uptime" : 48, "optime" : Timestamp(1447881863, 1), "optimeDate" : ISODate("2015-11-18T21:24:23Z"), "lastHeartbeat" : ISODate("2015-11-18T21:30:50.383Z"), "lastHeartbeatRecv" : ISODate("2015-11-18T21:30:50.302Z"), "pingMs" : 0, "syncingTo" : "Rubens-MacBook-Pro.local:27117", "configVersion" : 4 }, { "_id" : 2, "name" : "Rubens-MacBook-Pro.local:27119", "health" : 1, "state" : 1, "stateStr" : "PRIMARY", "uptime" : 44, "optime" : Timestamp(1447881863, 1), "optimeDate" : ISODate("2015-11-18T21:24:23Z"), "lastHeartbeat" : ISODate("2015-11-18T21:30:50.744Z"), "lastHeartbeatRecv" : ISODate("2015-11-18T21:30:50.700Z"), "pingMs" : 1, "electionTime" : Timestamp(1447882246, 1), "electionDate" : ISODate("2015-11-18T21:30:46Z"), "configVersion" : 4 } ], "ok" : 1 }
This issue can't be reproduced on 3.2.0-rc2
- duplicates
-
SERVER-39621 Disabled chaining should enforce sync source change when the primary steps down even if the oplog fetcher isn't killed on sync source
- Closed
- related to
-
SERVER-25145 During rollback (or w/minvalid invalid) select sync source based on end OpTime
- Closed
-
SERVER-44603 Consider having tailable readPreference "primary" queries killed on stepdown
- Backlog