In plain English
A lock is a reservation that stops two sessions from changing the same thing at once. PostgreSQL takes many locks automatically — light ones for normal reads/writes, heavy ones for DDL like ALTER TABLE.
Why it matters
Most “the database is stuck” incidents are really lock contention: one slow transaction holds a lock and a queue forms behind it. Setting lock_timeout and watching pg_locks are key skills.
En palabras simples
Un bloqueo es una reserva que impide que dos sesiones cambien lo mismo a la vez. PostgreSQL toma muchos bloqueos automaticamente: ligeros para lecturas/escrituras normales y pesados para DDL como ALTER TABLE.
Por que importa
La mayoria de los incidentes de “la base esta trabada” son en realidad contencion de bloqueos: una transaccion lenta retiene un bloqueo y se forma una fila detras. Configurar lock_timeout y vigilar pg_locks son habilidades clave.