PostgreSQL używa blokad do koordynacji równoczesnego dostępu i uniknięcia konfliktów. Dzięki MVCC, operacje odczytu na ogół nie wymagają blokad (czytelnicy nie blokują pisarzy), ale operacje zapisu uzyskują blokady na poziomie wierszy, a różne typy blokad koordynują operacje. Zrozumienie blokowania pomaga uniknąć rywalizacji i zakleszczeń.
MVCC oznacza, że odczyty zwykle nie blokują
Because of MVCC, plain SELECTs do NOT take row locks — they read a consistent snapshot.
→ Readers don't block writers, writers don't block readers (a key Postgres advantage).
Locking mainly comes into play for WRITES and explicit locking.
