intermediateLocking — Optimistic vs Pessimistic
How do deadlocks occur and how does PostgreSQL handle them?
Deadlock: Transaction A holds Lock 1 and waits for Lock 2. Transaction B holds Lock 2 and waits for Lock 1. Neither can proceed — circular dependency. PostgreSQL detection: periodically checks the wait graph for cycles (deadlock_timeout = 1s by default). When detected: PostgreSQL aborts one of the transactions (the one that's cheaper to restart) with ERROR: deadlock detected (code 40P01). Preventi
This is a Pro chapter
Sign in, then upgrade to Pro or Power to unlock this and the full Databases Mastery library.
How do deadlocks occur and how does PostgreSQL handle them?