Database Architecture   «Prev 

redo log file process in Oracle

Here is the initial state. You can see that Jenny Gennick holds the title of Manager.

Someone issues the UPDATE statement shown above promoting Jenny to the partnership.

The first thing that happens is that Oracle reads the data block containing Jenny's record into memory

Oracle updates the block of memory

Oracle places information about the change made into the redo log buffer. From here it will be written to disk.

If the server crashes now, this change will be lost. That is OK, because the transaction has not been committed yet.

The application that issued the UPDATE now issues a COMMIT

Oracle ensures that the associated redo information is physically written to the redo log file.

Oracle also writes a commit record to the redo log file for this transaction

Only now does Oracle return control back to the application, and indicate that the commit was successful.

At this point, if the server crashes, Oracle can redo the change based on the information contained in the redo log file.

Later and this could be much later, the updated data block will be written back to the datafile.