Skip to content
About
Main content

What transaction mechanics forbid

What this article forbids

  • Simultaneity. You may designate one write to stand for many; you can never perform many at once.
  • Removing the in-doubt window. Between issuing a durable write and learning its fate, the issuer does not know the outcome. This is true on one node as much as across ten.
  • Cheap commit and cheap abort together. Data placement picks one.
  • A commit rate above 1 / (latency of your atomic primitive) per independent committer. Batching raises , but not the rate of individually ordered .
  • Conflict detection finer than your metadata's granularity. A file-level log cannot see a row-level conflict, whatever the isolation level is called.

Escapes and their prices

EscapePrice
for throughput (and it tunes itself)
A bounded, explicitly sized durability window
Out-of-place placementSpace and a garbage collector, in exchange for free
A single writerA throughput ceiling and , in exchange for zero conflict
Partition-disjoint writersA modelling constraint you must defend forever
Deduplication state with its own retention window