{
  "slug": "vista-recoverable-memory",
  "term": "Vista recoverable memory",
  "aliases": [
    "Rio Vista",
    "Vista transaction library"
  ],
  "definition": "Vista is a research recoverable-memory library that adds failure-atomic transactions to the persistent-memory abstraction provided by the Rio file cache.",
  "note": "Vista retains before-images of the transaction's tracked memory ranges in a Rio-backed undo log before mapped updates; commit discards them and recovery rolls back uncommitted transactions. Eliminating redo logging does not eliminate undo logging. [vista]\n\nConcurrency control belongs to the application. Larger-than-memory data remain supported, but thrashing can hurt performance; fitting in RAM is not a correctness requirement. [rio-faq]\n\nRio targets software-crash recovery; its 1996 experiments excluded power outages. Vista is not a guarantee that unprotected DRAM survives power loss. [rio]",
  "status": "research",
  "advantages": [],
  "limitations": [
    {
      "text": "Historical design, not a current deployment recommendation or a reproduced Hesela benchmark.",
      "citationIds": [
        "vista"
      ]
    }
  ],
  "related": [
    "rio-file-cache",
    "crash-consistency",
    "write-ahead-log"
  ],
  "supersedes": [],
  "supersededBy": [],
  "firstSeen": {
    "date": "1997",
    "citationIds": [
      "vista"
    ]
  },
  "lastSeen": null,
  "citations": [
    {
      "id": "vista",
      "title": "Lowell and Chen. Free Transactions with Rio Vista. SOSP 1997, section 4, PDF p. 4.",
      "url": "https://web.eecs.umich.edu/~pmchen/Rio/papers/lowell97.pdf",
      "accessed": "2026-11-09"
    },
    {
      "id": "rio-faq",
      "title": "Rio project authors: Questions about Vista, concurrency and working-set size.",
      "url": "https://web.eecs.umich.edu/~pmchen/Rio/faq.html",
      "accessed": "2026-11-09"
    },
    {
      "id": "rio",
      "title": "Chen et al. The Rio File Cache: Surviving Operating System Crashes. ASPLOS VII 1996, section 1.",
      "url": "https://web.eecs.umich.edu/~pmchen/papers/chen96.pdf",
      "accessed": "2026-11-09"
    },
    {
      "id": "hesela",
      "title": "Hesela: Surviving bytes are not an atomic transaction.",
      "url": "https://hesela.com/analyses/raid-write-hole-bitmap-ppl/#vista-transactions",
      "accessed": "2026-11-09"
    }
  ],
  "updated": "2026-11-09",
  "provenance": [
    "Primary-source synthesis; no native Vista execution or new reliability estimate."
  ]
}
