[SERVER-48175] Update sharding architecture guide to include VectorClock details Created: 13/May/20  Updated: 29/Oct/23  Resolved: 04/Oct/20

Status: Closed
Project: Core Server
Component/s: Sharding
Affects Version/s: None
Fix Version/s: 4.9.0

Type: Improvement Priority: Major - P3
Reporter: Kevin Pulo Assignee: Kevin Pulo
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Backwards Compatibility: Fully Compatible
Sprint: Sharding 2020-09-21, Sharding 2020-10-05, Sharding 2020-10-19
Participants:

 Description   

Potential template:

The sharding vector clock (config OpTime, logical clock, databaseVersion, collectionVersion, shardVersion)

  • Should include
    • What is the type of each of these versions
    • How is each version derived (e.g., shardVersion is the max across all chunks owned by the shard, etc)
    • What are the processes, at a high level, which advance each version (e.g. writes to the config server advance the config OpTime)
    • At a conceptual level, how are config OpTime and logical time gossiped?
    • Why is there a config OpTime separate from clusterTime?
  • Code references
    • Where config OpTime is attached in requests and responses
    • Where config OpTime is stored in memory on each node
    • Where clusterTime is attached in requests and responses
    • Where clusterTime is stored in memory on each node
    • An example of where shardVersion and databaseVersion are attached in egress requests and parsed in ingress requests
    • Where collectionVersion is used to do an incremental refresh


 Comments   
Comment by Githook User [ 04/Oct/20 ]

Author:

{'name': 'Kevin Pulo', 'email': 'kevin.pulo@mongodb.com', 'username': 'devkev'}

Message: SERVER-48175 VectoClock architecture guide updates
Branch: master
https://github.com/mongodb/mongo/commit/800b1fdb10810290eba1f33b7455a1a3d782a6c9

Generated at Thu Feb 08 05:16:21 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.