PostgreSQL : transactions, verrous et interblocages
Aucun avis
Intermédiaire
2 h 15 min
1 000 crédits
1er atelier offert
Important
L'atelier se joue avec deux terminaux ouverts en même temps, un par caisse. Certains blocs ne rendent pas la main tout de suite : c'est voulu, un verrou fait attendre l'autre caisse, et le guide dit quand passer à l'autre terminal. La validation vérifie qu'aucun stock n'a été gonflé et que la règle stock_positif est toujours là. La sandbox vit trois heures.
Conseil
Ne calculez jamais un stock de votre côté pour l'écrire ensuite : demandez à la base de retirer une unité s'il en reste, avec stock = stock - 1 et AND stock > 0 dans le WHERE, puis lisez le compteur. UPDATE 0 veut dire rupture. Et pour éviter les interblocages, prenez toujours les lignes dans le même ordre.
sql
transactions
concurrence
verrous
isolation
deadlock
PostgreSQL : transactions, verrous et interblocages · MonPremierLab