Make ShardRegistry::_lookup() fail if topologyTIme apparently goes backwards

XMLWordPrintableJSON

    • Type: Improvement
    • Resolution: Duplicate
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: Sharding
    • Sharding EMEA
    • Sharding EMEA 2023-02-06
    • None
    • 3
    • None
    • None
    • None
    • None
    • None
    • None

      If the maxTopologyTime from the config.shards documents is lower than the cached topologyTime (cachedData.getTime().topologyTime), then the ShardRegistry is doomed to infinitely refresh until this is no longer true. Better would be for _lookup() to fail (ie. uassert) in this case, so that the underlying operation will fail in this unexpected situation.

            Assignee:
            Sergi Mateo Bellido
            Reporter:
            Kevin Pulo
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: