Merrni locks në një renditje globale konsistente, mbani transaksionet të shkurtra, ulni isolation ku është e sigurt, dhe riprovoni humbësin kur një deadlock ende ndodh. Një deadlock është një cikël: transaksioni A mban row 1 dhe pret për row 2, ndërsa B mban row 2 dhe pret për row 1 — asnjëri nuk mund të vazhdojë, kështu që DB vret njërin.
Cikli që duhet të thyeni
Tx A Tx B
holds row 1 ──── waits ────▶ row 2 (held by B)
▲ │
│ waits │ holds
└────────── row 1 ◀────────────┘
(cycle = deadlock; DB aborts one victim)
