-
Type: Bug
-
Resolution: Done
-
Priority: Major - P3
-
Affects Version/s: 3.2.5
-
Component/s: Replication
-
None
-
Fully Compatible
-
ALL
-
-
Security 15 (06/03/16)
-
(copied to CRM)
That must be a regression from SERVER-23838 as pointed by kevin.pulo.
It leads to weird consequnces such as if other replica set members specified with the correct host names, they may consider themselves to be the member with the name that contains "0.0.0.0" and will actually try to heartbeat themselves:
"taken from a remote member"
2016-05-23T15:03:13.588-0700 I REPL [ReplicationExecutor] New replica set config in use: { _id: "MMS", version: 1, protocolVersion: 1, members: [ { _id: 0, host: "0.0.0.0:28107", arbiterOnly: false, buildIndexes: true, hidden: false, priority: 1.0, tags: {}, slaveDelay: 0, votes: 1 } ], settings: { chainingAllowed: true, heartbeatIntervalMillis: 2000, heartbeatTimeoutSecs: 10, electionTimeoutMillis: 10000, getLastErrorModes: {}, getLastErrorDefaults: { w: 1, wtimeout: 0 }, replicaSetId: ObjectId('57437e1f88f956063b96e00c') } } 2016-05-23T15:03:13.588-0700 I REPL [ReplicationExecutor] This node is 0.0.0.0:28107 in the config ... 2016-05-23T15:04:29.958-0700 W REPL [ReplicationExecutor] Got error (BadValue: Received heartbeat from member with the same member ID as ourself: 0) response on heartbeat request to hostnameX:28107; { ok: 1.0, hbmsg: "" }
The workaround is to specify host names or unique IP addresses explicitly:
var cfg = { _id: "testRS", version: 1, members: [ { _id: 0, host : "host1:27017"}, { _id: 1, host : "host2:27017"}, { _id: 2, host : "host3:27017"} ] }; rs.initiate(cfg);
- related to
-
SERVER-3350 Allow 0.0.0.0 as the bind_ip
- Closed
-
SERVER-22708 Add exposure startup warnings
- Closed
-
SERVER-23838 Remove startup warnings for no access control and bind_ip
- Closed