Redis Cache By Xon

xF2 Add-on Redis Cache By Xon 2.17.2

No permission to download
  • Fix high availability support where css updates would be sent to a possible readonly replica instead of the writable instance
Disable behavior which caused css.php to return a 404 on an invalid template.
For the old behaviour of returning a HTTP 404 response, set this config.php option:

$config['svForce404OnEmptyCss'] = true;
  • High avaliability config default change:
    • Change default value for retry_reads_on_primary config option to true as this guards against unexpected replication delays
  • Remove unexpected differences for XF2.2 and XF2.3 support (only tested on XF2.2)
  • When displaying redis version, include the redis varaint type.
    • Known variants are keydb & dragonflydb.
    • Dragonflydb does not appear to support IO stats at the moment
  • Fix helper code to expire/purge redis keys did not support non-main cache backends.
    • If using a separate caching backend for css, old styling was not actively expired as expected, resulting in higher memory usage
    • If 3rd party code uses expireCacheByPattern/purgeCacheByPattern function, the new nullable 'cache' parameter should be used
  • Display maximum memory and maximum memory policy in admincp redis status information block for troubleshooting purposes
  • Fix "call to a member function setRedisConnector() on null" when using a non-default advanced configuration option
  • Remove displaying if Lua is configured or not, and remove the Lua enable/disable option.
    • Lua support was first added to redis v2.6.0, and this add-on required redis v3
  • Rework caching provider code in preparation for XenForo 2.3
    • XF have documented they are switching from Doctrine/Cache to Symfony/Cache
    • I have not tested this on XF2.3, and have coded against the public interfaces of the Symfony/Cache package.
    • A future release may be required for full XF2.3 compatibility.
  • Track latest upstream Credis library
  • When various bulk-thread operations happen (move/merge/delete/approve & admincp "Batch update threads"), purge the cached forum totals to avoid stale page navigation entries.
    Uses the job queue to avoid blocking the request.
This add-on is now available on
  • Require XenForo 2.2+
  • Require php 7.2+
  • Track latest upstream Credis library
  • Fix some errors from Redis would trigger an unhelpful php type error, instead of a more useful error message
  • Correctly implement "saveMultiple" method on the cache interface. This method is not used by XenForo (and apparently any other 3rd party).
  • Track latest upstream Credis library
  • Replace "master/slave" terminology with "primary/replica" terminology. Previous config.php setting will still work.