{
  "status": "unknown",
  "advantages": [],
  "limitations": [],
  "supersedes": [],
  "supersededBy": [],
  "firstSeen": null,
  "lastSeen": null,
  "updated": "2026-11-11",
  "slug": "version-vector",
  "term": "Version vector",
  "aliases": [
    "VV"
  ],
  "definition": "A version vector maps actors to counters that summarize contiguous prefixes of update histories for a replicated object.",
  "note": "Componentwise comparison can identify equal, superseded or concurrent versions when the represented histories satisfy the protocol's assumptions. Missing components count as zero. [dvv2010]\n\nAn actor can denote a client or a replica; this choice affects correctness and metadata growth. A server counter must not silently imply that a client observed every earlier update registered by that server. [dvv2010]",
  "related": [
    "dotted-version-vector",
    "causal-consistency",
    "read-repair"
  ],
  "citations": [
    {
      "id": "dvv2010",
      "title": "Preguica et al. Dotted Version Vectors: Logical Clocks for Optimistic Replication (2010), sections 3-5.",
      "url": "https://arxiv.org/abs/1011.5808",
      "accessed": "2026-11-11"
    }
  ],
  "provenance": [
    "Source synthesis, not an executed replication protocol. No product lifecycle is implied by the unknown status."
  ]
}
