{
  "slug": "close-to-open-consistency",
  "term": "Close-to-open consistency",
  "aliases": [
    "CTO consistency",
    "close-to-open cache consistency"
  ],
  "definition": "Close-to-open consistency is a file-sharing cache policy that combines writeback at close with validation at a later open to support visibility of updates between sequential users.",
  "note": "An already-open reader is a different case from a new opener. Concurrent access needs application coordination; CTO alone does not serialize simultaneous writers. Linux documents NFSv3 open-time checks and close-time writeback, while NFSv4 delegations can avoid repeated validation and defer writeback. Persistence still depends on the applicable protocol and error handling.",
  "related": [
    "nfs-storage",
    "nfs-attribute-cache",
    "nfs-delegation",
    "nfs-commit"
  ],
  "limitations": [
    {
      "text": "Linux cto/nocto options differ by version: the NFSv4 setting concerns directories, not file-data caching.",
      "citationIds": [
        "nfs-client"
      ]
    }
  ],
  "citations": [
    {
      "id": "nfs-client",
      "title": "nfs-utils nfs(5), Debian trixie: data and metadata coherence and version-specific cto/nocto options.",
      "url": "https://manpages.debian.org/trixie/nfs-common/nfs.5.en.html",
      "accessed": "2026-10-14"
    },
    {
      "id": "rfc7530",
      "title": "Haynes and Noveck (editors). NFS Version 4 Protocol. RFC 7530, sections 10.3, 10.4 and 10.6 (NFSv4.0).",
      "url": "https://datatracker.ietf.org/doc/html/rfc7530#section-10",
      "accessed": "2026-10-14"
    },
    {
      "id": "rfc8881",
      "title": "Noveck and Lever (editors). NFS Version 4 Minor Version 1 Protocol. RFC 8881, sections 10.3-10.6 (NFSv4.1).",
      "url": "https://www.rfc-editor.org/rfc/rfc8881.html#section-10",
      "accessed": "2026-10-14"
    },
    {
      "id": "hesela-stability",
      "title": "NFS stable writes: what COMMIT, flush and FUA actually promise",
      "url": "https://hesela.com/analyses/nfs-stable-writes-flush-fua/",
      "accessed": "2026-10-14"
    }
  ],
  "status": "shipping",
  "advantages": [],
  "supersedes": [],
  "supersededBy": [],
  "firstSeen": null,
  "lastSeen": null,
  "updated": "2026-10-14"
}
