PostgreSQL používá zámky pro koordinaci souběžného přístupu a prevenci konfliktů. Díky MVCC obvykle nepotřebují zámky čtení (čtenáři neblokují zapisovatele), ale zápisy získávají zámky na úrovni řádků a různé typy zámků koordinují operace. Pochopení zamykání pomáhá vyhnout se soutěži a deadlocků.
MVCC znamená, že čtení obvykle neuzamyká
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.
