Two-Phase Locking
Le verrouillage en deux phases (2PL) divise une transaction en une phase de verrouillage et une de déverrouillage, garantissant la sérialisabilité mais avec risque d'interblocage.
Objectif
Comprendre le protocole classique de contrôle de concurrence sérialisable, son risque d'interblocage et ses variantes.
Mécanisme
La phase un (croissante) n'acquiert que des verrous ; la phase deux (décroissante) ne fait que libérer. Le 2PL strict (S2PL) ne libère les verrous qu'à la fin de la transaction, évitant les annulations en cascade. Le 2PL fortement strict (SS2PL) garde aussi les verrous de lecture jusqu'à la fin, garantissant une sérialisabilité stricte.
Cas d’usage
- Conception du contrôle de concurrence
- Implémentation de la sérialisabilité
- Analyse des interblocages