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: Rollback segments - Is it better to have 2 or 10 extents

Re: Rollback segments - Is it better to have 2 or 10 extents

From: Jonathan Lewis <jonathan_at_jlcomp.demon.co.uk>
Date: Thu, 21 Oct 1999 09:41:37 +0100
Message-ID: <940495384.680.0.nnrp-09.9e984b29@news.demon.co.uk>

Part 1 is an example of technology moving on, but the legends persisting, and I apologise for helping the legend to linger on.

(My initial statement ..._
>> The reason why 2 extents is bad is that a transaction
>> that starts in one extent and crosses into the second

In earlier versions of Oracle a transaction could not start in an extent if another transaction had started one extent and crossed the extent boundary into the second extent. Nor, at the time, was it possible for a process to add an extent if it did not already have space in the segment. This led to the 'definitive' Oracle whitepaper producing the guideline of '20 extents all the same size is good'.

At some stage the restriction about not starting in an extent that another transaction had crossed into was lifted - contrary to my claim, this was changed before 7.3 (or at least 7.3.3.5 which is the oldest Oracle I can get my hands on at present).

Part 2 about dynamic allocation unduly pessimistic (your comment)
>But dynamic expansion takes time and causes disk activities and
>consumes cpu. You do not want it to happen while a user is trying to
>do updates from performance perspective.

Allocating a new extent to a rollback in a dictionary managed tablespace is likely to take about 0.2 seconds (worst case). If this overhead really is a threat then there is much more wrong with the system than the problem of it running with 2 rather than 10 extents in a rollback segment.

Going back to the original post
>> >I read somewhere that it is better to have 10 extents for a rollback
>> segment than just 2 extents? Pl comnfirm or contrast this/ Thanks

I think everyone would agree that having a very large number of extents is a poor idea because of the potential for pressure on fet$, but for a given size of rollback segment is there still any argument for saying the 20 extents is better than 2, 5, 10 ?

--

Jonathan Lewis
Yet another Oracle-related web site: http://www.jlcomp.demon.co.uk

Dowson Tong wrote in message <380E7439.1CA99E86_at_yahoo.com>...
>> extent makes the entire rollback segment unavailable
>> for any other transaction to start. (True up to 7.3, but
>> I haven't checked it for 8.0, 8.1).
>
>That's not true. Oracle will create additional extents for the RBS
>until you reach the MAXEXTENTS parameter for the RBS.
>

>But dynamic expansion takes time and causes disk activities and
>consumes cpu. You do not want it to happen while a user is trying to
>do updates from performance perspective.
>
>>
>> 10 is better because this denial of access still leaves
>> 8 extents for other transactions to start in.
>> --
>
>Create only enough extents for all your concurrent activities. More RBS
>with less extents are usually better than less RBS with large number of
>extents.
>But different systems have different tuning requirements.
>
>Dowson
>
>>
>> Jonathan Lewis
>> Yet another Oracle-related web site: http://www.jlcomp.demon.co.uk
>>
>> ragu sekar wrote in message <380b465e_at_www2.iaol.com>...
>> >
>> >Hi
>> >
>> >
>> >ragu
>
Received on Thu Oct 21 1999 - 03:41:37 CDT

Original text of this message

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