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

Protecting against version skew between mongos and mongods

    • Type: Icon: Improvement Improvement
    • Resolution: Done
    • Priority: Icon: Minor - P4 Minor - P4
    • None
    • Affects Version/s: None
    • Component/s: Sharding
    • Labels:
      None
    • Sharding

      As features get added to sharding, there can be bad results if somebody uses an old mongos with a cluster that's using newer features. For example, mongos pre-v2.4 doesn't know about hashed sharding, and weird things ensue if you use an old mongos with a hashed-sharded collection (e.g., inserts into the wrong shards). For another example, I'd imagine that a v2.0 mongos couldn't honor the v2.2 shard tags & tag ranges.

      Although this falls into the user-error category of mistake (since we tell people to upgrade mongos first), it's easy to make mistakes here. We should guard against it, e.g., by having mongos include its version number in the arguments to setShardVersion and having mongod reject the command from sufficiently old mongoses.

            Assignee:
            backlog-server-sharding [DO NOT USE] Backlog - Sharding Team
            Reporter:
            richard.kreuter Richard Kreuter (Inactive)
            Votes:
            1 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved: