SaaS CMS has officially launched! Learn more now.

Deadlock between dbo.editSaveContentVersionData and dbo.editDeletePageCheckInternal



we have recently begun to almost daily see these transient error warnings resulting from simultaneous execution of SPs dbo.editSaveContentVersionData  and dbo.editDeletePageCheckInternal. The errors seems to correlate with new content being published:

WARN EPI: Transient error 'Transaction (Process ID 67) was deadlocked on lock resources with another process and has been chosen as the deadlock victim. Rerun the transaction.' detected, about to do retry 1 of 5.

The lock is on PK_tblContent in dbo.tblContent and it seems to always succeed on the first retry.

My question is if these deadlocks can be safely ignored or if they might be symptoms of bad practice or design. One specific concern is that we have a registered handler for IContentEvents.PublishingContent in which there is an asynchronous function call that uses the content loader in a lengthy way. I would also like to challenge the need for editDeletePageCheckInternal to take an exclusive lock. If it can be avoided there will be no collision. 

Hope that you can provide some insights =)

CMS 11.20.6

Kind regards // Fredrik Johansson

Sep 16, 2021 12:46
* You are NOT allowed to include any hyperlinks in the post because your account hasn't associated to your company. User profile should be updated.