Unsetting OPTIMAL in rollback segments

2002-05-15 Thread Cherie_Machler


We are getting the following error in our alert log for a database where we
are doing some unusually large transactions:

Wed May 15 03:26:22 2002
Failure to extend rollback segment 27 because of 1581 condition
FULL status of rollback segment 27 set.


On Metalink I've found a couple of references to bug 228441.   Following is
one such reference.   Sounds like one part of the work-around is to unset
OPTIMAL which we do currently have set.   I've looked through the docs and
Metalink.   I do see text for altering the OPTIMAL value but I don't see
any reference to unsetting OPTIMAL.   Is there a way to unset optimal in
rollback segments that are currently online?   Or do I have to create a
bunch of new rollback segments from scratch without OPTIMAL specified and
then roll them in and roll out the existing rollback segments.

Thanks,

Cherie Machler
Oracle DBA
Gelco Information Network



   
  
 From: Oracle, Tom 
Villane   
 21-Sep-01 21:20   
  
 Subject: Re : 
ORA-01581, but
 seem to have more 
than enough   
 space 
  
   
  
   
  
   
  
 Hi,   
  
   
  
 The ORA-01581 is not 
normally   
 seen in Oracle8. Bug 
228441 has 
 an explanation of why 
it can
 happen.   
  
 This can happen when 
we are
 trying to extend a 
rollback 
 segment. We try to 
extend the   
 rollback segment when 
we cannot 
 wrap into the next 
extent and   
 we are near the end 
of the  
 current extent. When 
we try to  
 allocate the new 
extent we  
 generate undo, in 
addition, 
 space management may 
generate   
 undo to do a 
coalesce. If the   
 amount of undo we 
generate  
 cannot fit in the 
current   
 extent we will get a 
1581 as we 
 are now trying to use 
the   
 extent that we are 
trying to
 add. 
  
   
  
 Suggestions for 
resolving the   
 problems are to make 
the
 INITIAL EXTENTS a 
large number  
 ( maybe even set 
minextents =   
 maxextents), and 
unset OPTIMAL  
   
  
   
  
 Regards   
  
  

Re: Unsetting OPTIMAL in rollback segments

2002-05-15 Thread Robert Pegram

Just tested this on 8.1.7.0.

alter rollback segment rbs0 storage(optimal null);


Rob Pegram
Oracle Certified DBA



SQL select segment_name, optsize
  2  from dba_rollback_segs, v$rollstat
  3  where usn=segment_id;

SEGMENT_NAME  OPTSIZE
-- --
SYSTEM
RBS0  4194304
RBS1  4194304
RBS2  4194304
RBS3  4194304
RBS4  4194304
RBS5  4194304
RBS6  4194304

8 rows selected.

SQL alter rollback segment rbs0 storage(optimal
null);

Rollback segment altered.

SQL  select segment_name, optsize
  2   from dba_rollback_segs, v$rollstat
  3  where usn=segment_id;

SEGMENT_NAME  OPTSIZE
-- --
SYSTEM
RBS0
RBS1  4194304
RBS2  4194304
RBS3  4194304
RBS4  4194304
RBS5  4194304
RBS6  4194304

8 rows selected.

--- [EMAIL PROTECTED] wrote:
 
 We are getting the following error in our alert log
 for a database where we
 are doing some unusually large transactions:
 
 Wed May 15 03:26:22 2002
 Failure to extend rollback segment 27 because of
 1581 condition
 FULL status of rollback segment 27 set.
 
 
 On Metalink I've found a couple of references to bug
 228441.   Following is
 one such reference.   Sounds like one part of the
 work-around is to unset
 OPTIMAL which we do currently have set.   I've
 looked through the docs and
 Metalink.   I do see text for altering the OPTIMAL
 value but I don't see
 any reference to unsetting OPTIMAL.   Is there a
 way to unset optimal in
 rollback segments that are currently online?   Or do
 I have to create a
 bunch of new rollback segments from scratch without
 OPTIMAL specified and
 then roll them in and roll out the existing rollback
 segments.
 
 Thanks,
 
 Cherie Machler
 Oracle DBA
 Gelco Information Network
 
 
 
 
 
 
 From: Oracle, Tom Villane   
 
 21-Sep-01 21:20 
 
 Subject: Re : ORA-01581, but
 
 seem to have more than enough   
 
 space   
 
 
 
 
 
 
 
 Hi, 
 
 
 
 The ORA-01581 is not normally   
 
 seen in Oracle8. Bug 228441 has 
 
 an explanation of why it can
 
 happen. 
 
 This can happen when we are
 
 trying to extend a rollback 
 
 segment. We try to extend the   
 
 rollback segment when we cannot 
 
 wrap into the next extent and   
 
 we are near the end of the  
 
 current extent. When we try to  
 
 allocate the new extent we  
 
 generate undo, in addition, 
 
 space management may generate   
 
 undo to do a coalesce. If the   
 
 amount of undo we generate  
 
 cannot fit in the current   
   

