Undo tablespace problem

Hello, I was processing a batch job that commits every 5,000 records. I have the UNDO_RETENTION set to 10,800. UNDO_MANAGEMENT is set to AUTO. at some point the database shut down
with the following errors in the alert log:
ORA-1654: unable to extend index CRM.XIF35CUSTOMER by 16 in tablespace      RCRMCUSTIX01
ORA-1654: unable to extend index CRM.XIF35CUSTOMER by 16 in tablespace      RCRMCUSTIX01
ORA-1654: unable to extend index CRM.XIF35CUSTOMER by 16 in tablespace      RCRMCUSTIX01
ORA-1654: unable to extend index CRM.XIF35CUSTOMER by 16 in tablespace      RCRMCUSTIX01
Fri Jun 09 02:19:48 2006
KCF: write/open error block=0x1faa4f online=1
file=2 C:\ORACLE\ORADATA\CRMMGG\UNDOTBS01.DBF
error=27069 txt: 'OSD-04026: Invalid parameter passed. (OS 2075215)'
Fri Jun 09 02:19:48 2006
Errors in file c:\oracle\admin\crmmgg\bdump\crmmgg_dbw0_20680.trc:
ORA-01242: data file suffered media failure: database in NOARCHIVELOG mode
ORA-01114: IO error writing block to file 2 (block # 2075215)
ORA-01110: data file 2: 'C:\ORACLE\ORADATA\CRMMGG\UNDOTBS01.DBF'
ORA-27069: skgfdisp: attempt to do I/O beyond the range of the file
OSD-04026: Invalid parameter passed. (OS 2075215)
I noticed the the undo datafile is over 16GB. I reset the UNDO_RETENTION to 5 seconds. The undo tablespace data file is staying at 16GB. Is there any way to shring this file. It is a test DB so I can rebuild if necessary. What is the best way to recover from this? Thak you,
David

You are facing a generic problem on Windows platforms, when datafiles configured as AUTOEXTEND ON reach a 4GB boundary (4GB,8GB,...). The best way to avoid the problem is switch AUTOEXTEND to OFF and define the appropriate number of single datafiles for the tablespace. From metalink:
ALERT: Problems with Datafile AUTOEXTEND/RESIZE on NT/2000 Platforms
Doc ID:148894.1
Werner

Similar Messages

  • Problem with UNDO tablespace

    Hi guys.
    Our database has 50GB of undo tablespace. I decided to create a second undo tablespace and switch to the new one. Since doing that yesterday, the size of the old undo is 49GB (was thinking that the values will drop to zero) and the new tablespace keeps increasing in size! Its size now is about 20GB. I do have the following question.
    a) If I restart the database, it the value of the old undo going to fall to zero?
    b) undo_retention=86400. Setting this value to a lesser value say 800seconds, it is going to act the performance of the database? Is it going to release the space on the old undo?
    Thanks and any help is appreciated.
    David

    The undo tablespace will not automatically shrink size, since you have a new undo tablespace in place. You can drop the old one if you don't plan to use it.
    Set lower undo_retention will certainly help to contain the undo space usage. However you should query v$undostat and v$rollstat to estimate the amount of undo space required for the current workload then size the undo tablespace accordingly. Turn off the auto extend on undo tablespace.

  • UNDO tablespace corrupted

    Hi!
    I have been having problems for the past couple days with restarting my database. For some reason when I shutdown, once I start it up again the undo tablespaces is offline and needs to be recovered. When the application tries to connect to the database it gives a "ora-01552 : cannot use system rollback segment for non-system tablespace." I do a recover on that tablespace and bring it back up, and it works fine... until the next restart.. Would anyone have an idea on what's the problem, and what I can do to fix it once and for all?
    Thanks
    Yazil Santoyo

    did you try metalink, there are lot of options / suggestions for your particular error.
    Is your database in Auto undo mode or manual undo?
    Thanks
    Gopal

  • Is there so call "dedicated" UNDO tablespace in Oracle 9i and higher?

    Since one of our applicaions needs to process large amounts of data, we have been using a dedicated rollback segment in order to avoid the "snapshot too old" problem.
    Recently our DB upgraded to Oracle 9i and DBA asked us to use "undo" tablespace.
    Based the Oracle 9i Doc., it only allows to select ONE undo tablespace at a time.
    If so, DBA has to make the only UNDO as large as our Cash large transactions
    need(adjust the UNDO_RENTION), which inevitably waste lots of space.
    Does Oracle 9i allow to have one dedicated UNDO tablespace for large transactions while another one for regular transactions just like we use the old rollback segments.
    Thanks in advance

    Why have multiple UNDO tablespaces? You can only use one at a time, and when the other one is not being used, it still consumes storage space.
    Spend a little time determining how much undo you need and size undo tablespace and undo retention around those values and you should be able to resolve the problems you are experiencing now.
    http://download-east.oracle.com/docs/cd/B10501_01/server.920/a96521/undo.htm#9505

  • Error Oracle Mobile ORA-30023 Duplicate undo tablespace specification

    Hi,
    I have the following mobile application (Oracle Mobile 10g R3):
    - Win32 (Forms 6i) App.
    - snapshots (12 updateable, 36 read-only)
    I have a successfully compilation of my form connected to the mobile database. However when I put a value over a textitem, my WHEN-VALIDATE-ITEM trigger send me an error:
    ORA-30023 Duplicate undo tablespace specification
    How can I solve this???, It seems like there is a parameter that I have to change.
    The WHEN-VALIDATE-ITEM trigger only has a basic select over a "readonly" table.
    Please help.
    Regards,
    Santiago

    I think the problem is the following,
    I need to convert a date to julian format, example:
    to_char(sysdate,'j')
    The problem is that it seems like Oracle Mobile connot support this kind format convertion.
    So, How can I get the number of days between 01-jan-4712 BC and other date????
    I found this function TO_DATE('-4712-01-01', 'SYYYY-MM-DD'), but it doesn´t works on Oracle Mobile.
    If someone have any idea about how can I get the number of days between 01-jan-4712 BC and other day without using the format 'SYYYY'......please help

  • Cannot drop old undo tablespace. Cause: active rollback segment

    dear all.
    db: oracle 10.2.0.1
    os: rhel as version 5 64 bits.
    This is a testing database. And my database is online and open. But i can free the external usb disk that contains my ols undotbs.
    I want to drop old undo tablespace but this is not possible.
    1.- In order to open my database i had my datafile( '/mnt/hdext/back_plelds/undotbs02.dbf') offline drop, and then i can to open my database.
    2.- When i try to delete my old undo tablespace im getting this error:
    SQL> drop tablespace undotbs1 including contents and datafiles;
    drop tablespace undotbs1 including contents and datafiles
    ERROR at line 1:
    ORA-01548: active rollback segment '_SYSSMU1$' found, terminate dropping
    tablespace
    3.- My default undo_tablespace is another that i was created before step 1.
    SQL> sho parameter undo_ta
    NAME TYPE VALUE
    undo_tablespace string UNDOTMP
    SQL>
    Well i search in metalink ORA-01548 code error and in 18947.1 doc whows me that the solution is:
    Action: Shut down instances that use the active rollback segments in the
    tablespace and then drop the tablespace.
    4.- I try to shutdown but im getting:
    SQL> shutdown immediate;
    ORA-00376: file 10 cannot be read at this time
    ORA-01110: data file 10: '/mnt/hdext/back_plelds/undotbs02.dbf'
    SQL>
    This /mnt/hdext is an external USB disk and i have all permissions. I exported tables without any problem and i can read all files.
    i search un metalink again ora codes (ORA-00376 ORA-01110) and the doc id: 427801.1 shows in the solution:
    Drop the old undo tablespace instead of making it offline.
    but when i try to drop the tablespace it shows the error describe in the step 2.
    Facts:
    - my tablespace UNDOTBS1 is ONLINE. I put in offline and this is not the solution.
    - This is the status of my rollback segments:
    SQL> select segment_name, status from dba_rollback_segs where
    2 tablespace_name='UNDOTBS1';
    SEGMENT_NAME STATUS
    _SYSSMU1$                      NEEDS RECOVERY
    _SYSSMU2$                      NEEDS RECOVERY
    _SYSSMU3$                      NEEDS RECOVERY
    _SYSSMU4$                      NEEDS RECOVERY
    _SYSSMU5$                      NEEDS RECOVERY
    _SYSSMU6$                      NEEDS RECOVERY
    _SYSSMU7$                      NEEDS RECOVERY
    _SYSSMU8$                      NEEDS RECOVERY
    _SYSSMU9$                      NEEDS RECOVERY
    _SYSSMU10$                     NEEDS RECOVERY
    _SYSSMU11$                     OFFLINE
    SEGMENT_NAME STATUS
    _SYSSMU12$                     OFFLINE
    12 rows selected.
    SQL>
    - I have the note (Unable to drop und tablespace In this article describe the problem but this is not the same. The difference is that i cannot drop the rollback segment that describe in step 2.
    SQL> drop rollback segment "_SYSSMU1$";
    drop rollback segment "_SYSSMU1$"
    ERROR at line 1:
    ORA-30025: DROP segment '_SYSSMU1$' (in undo tablespace) not allowed
    in metalink the doc id: 173696.1 shows the solution:
    Action:     Check the undo segment name and reissue statement if necessary.
    i cannot drop the rollback_segment
    What can i do ???
    thanks a lot.

    in step 4 did you try with shutdown abort?
    If its still does not work then create another new table space with new file and then swtich to that tablespace http://download.oracle.com/docs/cd/B19306_01/server.102/b14231/undo.htm#sthref1504Khurram

  • Cannot drop undo tablespace with Active extents but no active sessions

    Hi all,
    I am running on 10gr2 oracle database in a Linux 32 bit environment.
    I have a corrupted undo datafile. I've been able to recover the datafile but still the alert logs is still showing that it is corrupted.
    Now what I'm trying to do is to drop the old undo tablespace like the one discussed here Change undo tablespace in Oracle - Switch Oracle's Undo tablespace.
    My problem is I have an Active extent but no active session corresponding to it:
    SYS@ccasdb AS SYSDBA > SELECT a.name,b.status
    FROM   v$rollname a,v$rollstat b
    WHERE  a.usn = b.usn
    AND    a.name IN (
                      SELECT segment_name
                      FROM dba_segments
                      WHERE tablespace_name = 'UNDOTBS1'
                     );  2    3    4    5    6    7    8
    NAME                           STATUS
    _SYSSMU18$                     PENDING OFFLINE
    SYS@ccasdb AS SYSDBA > SELECT a.name,b.status , d.username , d.sid , d.serial#
      2  FROM   v$rollname a,v$rollstat b, v$transaction c , v$session d
      3  WHERE  a.usn = b.usn
      4  AND    a.usn = c.xidusn
      5  AND    c.ses_addr = d.saddr
      6  AND    a.name IN (
      7               SELECT segment_name
      8               FROM dba_segments
      9               WHERE tablespace_name = 'UNDOTBS1'
    10              );
    no rows selected
    but still cannot drop the undotablespace.
    SYS@ccasdb AS SYSDBA > drop tablespace UNDOTBS1 including contents and datafiles;
    drop tablespace UNDOTBS1 including contents and datafiles
    ERROR at line 1:
    ORA-30013: undo tablespace 'UNDOTBS1' is currently in use
    Regards,
    Tim

    Yes i was able to recover the datafile but the alert_log kept on prompting that it is still corrupted. The datafile's status is online.
    I want to kill the session/s contributing to the PENDING OFFLINE status of the rollback segment so I can already drop the undotablespace and so
    that the alert log will stop prompting for that corrupted datafile in that UNDOTABLESPACE.
    Can i Just alter the tablespace's datafiles to offline drop then just drop it. Then I drop the tablespace?

  • Cannot drop undo tablespace

    Hello:
    I've created a new undo tablespace undotbs2. I've set it to the default undo tablespace. When I've tried to drop the old one, I get the following error:
    SQL> conn / as sysdba
    Connected.
    SQL> DROP TABLESPACE undotbs1 INCLUDING CONTENTS AND DATAFILES;
    DROP TABLESPACE undotbs1 INCLUDING CONTENTS AND DATAFILES
    ERROR at line 1: ORA-01548: active rollback segment '_SYSSMU7$' found, terminate dropping tablespace
    This is a production database. The service is down because the partition with the Oracle tablespaces: system, undo, temp, etc is full.
    After shutting down the database the problem persist: I cannot drop the old undo tablespace because of the same error.
    I've followed the note 1321093.1. Here the query results:
    Select segment_name, status, tablespace_name, rs.segment_id
    from dba_rollback_segs rs
    where status not in ('ONLINE','OFFLINE');
    _SYSSMU7$ PARTLY AVAILABLE UNDOTBS1 7
    SELECT KTUXEUSN, KTUXESLT, KTUXESQN, /* Transaction ID */ KTUXESTA Status, KTUXECFL Flags
    FROM x$ktuxe
    WHERE ktuxesta !='INACTIVE' AND ktuxeusn =7;
    7 47 382687 ACTIVE DEAD
    SELECT LOCAL_TRAN_ID,GLOBAL_TRAN_ID,STATE,MIXED,COMMIT# FROM DBA_2PC_PENDING;
    No rows
    SELECT LOCAL_TRAN_ID,IN_OUT,DATABASE,INTERFACE FROM dba_2pc_neighbors;
    No rows
    As you can see, there is no pending transactions. No application is connected to the database (service is down), however the database is appling rollbacks since 2 days.
    A lot of archivelogs are being created at rolling back (30 GB archivelogs per hour). Here a tail of the alertlog file:
    Wed Apr 17 06:19:53 2013
    Thread 1 advanced to log sequence 7382
    Current log# 5 seq# 7382 mem# 0: /ora2/origlogs/webfrbr/redo05_m1.log
    Current log# 5 seq# 7382 mem# 1: /ora3/mirrorlogs/webfrbr/redo05_m2.log
    Wed Apr 17 06:21:16 2013
    Thread 1 advanced to log sequence 7383
    Current log# 6 seq# 7383 mem# 0: /ora2/origlogs/webfrbr/redo06_m1.log
    Current log# 6 seq# 7383 mem# 1: /ora3/mirrorlogs/webfrbr/redo06_m2.log
    Wed Apr 17 06:22:41 2013
    Thread 1 advanced to log sequence 7384
    Current log# 4 seq# 7384 mem# 0: /ora2/origlogs/webfrbr/redo04_m1.log
    Current log# 4 seq# 7384 mem# 1: /ora3/mirrorlogs/webfrbr/redo04_m2.log
    Wed Apr 17 06:24:02 2013
    Thread 1 advanced to log sequence 7385
    Current log# 5 seq# 7385 mem# 0: /ora2/origlogs/webfrbr/redo05_m1.log
    Current log# 5 seq# 7385 mem# 1: /ora3/mirrorlogs/webfrbr/redo05_m2.log
    Wed Apr 17 06:25:24 2013
    Thread 1 advanced to log sequence 7386
    Current log# 6 seq# 7386 mem# 0: /ora2/origlogs/webfrbr/redo06_m1.log
    Current log# 6 seq# 7386 mem# 1: /ora3/mirrorlogs/webfrbr/redo06_m2.log
    Wed Apr 17 06:26:46 2013
    Thread 1 advanced to log sequence 7387
    Current log# 4 seq# 7387 mem# 0: /ora2/origlogs/webfrbr/redo04_m1.log
    Current log# 4 seq# 7387 mem# 1: /ora3/mirrorlogs/webfrbr/redo04_m2.log
    Oracle Database - Enterprise Edition 10.2.0.3
    Linux x86-64 Oracle Linux 5
    Please, consider the output of the following queries too:
    select * from V$FAST_START_TRANSACTIONS
    USN 7 -- Undo segment number of the transaction
    SLT 47 -- Slot within the rollback segment
    SEQ 382687 -- Incarnation number of the slot
    STATE RECOVERING --
    UNDOBLOCKSDONE 0 -- Number of undo blocks completed on the transaction
    UNDOBLOCKSTOTAL 2079151 -- Total number of undo blocks that need recovery
    PID 15 -- ID of the current server it has been assigned to
    CPUTIME 1153 -- Time for which recovery has progressed (in seconds)
    PARENTUSN 0 -- Undo segment number of the parent transaction in PDML
    PARENTSLT 0 -- Slot of the parent transaction in PDML
    PARENTSEQ 0 -- Sequence number of the parent transaction in PDML
    XID 07002F00DFD60500 -- Transaction ID
    PXID 0000000000000000 -- Parent transaction ID
    RCVSERVERS 1 -- Number of servers used in the last recovery
    select * from x$ktuxe where ktuxecfl = 'DEAD';
    ADDR 00002B3E808B9BD8
    INDX 145
    INST_ID 1
    KTUXEUSN 7
    KTUXESLT 47
    KTUXESQN 382687
    KTUXERDBF 2
    KTUXERDBB 2080076
    KTUXESCNB 424110769
    KTUXESCNW 0
    KTUXESTA ACTIVE
    KTUXECFL DEAD
    KTUXEUEL 3739
    KTUXEDDBF 0
    KTUXEDDBB 0
    KTUXEPUSN 0
    KTUXEPSLT 0
    KTUXEPSQN 0
    KTUXESIZ 2079151
    select * from v$fast_start_servers;
    RECOVERING 0 15 07002F00DFD60500
    IDLE 0 16 0000000000000000
    IDLE 0 17 0000000000000000
    IDLE 0 18 0000000000000000
    IDLE 0 19 0000000000000000
    IDLE 0 20 0000000000000000
    IDLE 0 21 0000000000000000
    IDLE 0 22 0000000000000000
    IDLE 0 25 0000000000000000
    IDLE 0 26 0000000000000000
    IDLE 0 27 0000000000000000
    IDLE 0 28 0000000000000000
    IDLE 0 29 0000000000000000
    IDLE 0 30 0000000000000000
    IDLE 0 31 0000000000000000
    IDLE 0 32 0000000000000000
    Any ideas to solve this issue?
    Thank you in advance
    Edited by: albrotar on Apr 17, 2013 1:48 AM
    Edited by: albrotar on Apr 17, 2013 1:49 AM
    Edited by: albrotar on Apr 17, 2013 1:51 AM
    Edited by: albrotar on Apr 17, 2013 1:52 AM
    Edited by: albrotar on Apr 17, 2013 1:54 AM

    I've found some errors in alert log file occurred at shutting down the database:
    +...+
    Control autobackup written to DISK device
    handle '/orabck/rman/webfrbr/ora_cfc-3587726327-20130414-00'
    Completed: CREATE UNDO TABLESPACE undotbs2 DATAFILE '/orabck/undo/undotbs02.dbf'
    SIZE 500M reuse autoextend ON NEXT 5M maxsize 32767M
    Sun Apr 14 15:46:43 2013
    Successfully onlined Undo Tablespace 5.
    Undo Tablespace 1 moved to Pending Switch-Out state.
    *** active transactions found in undo tablespace 1 during switch-out.
    Sun Apr 14 15:46:44 2013
    ALTER SYSTEM SET undo_tablespace='UNDOTBS2' SCOPE=BOTH;
    Sun Apr 14 16:11:42 2013
    ALTER ROLLBACK SEGMENT "_SYSSMU7$" offLINE
    Sun Apr 14 16:11:42 2013
    Completed: ALTER ROLLBACK SEGMENT "_SYSSMU7$" offLINE
    Sun Apr 14 16:12:36 2013
    DROP TABLESPACE undotbs1 INCLUDING CONTENTS AND DATAFILES
    Sun Apr 14 16:12:36 2013
    +...+
    Thread 1 advanced to log sequence 5107
    Current log# 4 seq# 5107 mem# 0: /ora2/origlogs/webfrbr/redo04_m1.log
    Current log# 4 seq# 5107 mem# 1: /ora3/mirrorlogs/webfrbr/redo04_m2.log
    Sun Apr 14 19:00:28 2013
    Stopping background process CJQ0
    Sun Apr 14 19:00:29 2013
    Stopping background process QMNC
    Sun Apr 14 19:00:31 2013
    Stopping background process MMNL
    Sun Apr 14 19:00:32 2013
    Stopping background process MMON
    Sun Apr 14 19:00:34 2013
    Shutting down instance (immediate)
    License high water mark = 31
    Sun Apr 14 19:00:34 2013
    Stopping Job queue slave processes
    Sun Apr 14 19:00:34 2013
    Job queue slave processes stopped
    All dispatchers and shared servers shutdown
    Sun Apr 14 19:00:42 2013
    ALTER DATABASE CLOSE NORMAL
    Sun Apr 14 19:04:28 2013
    +...+
    Thread 1 advanced to log sequence 5118
    Current log# 6 seq# 5118 mem# 0: /ora2/origlogs/webfrbr/redo06_m1.log
    Current log# 6 seq# 5118 mem# 1: /ora3/mirrorlogs/webfrbr/redo06_m2.log
    Sun Apr 14 20:11:21 2013
    Errors in file /ora1/admin/webfrbr/bdump/webfrbr_smon_4629.trc:
    +ORA-07445: exception encountered: core dump [_intel_fast_memcpy.A()+10] [SIGSEGV] [Invalid permissions for mapped object] [0x2B6B66003000] [] []+*
    Sun Apr 14 20:11:21 2013
    Errors in file /ora1/admin/webfrbr/bdump/webfrbr_smon_4629.trc:
    ORA-00600: internal error code, arguments: [999], [0x107C14015], [], [], [], [], [], []*
    +ORA-07445: exception encountered: core dump [_intel_fast_memcpy.A()+10] [SIGSEGV] [Invalid permissions for mapped object] [0x2B6B66003000] [] []+*
    Sun Apr 14 20:11:22 2013
    +...+
    Sun Apr 14 20:11:48 2013
    Errors in file /ora1/admin/webfrbr/bdump/webfrbr_pmon_4617.trc:
    ORA-00474: SMON process terminated with error
    Sun Apr 14 20:11:48 2013
    +...+
    The instance could start up, but after this, it is recovering undo and generating redo since 2 days

  • Unable to shrink undo tablespace... Help!

    Hi,
    I have problems to shrink the system undo tablespace, which has grown up to 14 GB.
    I use 9.2. Table space owner is 'SYSTEM', undo_management = AUTO.
    I tried to shrink the greatest rollback segments by the commands
    ALTER SESSION SET UNDO_SUPPRESS_ERRORS = TRUE;
    ALTER ROLLBACK SEGMENT "_SYSSMU6$" SHRINK TO 20 M;
    Oracle confirmed these commands, but nothing happened.
    What am I doing wrong?
    Hermann Mueller

    You have seen the discussion about the undo segments, on the temporary tablespaces, you should be aware that the sort segment of a given temporary tablespace is created at the time the first sort operation takes place. The sort segment continues to grow by means of extent allocation until the segment size has reached the total storage demands of all of the active sorts running on the instance. Oracle will keep on allocating temporary space on demand unless the physical limit states otherwise.
    Temporary segments are produced each time a sort operation (explicit -order by- or implicit -aggregation, reindexing-) requires to sort a set that cannot fit into memory. So if you detect excesive sort usage you should aim your monitors towards the sort operations (reports, reindexing, max, min, aggregations, order by ...). If your system has a DDS behaviour, this kind of operations are frequent as a massive sorting has to be peformed against millions of rows.
    A Temporary tablespace will almost always appear to be near 100% full, that's because once oracle has allocated temporary space it doesn't release it back to the free space, it keeps it allocated even when the sort operation has finished. Criteria behind this fact is similar to the one oracle used to have when the rollback segments were in use, Oracle only allocated space and the dba should perform manual actions to release space, and the criteria is performance. Once it has allocated space this big, there are possibilities that the same circumstances that raised the temporary usage high water mark to this level are repeated, so if oracle keeps the mamimum allocated space, it won't have to allocate the same storage once more.
    Main concern with temporary tablespace growth is not free space itself, but the reasons why this amount of space was allocated, so I suggest you to track the sql statements with sort operations. If you are certain the circumstances that motivated this amount of temporary resources to be allocated won't be repeated again, then you could think of resizing down your temporary tablespace. I suggest you to create a new temporary tablespace with the desired size, and alter the default tempoary tablespace to point to this newly crated temporary tablespace, and finally get rid of the original temporary TS.
    ~ Madrid

  • Why do 2 diff. undo tablespace required in RAC

    Hi -
    1 - I can understand that we do require 2 diff. log files as 2 process can not write on the same redo log files.
    But I could not understand the logic of using 2 diff. undo tablespaces, when tablespaces can be in shared mode.
    They what is the reason of using 2, why can we not have only one undo tablespace in RAC.
    2 - Is there any way to check if one particular instance is running under RAC, Can this be confirmed if instance
    has got extra process like Lms Lmd ...
    your help would be appreciated and apologies for my poor english.
    Regards,
    Lyxx

    Each instance needs its own rollback segments to manage read consistency.
    When you set undo_tablespace=UNDOTBS, you tell the instance to self manage the tablespace UNDOTBS and do dynamic creation of rollback segments.
    This management of undo tablespaces is not "instance shareable". That's why you need 2 undo tablespace (for a 2 node RAC).
    If it's a problem for your environment (don't know why), you can create a single "rollback tablespace" and manage yourself the rollback segments.
    Christophe
    Edited by: willier on 11 sept. 2008 02:44

  • ORA-01111: for undo tablespace

    Hi,
    We have large archive gap in standby.
    When we try to apply archive log manually using recover standby database, it throws the below error
    SQL> recover standby database;
    ORA-00283: recovery session canceled due to errors
    ORA-01111: name for data file 35 is unknown - rename to correct file
    ORA-01110: data file 35: '/data/db/tech_st/11.1.0/dbs/UNNAMED00035'
    ORA-01157: cannot identify/lock data file 35 - see DBWR trace file
    ORA-01111: name for data file 35 is unknown - rename to correct file
    ORA-01110: data file 35: '/data/db/tech_st/11.1.0/dbs/UNNAMED00035'
    We have added File 35 in Primary in undo tablespace , hence it's throwing error.
    Please advice.
    Thanks

    Hi,
    If you have the same filesystem on both primary and standby database, then why dont you try backing up single file and restoring to standby database.
    Connect to your primary database:
    rman target /
    run
    allocate channels...;
    backup datafile 35;
    Copy the backup piece to standby database. On standby database:
    rman target /
    catalog start with 'backup location';
    restore datafile 35;
    then on your sqlplus:
    recover standby database;
    Hope this will resolve your problem.

  • Can't create new undo tablespace while undo tablespace is crushed

    We currently encounter an emergent error on our productive database. The undo tablespace on this database looks like crushed. And insert /update operations can't be executed because of the undo tablespace error.
    we tried to create a new undo tablespace to replace this broken tablespace, but the database reports ORA-00376 and ORA-00376 error.
    We have already deleted rollback segments which status is "NEED RECOVERY".
    Now we run our database in manual undo tablespace management mode. and add a new datafile into current broken undo tablespace. Then create a new rollback segment for public user. Now, user can insert /update data. But we are not sure if this method would occur any other problems.
    I really appreciate if you have any good suggestions.

    Hi,
    Actually ORA-00376 is the following cause and take action.
    cause: An attempt was made to read from a file that is not readable. Most likely the file is offline.
    Action: Check the state of the file. Bring it online.
    Again setup ur DB automatic UNDO MANAGEMENT and check status of the ur undo tablespace. and bring it online.
    and create another undo tablespac and switching the undo tablespace.
    Regards..

  • Segment shrinking and UNDO tablespace

    When i issued
    alter table <table_name> shrink space cascade;
    I got the error 'Unable to extend UNDO ...by 8' . Does Segment shrinking consume space from UNDO tablespace?
    Message was edited by:
    for_good_reason

    As Jonathan said, shrinking segment generates redo and undo data.
    But, this phoenomenon of undo shortage is not normal case.
    Shrinking segment might invole continous DML(deleting and re-inserting),
    but it's transaction seems to be committed internally at regular intervals.
    For this reason, shrinking operation should not hold undo area that long.
    But have no knowledge on exact behavior of shrink operation.
    Someone else will shed a light.
    How big your table and indexes?
    Some cases are reorted that shrinkage on big segment generates really large amount of undo data.
    This might be related with your problem. But not sure.
    Visit metalink note# 3888229.

  • TEST -- Active Undo Tablespace Drop

    TEST
    SUMMARY:-
    When no active transactions are in UNDO tablespace, I can offline the undo datafile and subsequently drop the tablespace. No problems there.
    Active Undo transactions combined with SHUTDOWN ABORT , I cannot open the database?
    *****************SCREEN OUTPUT ************************
    SQL>alter system set undo_tablespace='undotbs2' scope=spfile;
    SQL> update mytst set table_name='jj';
    1 row updated.
    From another x-session I issued shutdown abort.
    $mv undotbs02.dbf zz_undotbs02.dbf -- SImulate failure
    SQL>ALTER DATABASE DATAFILE '/u02/app/oracle/oradata/HLCL/undotbs02.dbf' OFFLINE DROP ;
    Database altered.
    When i try to open the DB it gives
    SQL> alter database open;
    alter database open
    ERROR at line 1:
    ORA-01092: ORACLE instance terminated. Disconnection forced
    I tried to trace the error:-
    alter system set "_smu_debug_mode"=1 scope=spfile;
    alter system set event = "10015 trace name context forever, level 10" scope=spfile;
    No pertinent information in trace file is generated either. Any pointers.

    ARC0: STARTING ARCH PROCESSES COMPLETE
    ARC0: Becoming the 'no FAL' ARCH
    ARC0: Becoming the 'no SRL' ARCH
    ARC0: Becoming the heartbeat ARCH
    ARC1 started with pid=17, OS id=4502
    Thu Jun 22 17:58:28 2006
    Errors in file /u02/app/oracle/admin/HLCL/udump/hlcl_ora_4498.trc:
    ORA-00704: bootstrap process failure
    ORA-00604: error occurred at recursive SQL level 2
    ORA-00376: file 6 cannot be read at this time
    ORA-01110: data file 6: '/u02/app/oracle/oradata/HLCL/undotbs02.dbf'
    Thu Jun 22 17:58:28 2006
    Error 704 happened during db open, shutting down database
    USER: terminating instance due to error 704
    Instance terminated by USER, pid = 4498
    ORA-1092 signalled during: ALTER DATABASE OPEN...
    /u02/app/oracle/admin/HLCL/udump/hlcl_ora_4498.trc:
    Hash table buckets = 32768
    Longest hash chain = 0
    Average hash chain = 0/0 = 0.0
    Max compares per lookup = 0
    Avg compares per lookup = 0/0 = 0.0
    tkcrrsarc: (WARN) Failed to find ARCH for message (message:0x1)
    tkcrrpa: (WARN) Failed initial attempt to send ARCH message (message:0x1)
    ORA-00704: bootstrap process failure
    ORA-00604: error occurred at recursive SQL level 2
    ORA-00376: file 6 cannot be read at this time
    ORA-01110: data file 6: '/u02/app/oracle/oradata/HLCL/undotbs02.dbf'
    Thanks for looking.

  • UNDO tablespace getting full

    My undo tablespace is getting full because of uncommited deletes performed by jdbc thin client sessions.
    How can I solve this problem permanently?
    Size of undo tablespace is 5.5GB
    I am facing an undo tablespace full issue
    Below are the sessions which maybe causing the problem.
    select s.sid,
    s.serial#,
    s.sql_id,
    s.prev_sql_id,
    s.SCHEMANAME ,
    s.OSUSER ,
    s.program,
    USED_UBLK,USED_UREC from v$session s, v$transaction t where s.taddr=t.addr order by USED_UREC;
    3909 30842 fgcp0qn1bqzx9 XLTDB5 xltwrk5 JDBC Thin Client 504 45257
    5133 53593 fgcp0qn1bqzx9 XLTDB5 xltwrk5 JDBC Thin Client 07 54482
    4525 35108 fgcp0qn1bqzx9 XLTDB10 xltwrk10 JDBC Thin Client 2381 192853
    4428 38484 fgcp0qn1bqzx9 XLTDB1 xltwrk1 JDBC Thin Client 8682 634540
    For this sql id :fgcp0qn1bqzx9 there are more than 14k executions per hour.
    Below is the query for this sql id:
    /* TJAPI_SubTrxTransient_deleteTrb1SubTrxTransient_0 */ DELETE FROM TRB1_SUB_TRX_TRANSIENT
    Some other details
    ++++++++++++
    Oravle version:11.1.0.7
    OS:SunOS
    ++++++++++++

    Perhaps an interesting link:
    http://oracledisect.blogspot.com/2008/05/who-is-using-your-undo-space.html
    Perhaps you can use Oracle Resource Manager, create a resource plan and switch sessions to a different consumer group once they reach a certain treshold.
    http://download.oracle.com/docs/cd/B28359_01/server.111/b28310/dbrm004.htm
    Btw are these distributed transactions?
    DBA commit other session's transaction?
    Edited by: Markus Waldorf on Sep 9, 2010 7:57 PM

Maybe you are looking for