Retry command on stale exception on shards only if the shard is stale

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Duplicate
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: Sharding
    • None
    • Sharding EMEA
    • None
    • 3
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Thanks to  SERVER-28943 shards now retry non-write commands on stale exception.
      This is done unconditionally even if the exception is indicating that the router was stale.

      Once database and collection version will be truly comparable (SERVER-52587) we can conditionally refresh and retry the command only if "requiredVersion (Router) > wantedVersion (Shard)".

      This new behavior should be either addressed once 5.0 becomes last-lts or should be guarded by an FCV flag in order to be sure that we are on a binary version that uses truly comparable database and collection versions.

            Assignee:
            [DO NOT USE] Backlog - Sharding EMEA
            Reporter:
            Tommaso Tocci
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: