PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Mode de verrouillage PostgreSQL

Il est vrai que INSERT , UPDATE ou DELETE doit acquérir ROW EXCLUSIVE verrouiller la table à mettre à jour.

Cependant, ce verrou n'empêche pas SELECT de travailler normalement. SELECT ne nécessite que ACCESS SHARE bloquer. Cette serrure est compatible avec ROW EXCLUSIVE - en d'autres termes, vous pouvez parfaitement exécuter SELECT tandis que les autres données sont mises à jour par INSERT , UPDATE ou DELETE , tant que vous n'acquérez aucun verrou explicite.

En d'autres termes, vous ne devriez jamais voir de blocages en utilisant la deuxième approche (n'utilisez simplement pas SELECT FOR UPDATE et tout ira bien).

En savoir plus dans la documentation PostgreSQL .