Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: frequent commits

Re: frequent commits

From: Pradeep <agarwalp_at_eeism.com>
Date: 16 Jan 2006 20:13:12 -0800
Message-ID: <1137471192.041576.125320@g14g2000cwa.googlegroups.com>


Thanks Daniel,Chuck for your responses. Daniel few questions inline Daniel Fink wrote:
> First, let's make a basic definition of transaction information (TX
> INFO). For the purposes of this response, I am talking about undo
> (actual undo entries as well as the transaction table information in
> the undo segment header) and block (interested transaction entries that
> provide a path to undo) entries.
>
> Second, a commit does not wipe out TX INFO. When a transaction commits,
> the TX INFO is updated to indicate the committed state and the commit
> scn. That information is retained until the structures are needed by
> another transaction, and even then, the other transaction keeps some
> pointers to the previous TX INFO.
>
> Here is a simple description of the read consistent process. QueryA
> (Qa) starts at Time100 (t100) and starts to read data. It comes across
> TX INFO from Transaction D (Td) that was committed at Time1000 (t1000).
> Qa reconstructs the data block by undoing the effects of Td.

Why does it have to undo, if it was committed ???

> When this
> process is completed, it finds TX INFO from Transaction C (Tc) that was
> committed at Time 500 (t500). As t500 > t100, Qa must continue the
> process of undoing changes.

Tc was committed after QueryA, Is it?

> It must have an image of the block that
> does not contain changes committed by another transaction after t100.
I am not able to understand this, what is the "it" here. And are you trying to say that there might be two transaction associated with the same block ???

> The TX INFO of Transaction B (Tb) is present and indicates that it was
> committed at Time 101 (t101).
> At this point, 1 of 2 things happens
>
> 1) Qa is able to follow the TX INFO of Tb and undo it's changes. This
> leaves the block in a consistent (no uncommitted changes) state before
> Qa began; or
>
> 2) Qa follows the TX INFO of Tb and finds that some of the info is
> missing (let's say an undo entry has been overwritten). At this point,
> an ORA-01555 is returned to the query.
>
> It is important to note that there is not a time limit on either 1 or
> 2. On a system where there is a high amount of data modification, TX
> INFO from a committed transaction can be overwritten within a very
> short amount of time. On a system where there is little data
> modification, TX INFO might still exist a year after the transaction.
>
> This is the basic process regardless if you are using automatic or
> manual undo.
>
> Regards,
> Daniel Fink

Daniel thanks for your efforts, but i not quite clear. I really want to get this thing right.

Pradeep Received on Mon Jan 16 2006 - 22:13:12 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US