Resource icon

Deadlock Avoidance by Xon 1.0.6a

No permission to download
XenForo's Datawriters have a _postSaveAfterTransaction() method. This method is intended to run after a database transaction is finished, but if a DataWriter is called from with-in another DataWriter, this does not happen.

This incurs the risk that various notification actions will pull in large queries into the transaction, which increasing the risk of deadlocks on a busy forum.

This is a formally private add-on which has been in use for about a month before being released.

This add-on is only for busy forums which sometimes experience deadlocks on the listed conditions. Please test carefully as this add-on may break other add-ons.

This add-on requires php +5.5, and will not work with earlier versions.

  • Race condition for watch thread toggle
  • Deadlock on conversations
  • Deadlock on posts
  • Deadlock on resolving/rejecting Reports

Race condition for watch thread toggle

Fixes a race condition when creating/removing a watch thread state

Deadlock on conversations

Provides a workaround for a XenForo design issue where updating conversation counters can cause deadlocks.
  • rebuilding user conversation counters occurs inside a large transaction, and is deadlock prone.

Deadlock on posts

Provides a workaround for a XenForo design issue where adding/removing posts can cause deadlocks.
  • updating user alert counters occurs inside a large transaction, and is deadlock prone.

Deadlock on resolving/rejecting Reports
Provides a workaround for a XenForo design issue where adding/removing posts can cause deadlocks.
  • Sends report resolve/reject alerts inside the transaction.


Installation

I recommend using Add-on install & upgrade or [TH] Install and Upgrade to install this addon.

Contributing features or bug fixes
Please create a Github Pull request via the "Find more info at github.com..." link.

Contributions

If you appreciate this addon, please consider a contribution via PayPal. Details will be provide via private conversation.

Please contact me if you wish for different licencing arrangements.
Author
Admin
Downloads
0
Views
212
First release
Last update
Rating
0.00 star(s) 0 ratings

More resources from Admin

Top Bottom