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

Find command on mongod needs to wait until out of critical section on shard version errors

    • Type: Icon: Bug Bug
    • Resolution: Done
    • Priority: Icon: Major - P3 Major - P3
    • 3.1.9
    • Affects Version/s: None
    • Component/s: Sharding
    • Labels:
      None
    • Fully Compatible
    • ALL
    • QuInt A (10/12/15)

      If a find command comes in to a shard while that shard is in the critical section donating its chunk away, it will throw a shard version error because the version that came in from mongos on the find command won't match the in-memory version that was bumped when we entered the critical section.

      Currently it will return a shard version error, which will cause the mongos to retry, but the retry could end the same way if the shard still hasn't left the critical section. Instead of returning immediately returning a shard version error, it should do what write commands and setShardVersion does and block until the critical section ends before returning the stale version error.

            Assignee:
            misha.tyulenev@mongodb.com Misha Tyulenev (Inactive)
            Reporter:
            spencer@mongodb.com Spencer Brody (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: