Re: Terminate rollback?
Date: Thu, 2 Apr 2009 18:25:45 -0500
Message-ID: <203315c10904021625q2e6b495bm551ab90ddb55b704_at_mail.gmail.com>
Brian
You may be able to use this method:
- Kill the instance with shutdown abort.
- Set event 10513 to disable smon transaction rollback. Since the instance is dead, transaction must be rolled back by smon. 10513 disable smon rollback. startup nomount; alter system set events '10513 trace name context forever, level 2' scope=memory; alter database mount; alter database open;
- After opening database, drop the table.. drop table t1;
- Now, make sure event is off.. This is a very *critical* step. alter system set events '10513 trace name context off'; or just restart instance.. show parameter event
I just tested this in 11g and should work in 10g too..Search for smon 10513 in metalink and you can read more information about this event.
Good luck!
PS: I wouldn't try this method in production though..
Cheers
Riyaj Shamsudeen
Principal DBA,
Ora!nternals - http://www.orainternals.com
Specialists in Performance, Recovery and EBS11i
Blog: http://orainternals.wordpress.com
Original message:
On Thu, Apr 2, 2009 at 11:29 AM, Brian S Wisniewski < brian.s.wisniewski_at_jpmchase.com> wrote: 10.2.0.4 DEVELOPMENT database
Is there any way (oracle events) to stop a rollback that is in-flight? I want to drop the object that the rollback is occurring against and start over. The rollback that is in-flight is going to run for hours and I'd rather not wait, if possible. This is against a development database so I'm not concerned about using undocumented processes if anyone has one available. I looked through the oracle events but didn't find one that stood out.
> Thanks - Brian
>
> ------------------------------
>
-- http://www.freelists.org/webpage/oracle-lReceived on Thu Apr 02 2009 - 18:25:45 CDT