Re: Massive MERGE statement causing massive locks

From: Deas, Scott <Scott.Deas_at_lfg.com>
Date: Mon, 17 Oct 2016 22:09:47 +0000
Message-ID: <18896CD1-E0AB-4A28-A456-D80867834F21_at_lfg.com>


The original post was "why is my MERGE causing deadlocks?", which OP answered for himself, "indexes needed to be rebuilt". I know having unusable (or no) indexes on FK columns can cause deadlocks, so I assumed it was a similar scenario.

My assumption is that they're marking the indexes unusable as part of their maintenance job that deletes records. My recommendation back to OP was to look at truncating partitions or using partition exchange to take the place of the delete, since the objects in question are partitioned. This would eliminate any index maintenance if the indexes are all local.

Obviously, there's a fair amount of assuming going on here, so without more info from OP, we won't know the root cause of the issue.

Thanks,
Scott

> On Oct 17, 2016, at 17:04, Kellyn Pot'Vin-Gorman <dbakevlar_at_gmail.com> wrote:
> 
> Richard may be a bit slow in responding-  he’s enjoying a well-deserved European holiday with his family… :)
> 
> I think we need to look at the bigger picture here, which is what the poster had originally started to move towards, but had been deterred by the short term “solution".  The overall process is flawed in the way it’s handling the data purge.  Yes, merge is better than the current processing and the next step would be to look at the objects and see what other processing is going on that creates the deadlock situation.  I believe you’re going to find there is a lot processing to the objects at hand than just a massive delete to create a situation where an index rebuild is “correcting” the problem.
> 
> Anybody for a trace? :)
> 
> Kellyn
> 

>> On Oct 17, 2016, at 2:40 PM, Lothar Flatz <l.flatz_at_bluewin.ch> wrote:
>>
>> Last time I looked it was Richard Foote. And yes, rebuilding indexes is a myth .
>>
>> https://richardfoote.wordpress.com/2007/12/11/index-internals-rebuilding-the-truth/
>> https://richardfoote.wordpress.com/category/index-rebuild/
>>
>> In the case below we have no evidence. We don't know what was wrong before or might be better now. I prefer to work with facts rather than guess.
>>
>>
>> regards
>>
>> Lothar
>>
>>> On 17.10.2016 21:49, Mladen Gogala wrote:
>>>> On 10/13/2016 09:01 AM, David Ramírez Reyes wrote:
>>>> The problem was that the indexes were not rebuild after purging the records (every month there's a process that deletes any record older than 3 months); once rebuilded, all deadlocks disappeared.
>>>> 
>>>> About the use of MERGE, I google it and found that in general gives a better performance than just using INSERT/UPDATE instead so, I think I can let it working as it is (just need to be sure that indexes are rebuilded after the monthly purging).
>>>> 
>>>> I will try anyway the usage of parallel processing for it, that may help also,
>>>> 
>>>> Thanks everyone!
>>> 
>>> Hmmmm, that's very strange! Indexes usually don't need rebuilding. I would be interested in what Chris Foote has to say about this, if he still follows this list. What particular resource was getting locked?
>>> 

>>
>>
>> --
>>
>>
>>
>>
>> --
>> http://www.freelists.org/webpage/oracle-l
>>
>>
> 
> --
> http://www.freelists.org/webpage/oracle-l
> 
> 
> 

Notice of Confidentiality: **This E-mail and any of its attachments may contain Lincoln National Corporation proprietary information, which is privileged, confidential, or subject to copyright belonging to the Lincoln National Corporation family of companies. This E-mail is intended solely for the use of the individual or entity to which it is addressed. If you are not the intended recipient of this E-mail, you are hereby notified that any dissemination, distribution, copying, or action taken in relation to the contents of and attachments to this E-mail is strictly prohibited and may be unlawful. If you have received this E-mail in error, please notify the sender immediately and permanently delete the original and any copy of this E-mail and any printout. Thank You.**
--
http://www.freelists.org/webpage/oracle-l
Received on Tue Oct 18 2016 - 00:09:47 CEST

Original text of this message