ડેડલૉક ત્યારે થાય છે જ્યારે બે (અથવા વધુ) ટ્રાન્જેક્શન્સ એક બીજાને જરૂરી લૉક ધરાવે છે, તેથી કોઈ પણ આગળ વધી શકતું નથી — તેઓ એક બીજાની સાથે હમેશા માટે રાહ જોવામાં અટવાયેલા છે. ડેટાબેસ ડેડલૉક્સ શોધે છે અને તેને એક ટ્રાન્જેક્શન ને બંધ કરીને ("પીડિત") હલ કરે છે, જે ફરીથી પ્રયાસ કરવું પડે છે. સમવર્તી એપ્લિકેશન્સ માટે કારણો અને રોકાણ સમજવું મહત્વપૂર્ણ છે.
ડેડલૉક કેવી રીતે થાય છે
Transaction A: locks row 1, then wants row 2
Transaction B: locks row 2, then wants row 1
→ A waits for B (to release row 2), B waits for A (to release row 1) → DEADLOCK
Neither can proceed; they're waiting on each other in a cycle.
; ;
accounts .. id; accounts .. id;
accounts .. id; accounts .. id;
