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 definition

Re: ROLLBACK_SEGMENTS definition

From: Howard J. Rogers <dba_at_hjrdba.com>
Date: Fri, 5 Jul 2002 07:52:14 +1000
Message-ID: <ag2g4q$tht$1@lust.ihug.co.nz>

"Hrishikesh Mehendale" <hrishikesh_mehendale_at_persistent.co.in> wrote in message news:ag1eaf$idt$1_at_news.vsnl.net.in...
> Hi,
>
> I'm having a weird (?) problem, as follows:
>
> In my init<sid>.ora file, I have specified the following lines:
>
> ROLLBACK_SEGMENTS = RBS1
> ROLLBACK_SEGMENTS = RBS2
>
> When I shutdown/startup the database, both (RBS1, RBS2) come online.
>
> However, if the lines are changed to either of
>
> rollback_segments = RBS1
> ROLLBACK_SEGMENTS = RBS2
>
> ------ or -------
>
> ROLLBACK_SEGMENTS = RBS1
> rollback_segments = RBS2
>
> only the second segment (RBS2) comes online (case sensitive ??)
>

Shouldn't be. Sure there isn't another line (even a blank one) between them?

If there isn't, then I suppose you ought to get the 'discoverer of the obscure bug of the month' award. But it's not really Oracle's fault... the standard advice is that if one parameter is repeated elsewhere in the init.ora, then the second version of it prevails. So in fact, what's wrong is your *first* example where you appear to have two versions of ROLLBACK_SEGEMENTS and they are *both* respected.

In other words, the standard way of referencing multiple rollback segments is "rollback_segments=(X,Y,Z)", on one line.

Frankly (and I don my flame-prrof suit here), I've given up worrying about all the rollback segment nonsense (and I'm not talking about 9i's automatic undo, either). I just stick the word 'public' into every 'create rollback segment' statement, and watch them bring themselves online at startup time, without referencing them in the init.ora at all:

create public rollback segment R01 tablespace RBS;

I've found no difference between a public and a private rollback segment in day-to-day usage, except the convenience of being brought online automatically. The only thing to watch is setting the TRANSACTIONS and TRANSACTIONS_PER_ROLLBACK_SEGMENT init.ora parameters, which affect how many of the blighters get brought online at startup. But they are single paramete rs, taking simple arguments each. So it shouldn't be too hard to script something to adjust them.

Regards
HJR
> However, doing this:
>
> rollback_segments = RBS1
> rollback_segments = RBS2
>
> brings both segments online.
>
>
> I'm facing this problem on Oracle 8.1.7 EE for Solaris (8.1.7.1.0) and for
> Linux (8.1.7.0.1).
>
> Any ideas on (a) what I'm doing wrong (b) how to solve this?
> My problem is I have to add extra rollback segment(s) to a possibly
> existing declaration in the init<sid>.ora file through a script.
>
>
> Thanks
> Hrishikesh
>
> --
> Hrishikesh Mehendale
> Member of Technical Staff
> Persistent Systems, Pune.
> http://www.persistent.co.in/
Received on Thu Jul 04 2002 - 16:52:14 CDT

Original text of this message

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