{
  "status": "shipping",
  "advantages": [],
  "limitations": [],
  "supersedes": [],
  "supersededBy": [],
  "firstSeen": null,
  "lastSeen": null,
  "updated": "2026-10-13",
  "slug": "writes-follow-reads",
  "term": "Writes-follow-reads",
  "aliases": [
    "Writes follow reads",
    "WFR session guarantee"
  ],
  "definition": "Writes-follow-reads requires every replica incorporating a session write to incorporate and order before it the updates relevant to that session's earlier reads.",
  "note": "The dependency may originate in another session. For MongoDB, cross-session causal transfer uses operation time and cluster time; simply starting another client session does not carry that context. A causally consistent session does not isolate its operations from concurrent clients. Terry et al. section 3.3 separates ordering-only and propagation-only variants; neither alone is the full guarantee. The companion article provides an executable two-write example, not an implementation conformance test.",
  "related": [
    "session-guarantees",
    "monotonic-writes"
  ],
  "citations": [
    {
      "id": "session-guarantees",
      "title": "Douglas B. Terry et al. Session Guarantees for Weakly Consistent Replicated Data. PDIS 1994, sections 3.1-3.4, pp. 142-144.",
      "url": "https://classes.cs.uchicago.edu/archive/2026/spring/23380-1/papers/terry_sessionguarantees.pdf",
      "accessed": "2026-10-13"
    },
    {
      "id": "mongodb-sessions",
      "title": "MongoDB Manual: Read Isolation, Consistency, and Recency; client sessions, causal guarantees and isolation.",
      "url": "https://www.mongodb.com/docs/manual/core/read-isolation-consistency-recency/",
      "accessed": "2026-10-13"
    },
    {
      "id": "hesela-consistency",
      "title": "Storage consistency: ordering is not a transaction or a durability promise",
      "url": "https://hesela.com/analyses/storage-consistency-ordering/",
      "accessed": "2026-10-13"
    }
  ]
}
