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: What's in a Rollback Segment?

Re: What's in a Rollback Segment?

From: Richard Foote <richard.foote_at_bigpond.com>
Date: Sat, 20 Jul 2002 23:14:08 +1000
Message-ID: <Afd_8.39445$Hj3.119132@newsfeeds.bigpond.com>


Hi Jeremy,

Read Howard's subsequent response.

Sometimes when answering a question, it's difficult to know what to say and what to leave out (I have that problem anyway). The problem with leaving something out is that an answer may be open to incorrect interpretation. The problem with answering a question fully is that it might take a month to write :)

Hope Howard has cleared up your question.

Regards

Richard
"Jeremy Russell" <jeremy.russell-NOTMYREALADDRESS_at_usa.net> wrote in message news:3d391ec3.58002022_at_usenet.plus.net...
> Richard, I thought that the block, once used, was dedicated to that
> transaction but that multiple transactions can share the same extent
> in the RBS. The extent remains active whilst *any* of the
> transactions that wrote to it are still alive - that's the purpose of
> the "interested transaction list" in the extent header.
>
> Only when all transactions are committed or rolled back can the extent
> be re-used - until that time, the RBS will extend for further
> transactions and not wrap around to reuse existing allocated extents.
>
> Am I even close in that understanding?
>
> Jeremy
>
> On Sat, 20 Jul 2002 17:52:41 +1000, "Richard Foote"
> <richard.foote_at_bigpond.com> wrote:
>
> >Hi Howard,
> >
> >Just the row being updated and "overhead" to identify the undo data.
> >
> >I read somewhere (although I've never bothered to check this) that a
> >rollback block *can* be shared by other transactions. They can't be
shared
> >concurrently but can be used after the first transaction has complete
(and I
> >don't mean clobbering the first transactions undo, I mean using the
unused
> >bit and having both transactions (or more) redo available).
> >
> >Myth or legend, I'm not sure.
> >
> >Regards
> >
> >Richard
> >"Howard J. Rogers" <howardjr2000_at_yahoo.com.au> wrote in message
> >news:ahb40d$e8f$1_at_lust.ihug.co.nz...
> >> It's just the column of the row being updated. Your few-byte
transaction
> >is
> >> thus going to occupy an entire 8192 bytes of a rollback segment (ie, a
> >> transaction always occupies an entire rollback block, however small it
is
> >in
> >> itself).
> >>
> >> Regards
> >> HJR
> >>
> >>
> >> "Jeremy Russell" <jeremy.russell-NOTMYREALADDRESS_at_usa.net> wrote in
> >message
> >> news:3d39010b.50393862_at_usenet.plus.net...
> >> > OK, maybe it's too early in the morning, and maybe I'm just dumb, but
> >> > what - in detail - is written to a rollback segment in Oracle 8i? I
> >> > understand that a rollback segment records undo info for a
transaction
> >> > (used Oracle long enough for that level of comprehension at least!),
> >> > but it was my understanding that the entire block would be written
out
> >> > for potential read consistency, recovery, rollback purposes.
> >> >
> >> > However, I have a feeling that may not be true.
> >> >
> >> > If I issue
> >> >
> >> > UPDATE emp SET ename='RUSSELL' where empno=7369;
> >> >
> >> > does the entire block where this employee resides get written, is it
> >> > the entire row or is it just the changed column?
> >> >
> >> > If there's a link somewhere (technet or otherwise) that explains
this,
> >> > please let me have that, rather than taking up newsgroup bandwidth.
> >> >
> >> > TIA
> >> >
> >> > Jeremy Russell
> >>
> >>
> >
> >
>
Received on Sat Jul 20 2002 - 08:14:08 CDT

Original text of this message

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