In computing, a rollback is the process of returning a database to its previous state. Rollbacks are used by database management systems (DMS) to ensure consistency and integrity of the data if an error occurs during some transaction.
Rollbacks should not be confused with backups. Rollbacks do not need users to store a separate copy of the whole database to undo one transaction — the transaction’s changes are tracked and fixed automatically. A backup, meanwhile, requires users to save a snapshot of the system, which will undo all transactions that occurred after that point if restored.
When a transaction is initiated, the DMS makes a record of all the changes that will be made. If the transaction is completed successfully, these changes are saved permanently in the database. If the transaction fails, the DMS uses the record it made prior to the transaction to track down the changes and undo them, deleting, modifying, and restoring data where necessary.
A cascading rollback is a chain of rollbacks caused by an error in one of interdependent transactions. When one transaction is rolled back due to an error, it may produce incorrect data in related transactions, forcing the DMS to roll them back as well.
Despite the fact that cascading rollbacks ensure the integrity of all affected databases, good database recovery techniques aim to prevent them to avoid wasting time and losing untainted data.
We value your privacy