Welcome to Our Community

Registration on our forums are now open for some days! Feel free to sign up today.

[Free Add-on ] Deadlock Avoidance by Xon 1.0.14

Workarounds for sporadic deadlocks on busy forums

  1. XenForo Rocks
    Compatible XF Versions:
    • 1.4
    • 1.5
    Additional Requirements:
    php +5.4
    License:
    MIT Licence
    Visible Branding:
    No
    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

    • 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.
    longhorn, shabbir12, xpmode and 6 others like this.
  • About Us

    Our community has been around for many years and pride ourselves on offering unbiased, critical discussion among people of all different backgrounds. We are working every day to make sure our community is one of the best.
  • Like us on Facebook

  • Buy us a beer!

    The management works very hard to make sure the community is running the best software, best designs, and all the other bells and whistles. Care to buy us a beer? We'd really appreciate it!

    Donate to us!