-
Type: Bug
-
Resolution: Done
-
Priority: Major - P3
-
None
-
Affects Version/s: 3.1.9
-
Component/s: Replication
-
None
-
ALL
-
- Set up a 3.1.9 replica set
- Stop one of the mongods
- Start up the mongod using mongodb 3.0.6 (set the storageEngine to wiredTiger)
- Watch mongod crash
During downgrade of a replica set from 3.1.9 to 3.0.6, I see "Fatal Assertion 28545" upon starting up a node with version 3.0.6. The log file hints that mongod 3.0.6 does not like the protocolVersion field in the replica set configuration.
Log file:
/tmp/mms-automation//test/versions/mongodb-osx-x86_64-3.0.6/bin/mongod --dbpath=db2 --replSet=rs0 --port=27018 --storageEngine=wiredTiger 2015-10-09T13:46:03.810-0400 I STORAGE [initandlisten] wiredtiger_open config: create,cache_size=8G,session_max=20000,eviction=(threads_max=4),statistics=(fast),log=(enabled=true,archive=true,path=journal,compressor=snappy),file_manager=(close_idle_time=100000),checkpoint=(wait=60,log_size=2GB),statistics_log=(wait=0), 2015-10-09T13:46:04.342-0400 I STORAGE [initandlisten] Starting WiredTigerRecordStoreThread local.oplog.rs 2015-10-09T13:46:04.345-0400 I CONTROL [initandlisten] MongoDB starting : pid=89346 port=27018 dbpath=db2 64-bit host=neurofunk.local 2015-10-09T13:46:04.345-0400 I CONTROL [initandlisten] 2015-10-09T13:46:04.345-0400 I CONTROL [initandlisten] ** WARNING: soft rlimits too low. Number of files is 256, should be at least 1000 2015-10-09T13:46:04.345-0400 I CONTROL [initandlisten] db version v3.0.6 2015-10-09T13:46:04.345-0400 I CONTROL [initandlisten] git version: 1ef45a23a4c5e3480ac919b28afcba3c615488f2 2015-10-09T13:46:04.345-0400 I CONTROL [initandlisten] build info: Darwin mci-osx108-7.build.10gen.cc 12.5.0 Darwin Kernel Version 12.5.0: Sun Sep 29 13:33:47 PDT 2013; root:xnu-2050.48.12~1/RELEASE_X86_64 x86_64 BOOST_LIB_VERSION=1_49 2015-10-09T13:46:04.345-0400 I CONTROL [initandlisten] allocator: system 2015-10-09T13:46:04.345-0400 I CONTROL [initandlisten] options: { net: { port: 27018 }, replication: { replSet: "rs0" }, storage: { dbPath: "db2", engine: "wiredTiger" } } 2015-10-09T13:46:04.346-0400 E REPL [initandlisten] Locally stored replica set configuration does not parse; See http://www.mongodb.org/dochub/core/recover-replica-set-from-invalid-config for information on how to recover from this. Got "BadValue Unexpected field protocolVersion in replica set configuration" while parsing { _id: "rs0", version: 3, protocolVersion: 1, members: [ { _id: 0, host: "neurofunk.local:27017", arbiterOnly: false, buildIndexes: true, hidden: false, priority: 1.0, tags: {}, slaveDelay: 0, votes: 1 }, { _id: 1, host: "neurofunk.local:27018", arbiterOnly: false, buildIndexes: true, hidden: false, priority: 1.0, tags: {}, slaveDelay: 0, votes: 1 }, { _id: 2, host: "neurofunk.local:27019", arbiterOnly: false, buildIndexes: true, hidden: false, priority: 1.0, tags: {}, slaveDelay: 0, votes: 1 } ], settings: { chainingAllowed: true, heartbeatIntervalMillis: 2000, heartbeatTimeoutSecs: 10, electionTimeoutMillis: 10000, electionTimeoutOffsetLimitMillis: 2000, getLastErrorModes: {}, getLastErrorDefaults: { w: 1, wtimeout: 0 } } } 2015-10-09T13:46:04.346-0400 I - [initandlisten] Fatal Assertion 28545 2015-10-09T13:46:04.346-0400 I - [initandlisten] ***aborting after fassert() failure