Undo Log
Le journal d'annulation enregistre les images avant modification ; il sert au rollback des transactions et aux lectures MVCC des anciennes versions, garantissant atomicité et isolation.
Objectif
Comprendre l'implémentation du rollback transactionnel et des lectures multiversions, et analyser la performance du rollback.
Mécanisme
Avant de modifier une ligne, on écrit le journal d'annulation (ancienne valeur). Le rollback restaure les anciennes valeurs en suivant le journal. En MVCC, la chaîne d'annulation fournit les versions historiques aux lectures par snapshot. PostgreSQL utilise des segments de rollback (ancien) ou des journaux d'annulation (nouveau).
Cas d’usage
- Conception du rollback transactionnel
- Chaînes de versions MVCC
- Implémentation de l'atomicité