Transactions - Rollback Journal (Undo journal)

Data System Architecture


A rollback journal consists of records of the actions of transactions, primarily before they are committed.

Its name comes from the fact that its primary function is to roll back (undo) changes from a transaction but it's the central point of all other important data functionalities such as commit atomicity, (See features for a full list)


A Rollback journal of records is used to:

  • Roll back transactions when a ROLLBACK statement is issued. When a ROLLBACK statement is issued, rollback records are used to undo changes that were made to the database by the uncommitted transaction.
  • Implement atomic commit to provide transaction atomicity
  • fault tolerance If a failure prevents modified data from being permanently written to the original data files, then the changes can be obtained from the rollback journal (not from the transaction log ?), so work is never lost.
  • recover the database. During database recovery, rollback records are used to undo any uncommitted changes applied from the transactions log to the original data files.
  • Provide read consistency through multiple sessions. To manage the multiversion read consistency, the database must create a read-consistent set of data when a table is simultaneously queried and updated.
  • Analyze data as of an earlier point in time. See Oracle Flashback Query
  • Recover from logical corruptions


There is two well known implementations:



You can reduce the rollback data generation by introducing multiple commits in a loop while loading data, but the overall elapsed time will increase.

Discover More
Card Puncher Data Processing
Application - Fault (Crash)

Things that can go wrong in a system are called faults. A fault is usually defined as one component of the system deviating from its specification. It is impossible to reduce the probability of a fault...
Data System Architecture
Atomic Commit

An Atomic commit is a commit that implements atomicity for a transaction. Either all the tasks in a transaction must happen, or none of them. The transaction must be completed, or else it must be undone...
Card Puncher Data Processing
Oracle Database - UNDO (Rollback Segment)

rollback journal in Oracle. The UNDO space was too small. The SELECT statement was killed letting the DML operations continue. Of the Minimum Undo Retention Period was achieved Minimum...
Data System Architecture
Transaction - Rollback (Crash)

A rollback ends a transaction and undo the changes. When a rollback statement is issued, rollback records of the rollback journal are used to undo changes that were made to the database by the transaction....
Data System Architecture
Transaction - Traditional rollback journal

This page is the traditional implementation of the rollback journal (as opposed to a write-ahead log rollback journal) write-ahead log When a change occurs, the traditional rollback journal implements...
Data System Architecture
Transactions - Concurrent Read Consistency (multiversion read)

concurrent read data consistency (also known as multi version consistency) means that the database can present a view of data to multiple concurrent users, with each view consistent at a point in time....
Data System Architecture
Transactions - Write-Ahead Logging (Rollback journal) - WAL

Write-Ahead Logging (WAL) is a rollback journal implementation. This implementation writes change directly to the rollback journal whereas the traditional rollback journal writes changes to the original...

Share this page:
Follow us:
Task Runner