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

Add the "Shard versioning and database versioning" section to the sharding arch guide

    • Type: Icon: Task Task
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 4.7.0
    • Affects Version/s: None
    • Component/s: Sharding
    • Labels:
      None
    • Fully Compatible
    • Sharding 2020-05-04, Sharding 2020-05-18

      Guidelines:

      Should include

      • What does the versioning protocol achieve? E.g., allows a router to lazily discover that its routing cache is stale
      • What types of events cause a routing cache to be stale?
      • What are special version conventions we use? 0,0|0 for unsharded, 0,0|epoch for no chunk, 0,0|MAX for ignored

      Code references

      • Where shardVersions are stored in a router's cache
      • An example of how shardVersion is attached in an egress message
      • Where shardVersions are parsed in the ServiceEntryPoint and put on the OperationShardingState
      • Where shardVersions are stored in a shard's filtering cache
      • The checkShardVersion method on a shard

            Assignee:
            blake.oler@mongodb.com Blake Oler
            Reporter:
            esha.maharishi@mongodb.com Esha Maharishi (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: