Re: Partition Exchange Instantaneous?
- From: Adam Musch <ahmusch@xxxxxxxxx>
- To: japplewhite@xxxxxxxxxxxxx
- Date: Thu, 23 Jun 2011 10:05:09 -0500
You can't lose the rows being inserted. They'll be inserted into the
one and only one segment appropriate - or it'll throw an exception
that there's no partition for that row.
However, DML can block a partition exchange operation, so it's best to
wrap such changes in a loop akin to Jonathan Lewis' do_ddl function in
order to eat ORA-00054 errors caused by an inability to get an
exclusive lock on the partition being shuffled out.
On Wed, Jun 22, 2011 at 12:53 PM, <japplewhite@xxxxxxxxxxxxx> wrote:
>
> Since the Partition Exchange is a Data Dictionary process only, I'm assuming
> that, should there be a DML transaction on the main table during the
> Exchange, the Audit row(s) will either go into the old Audit table segment
> or be put into the new, empty exchanged-in segment. Have there been any
> reports or situations where a transaction's data got "lost" during a Segment
> Exchange? I can't find anywhere that Oracle guarantees it won't happen.
--
Adam Musch
ahmusch@xxxxxxxxx
--
http://www.freelists.org/webpage/oracle-l
Other related posts: