 |
|
ORA-30036: unable to extend segment by string in undo
tablespace "string" tips
Oracle Error Tips by Burleson Consulting
|
Oracle docs note this about ORA-30036:
ORA-30036: unable to extend segment
by string in undo tablespace
"string"
Cause: the specified undo tablespace
has no more space available.
Action: Add more space to the undo
tablespace before retrying the
operation. An alternative is to wait
until active transactions to commit.
It is important to note that ORA-30036 is
associated with UNDO tablespsaces. If you use autoextend on an UNDO
tablespace because you can easily run out of UNDO and receive ORA-30036
along with an aborted update. For a full note on UNDO sizing, check
here.
Oracle MOSC
also has information regarding ORA-30036 and UNDO when it occurs after an abort
shutdown.
Question:
I received ORA-30036 after a shutdown. A
job was killed so that we could reboot after it had been runing for a while.
We issued the shutdown command but the database didn't stop and then had
shutdown abort. Now, trying to restart we get this:
Errors in file /u0704/oracle/proddb/9.2.0/admin/PROD/udump/prod_ora_16213.trc:
ORA-30036: unable to extend segment by 8 in undo tablespace 'APPS_UNDOTS1'
Error 30036 happened during db open, shutting down database
USER: terminating instance due to error 30036
Instance terminated by USER, pid = 16213
ORA-1092 signalled during: ALTER DATABASE OPEN...
Answer:
The workload had been running for 12 hours
and caused a workload spike. You received ORA-30036 as the transaction
attempted to recover in startup, which caused you to met the UNDO limit.
The ORA-30036 error is thrown as the database refuses to open.
You can resolve ORA-30036 by first mounting the database and disabling UNDO:
alter system set undo_management =
manual scope=spfile;
Next, you must shutdown to resolve ORA-30036
and then startup again using rollback mode and a system rollback segment.
Use UNDO tablespace to add files and then use alter system set
undo_management=auto scope=spfile; to activate the UNDO once again. To
fully resolve ORA-30036, shutdown and restart again.
|