Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-31157

FCV defaults to 3.4 on 3.5.13 for initialized shards

    • Type: Icon: Bug Bug
    • Resolution: Works as Designed
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: Sharding
    • Labels:
      None
    • Storage Execution
    • ALL
    • Hide
      1. Start replica set with --shardsvr :
        > 3.5.13/bin/mongod --replSet a --dbpath a --port 6000 --shardsvr
        > 3.5.13/bin/mongod --replSet a --dbpath b --port 6001 --shardsvr
        > 3.5.13/bin/mongod --replSet a --dbpath c --port 6002 --shardsvr
        
      2. Initiate replica set
        > rs.initiate({_id:"a", members : [ {_id:0, host:"louisa-host:6000"}, {_id:1, host:"louisa-host:6001"}, {_id:2, host:"louisa-host:6002"}]})
        { "ok" : 1 }
        
      3. FeatureCompatibilityVersion is defaulted to 3.4
        a:PRIMARY> db.runCommand({"getParameter" : 1, featureCompatibilityVersion:1})
        { "featureCompatibilityVersion" : "3.4", "ok" : 1 }
        

        (also on secondary):

        a:SECONDARY> db.runCommand({"getParameter" : 1, featureCompatibilityVersion:1})
        { "featureCompatibilityVersion" : "3.4", "ok" : 1 }
        
      Show
      Start replica set with --shardsvr : > 3.5.13/bin/mongod --replSet a --dbpath a --port 6000 --shardsvr > 3.5.13/bin/mongod --replSet a --dbpath b --port 6001 --shardsvr > 3.5.13/bin/mongod --replSet a --dbpath c --port 6002 --shardsvr Initiate replica set > rs.initiate({_id: "a" , members : [ {_id:0, host: "louisa-host:6000" }, {_id:1, host: "louisa-host:6001" }, {_id:2, host: "louisa-host:6002" }]}) { "ok" : 1 } FeatureCompatibilityVersion is defaulted to 3.4 a:PRIMARY> db.runCommand({ "getParameter" : 1, featureCompatibilityVersion:1}) { "featureCompatibilityVersion" : "3.4" , "ok" : 1 } (also on secondary): a:SECONDARY> db.runCommand({ "getParameter" : 1, featureCompatibilityVersion:1}) { "featureCompatibilityVersion" : "3.4" , "ok" : 1 }
    • Storage 2017-10-02

      Brought up a replica set with --shardsvr on 3.5.13. After the members are all healthy, the FCV is defaulted to 3.4 on all shard members.

      This then causes problems when I try to run sharding commands on the cluster :

      mongos> db.runCommand({"shardCollection" : "MMS-AUTO_TEST_DIR.coll1", "key" : {"a" : 1}})
      {
      	"ok" : 0,
      	"errmsg" : "expected primary shard to return a UUID for collection MMS-AUTO_TEST_DIR.coll1 as part of 'info' field but got { name: \"coll1\", type: \"collection\", options: {}, info: { readOnly: false }, idIndex: { v: 2, key: { _id: 1 }, name: \"_id_\", ns: \"MMS-AUTO_TEST_DIR.coll1\" } }",
      	"code" : 1,
      	"codeName" : "InternalError",
      	"$clusterTime" : {
      		"clusterTime" : Timestamp(1505837355, 6),
      		"signature" : {
      			"hash" : BinData(0,"kXw/D8QqlXe1+EjeDFwGcSpd0Uc="),
      			"keyId" : NumberLong("6467521737553608705")
      		}
      	},
      	"operationTime" : Timestamp(1505837355, 6)
      }
      

      Esha identified that these are because the shard members are on FCV=3.4, but the rest of the cluster are on FCV=3.6.

      (Note: not sure if this is intended behavior or not, but Maria mentioned I should file a ticket. Happy to adjust our tests to accommodate if this is intended behavior)

            Assignee:
            backlog-server-execution [DO NOT USE] Backlog - Storage Execution Team
            Reporter:
            louisa.berger@mongodb.com Louisa Berger
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved: