It’s because “flush” doesn’t mean what you probably think. During a delayed block cleanout, Oracle updates a block’s transaction table (ITL). Any time a block gets modified, there’s redo.

 

See Jonathan Lewis’s Practical Oracle8i (pp43–44) for a description.

 

Cary Millsap
Hotsos Enterprises, Ltd.
http://www.hotsos.com

Upcoming events:
- Hotsos Clinic 101 in Denver, Sydney
- Hotsos Symposium 2004 March 7–10 Dallas
- Visit www.hotsos.com for schedule details...

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Ryan
Sent: Wednesday, August 06, 2003 9:34 PM
To: Multiple recipients of list ORACLE-L
Subject: why does block cleanout incur redo?

 

My understanding of block cleanout is that oracle is flushing transaction information of already committed transactions from the buffer cache. This can happen in selects, when 10% of the buffer cache is filled with 'lists' if blocks involved in transactions, or with dml.

 

i dont understand why this incurs redo? your just flushing blocks that are no longer needed?

Reply via email to