Monday 17 October 2011

Rollback Segments

A database read, modify and write life cycle is called a transaction. A Rollback entry is made for all transactions unless specific clauses are specified. A rollback entry consists of pre-update image value, block address, and data file number, transaction ID and status of the transaction (Active or Committed), this is a single rollback entry. If the transaction fails for any reason, the old image is taken from the rollback segment and this is called transaction rollback. Rollback segments are owned by SYS irrespective of who creates them and are accessible only to Oracle, never to a user.
A transaction can only use one rollback segment to store its rollback record.
The same rollback segment can be used by multiple transactions.
No extent of a rollback segment is overwritten while a transaction that is not commited has written to that rollback segment.
The difference between private and public rollback segments is important only for the parallel server option: a public rbs can be brought online by any instance in a parallel server environment while a private one can only be aquired by the instance specifying the rbs in its init file through the rollback_segments.

No comments:

Post a Comment