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: Howard J. Rogers <howardjr2000_at_yahoo.com.au>
Date: Sat, 20 Jul 2002 19:00:37 +1000
Message-ID: <ahb8qu$qhq$1@lust.ihug.co.nz>

"Richard Foote" <richard.foote_at_bigpond.com> wrote in message news:fy8_8.39133$Hj3.118612_at_newsfeeds.bigpond.com...
> 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.

That's true from 8.1.6 onwards, I think. Jonathan put me onto that about 12 months ago (the posts will be on Google somewhere).

Didn't want to get complicated at this stage, but just answer the question as posed about 'whole block-whole row or just-column'.

Regards
HJR
>
> 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 - 04:00:37 CDT

Original text of this message

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