You were brought to this page based on an internet search
and as a free service to Oracle DBAs.
The text below is an except from the book,
Oracle Performance Firefighting, written by
Craig Shallahamer of
OraPub, Inc.
Figures and tables are not included on this page, only their reference.
To order the book in either print or PDF form, click
here.
©2009, 2010 by Craig Shallahamer. This is copyrighted material.
PleaseOut of respect for those involved in the creation of the book and also for
their familes, we ask you to respect the copyright both in intent and deed. Thank you.
-------------------------------
The two flags ---- and --U- are needed because a row involved in an active transaction or even a past active transaction can have a valid ITL entry in its row data. So simply referencing the row data and seeing an ITL entry does not imply the row is currently involved in an active transaction and is therefore locked. To check if the row is locked, a server process must get the ITL reference from the row data and then check the flag in the block's variable ITL area. If the flag is ----, then a server process knows the row is indeed involved in an active transaction and is locked. However, if the flag is --U, a server process knows the row is not locked. Part of the block cleanout process is removing nonactive transaction row data ITL entries, changing their respective ITL entry's in the block's variable portion flag to a status of C---, and consolidating the row data.
This is a brilliant strategy, because Oracle can quickly make the minimal amount of changes necessary to record a change in a block, yet still maintain concurrency control at the row level. The final bock changes will eventually need to be made, but perhaps that will occur at less intense workload period, such as after a benchmark has completed.
To see a wonderful example of this, Figure 6-39 shows the inactive transactions flag change as a direct result of issuing a simple a select statement that touches block 1,78547.
©2009, 2010 by Craig Shallahamer. This is copyrighted material.
PleaseOut of respect for those involved in the creation of the book and also for
their familes, we ask you to respect the copyright both in intent and deed. Thank you.
|