Re: Unsetting OPTIMAL in rollback segments

2002-05-15 Thread Cherie_Machler


Rob,

Just what the Dr.  ordered.

Many thanks,

Cherie


   
  
Robert Pegram  
  
pegramrg@yaho   To: Multiple recipients of list ORACLE-L 
[EMAIL PROTECTED] 
o.com   cc:   
  
Sent by: Subject: Re: Unsetting OPTIMAL in 
rollback segments 
[EMAIL PROTECTED] 
  
om 
  
   
  
   
  
05/15/02 12:38 
  
PM 
  
Please respond 
  
to ORACLE-L
  
   
  
   
  




Just tested this on 8.1.7.0.

alter rollback segment rbs0 storage(optimal null);


Rob Pegram
Oracle Certified DBA



SQL select segment_name, optsize
  2  from dba_rollback_segs, v$rollstat
  3  where usn=segment_id;

SEGMENT_NAME  OPTSIZE
-- --
SYSTEM
RBS0  4194304
RBS1  4194304
RBS2  4194304
RBS3  4194304
RBS4  4194304
RBS5  4194304
RBS6  4194304

8 rows selected.

SQL alter rollback segment rbs0 storage(optimal
null);

Rollback segment altered.

SQL  select segment_name, optsize
  2   from dba_rollback_segs, v$rollstat
  3  where usn=segment_id;

SEGMENT_NAME  OPTSIZE
-- --
SYSTEM
RBS0
RBS1  4194304
RBS2  4194304
RBS3  4194304
RBS4  4194304
RBS5  4194304
RBS6  4194304

8 rows selected.

--- [EMAIL PROTECTED] wrote:

 We are getting the following error in our alert log
 for a database where we
 are doing some unusually large transactions:

 Wed May 15 03:26:22 2002
 Failure to extend rollback segment 27 because of
 1581 condition
 FULL status of rollback segment 27 set.


 On Metalink I've found a couple of references to bug
 228441.   Following is
 one such reference.   Sounds like one part of the
 work-around is to unset
 OPTIMAL which we do currently have set.   I've
 looked through the docs and
 Metalink.   I do see text for altering the OPTIMAL
 value but I don't see
 any reference to unsetting OPTIMAL.   Is there a
 way to unset optimal in
 rollback segments that are currently online?   Or do
 I have to create a
 bunch of new rollback segments from scratch without
 OPTIMAL specified and
 then roll them in and roll out the existing rollback
 segments.

 Thanks,

 Cherie Machler
 Oracle DBA
 Gelco Information Network






 From: Oracle, Tom Villane

 21-Sep-01 21:20

 Subject: Re : ORA-01581, but

 seem to have more than enough

 space







 Hi,



 The ORA-01581 is not normally

 seen in Oracle8. Bug 228441 has

 an explanation of why it can

 happen.

 This can happen when we are

 trying to extend a rollback

 segment. We try to extend the

 rollback segment when we cannot

 wrap into the next extent and

 we are near the end of the

 current extent. When we try to

 allocate the new extent we

 generate undo, in addition,

 space management may generate

 undo to do a coalesce. If the

 amount of undo we generate

 cannot fit in the current

 extent we will get a 1581 as we

 are now trying to use the

 extent that we are trying