{
  "status": "shipping",
  "advantages": [],
  "limitations": [],
  "supersedes": [],
  "supersededBy": [],
  "firstSeen": null,
  "lastSeen": null,
  "updated": "2026-10-12",
  "slug": "write-skew",
  "term": "Write skew",
  "aliases": [],
  "definition": "Write skew is a concurrency anomaly in which transactions read overlapping data and make disjoint writes whose combined outcome can violate an invariant that each transaction would preserve alone.",
  "note": "It is possible under snapshot isolation without a same-row write conflict. Checking only the versions of the rows being written does not validate every cross-row read dependency.",
  "related": [
    "snapshot-isolation",
    "serializability"
  ],
  "citations": [
    {
      "id": "berenson-isolation",
      "title": "Hal Berenson et al. A Critique of ANSI SQL Isolation Levels. ACM SIGMOD 1995; MSR-TR-95-51, section 4.2.",
      "url": "https://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/tr-95-51.pdf",
      "accessed": "2026-10-12"
    },
    {
      "id": "ports-ssi",
      "title": "Dan R. K. Ports and Kevin Grittner. Serializable Snapshot Isolation in PostgreSQL. PVLDB 5(12), 1850-1861, 2012, sections 2 and 4. arXiv:1208.4179v1.",
      "url": "https://arxiv.org/abs/1208.4179v1",
      "accessed": "2026-10-12"
    },
    {
      "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-12"
    }
  ]
}
