{
  "slug": "powersafe-overwrite",
  "term": "Powersafe overwrite",
  "aliases": [
    "PSOW"
  ],
  "definition": "Powersafe overwrite is the storage property that an interrupted file write leaves bytes outside its requested range unchanged.",
  "note": "This property does not constrain the target bytes to an entirely old or new value and does not establish durable completion. [sqlite-psow] SQLite reports PSOW separately from atomic-write size, safe-append and sequential-write capabilities. [sqlite-characteristics] A psow URI parameter changes an assumption in supported VFS implementations; it is not a hardware test and may be ignored by a custom VFS. [sqlite-uri]",
  "status": "shipping",
  "advantages": [],
  "limitations": [
    {
      "text": "An unchanged surrounding range can coexist with a torn write inside the target.",
      "citationIds": [
        "sqlite-psow"
      ]
    }
  ],
  "related": [
    "torn-write",
    "rwf-atomic",
    "physical-sector",
    "power-loss-protection",
    "crash-consistency"
  ],
  "supersedes": [],
  "supersededBy": [],
  "firstSeen": null,
  "lastSeen": null,
  "updated": "2026-10-14",
  "citations": [
    {
      "id": "sqlite-psow",
      "title": "SQLite: Powersafe Overwrite, scope, assumptions and torn pages.",
      "url": "https://www.sqlite.org/psow.html",
      "accessed": "2026-10-14"
    },
    {
      "id": "sqlite-characteristics",
      "title": "SQLite C interface: Device Characteristics.",
      "url": "https://sqlite.org/c3ref/c_iocap_atomic.html",
      "accessed": "2026-10-14"
    },
    {
      "id": "sqlite-uri",
      "title": "SQLite: URI filenames, enabling URI handling and psow overrides.",
      "url": "https://sqlite.org/uri.html",
      "accessed": "2026-10-14"
    },
    {
      "id": "hesela-psow",
      "title": "Hesela: atomic writes and powersafe overwrite, synthetic byte-state examples.",
      "url": "https://hesela.com/analyses/linux-atomic-writes-durability/#powersafe-overwrite",
      "accessed": "2026-10-14"
    },
    {
      "id": "hesela-examples",
      "title": "Hesela: synthetic recovery-state examples, code hash and executable tests.",
      "url": "https://hesela.dev/data/powersafe-overwrite-examples.json",
      "accessed": "2026-10-14"
    }
  ]
}
