Deadlock Avoidance by Xon

XF 1 Deadlock Avoidance by Xon MOVED

Deadlock Avoidance by Xon
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.

Latest updates

  1. MOVED

    MOVED

Similar resources

Deadlock Avoidance by Xon XF1 K
0.00 star(s) 0 ratings
Downloads
8
Updated
Attachment Improvements By Xon Dekomori
0.00 star(s) 0 ratings
Downloads
5
Updated
Conversation Improvements by Xon Anon695
0.00 star(s) 0 ratings
Downloads
10
Updated
BlackSpigot General Chat
Rules Help Users
    RealNotSound @ RealNotSound: Hi how is everyone???
    Top