lundi 2 avril 2012

PostgreSql - Transation Serializable & SELECT FOR UPDATE

Il semblerait que l'isolation des transactions de type "Serialized" ne soit pas totalement fiable en PostgreSql (je ne remets malheureusement pas la main sur le PDF expliquant ce problème... vive Internet).
C'est fort gênant si l'on veut créer un compteur sécurisé partagé entre plusieurs processus (comme en Sql Serveur).

Le cas échéant, il est possible de se rabattre sur les SELECT FOR UPDATE.
Je vous propose la lecture de l'article "Postgresql - SELECT FOR UPDATE example" de Walter.

Grâce à  SELECT FOR UPDATE il est possible d'obtenir un résultat similaire au mode "Serialize" et de créer un compteur InterProcessus sécurisé :-)

Aucun commentaire: