Szerezz meg lockokat egy konzisztens globális sorrendben, tartsd rövidnek a tranzakciókat, csökkentsd az izolációt, ahol biztonságos, és próbáld újra a vesztest, amikor egy deadlock mégis megtörténik. Egy deadlock egy ciklus: az A tranzakció tartja az 1-es sort és a 2-esre vár, míg a B tartja a 2-es sort és az 1-esre vár — egyik sem tud haladni, ezért a DB megöli az egyiket.
A ciklus, amit meg kell törnöd
Tx A Tx B
holds row 1 ──── waits ────▶ row 2 (held by B)
▲ │
│ waits │ holds
└────────── row 1 ◀────────────┘
(cycle = deadlock; DB aborts one victim)
