Re: Data Block Cleanup??

From: J.Plewe <plewe_at_dl.mpi-dortmund.mpg.de>
Date: Thu, 7 Oct 1993 10:11:01 GMT
Message-ID: <10YHB6DW_at_gwdu03.gwdg.de>


Jonathan Edwards (edwards_at_world.std.com) wrote:
: In article <1OJHB6OU_at_gwdu03.gwdg.de> plewe_at_dl.mpi-dortmund.mpg.de (J.Plewe) writes:
: >: We experienced the same thing. An ORACLE field technician told us this
: >: is known as a lazy cleanup. The block header information is not "cleaned
: >: up" until the select after the insert or update that caused it to be
: >: updated. He did not say exactly what in the header was being cleaned
: >: up, but the old transaction entry would seem to be a reasonable guess.
: >
: >To my information, this is completely right.
: >
 

: Does this apply even to blocks that are memory-resident at transaction
: completion? Surely this cleanup could be done then, or at worst when the
: block gets purged. This extra step should only be necessary for blocks
: already purged at transaction completion.

There actually is no extra step. Resetting the transaction entry is ONE action, no matter when it is done.
The manner of cleaning transaction entries you mention would mean for Oracle to keep track of wether blocks are still in the SGA or already flushed to disk. THIS is an extra effort. Clearing the transaction entry with the next SELECT on a block implicitely makes sure that the block is in memory. Seen from this point, it is the
most simple way to do it.

  • Joerg Plewe
Received on Thu Oct 07 1993 - 11:11:01 CET

Original text of this message