https://bugzilla.wikimedia.org/show_bug.cgi?id=27320

           Summary: MessageBlobStore::clear() causes scaling problems on
                    multi-server setups with CDB l10ncache
           Product: MediaWiki
           Version: 1.18-svn
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: enhancement
          Priority: Normal
         Component: Resource Loader
        AssignedTo: roan.katt...@gmail.com
        ReportedBy: roan.katt...@gmail.com
                CC: tstarl...@wikimedia.org, roan.katt...@gmail.com,
                    tpars...@wikimedia.org


We had to disable MessageBlobStore::clear() on WMF and replace it with a
maintenance script to run upon sync, because on multi-server setups where
l10ncache is in CDB, LocalisationCache::recache() is run once per server per
language, causing the MBS to be cleared lots of times. This led to DB deadlocks
and possibly to other performance issues.

I guess the least we can do is offer a $wg variable to disable clear(). A
better solution, suggested by Tim, would be to add
CacheDependency::getModifiedTime(), add a way to retrieve the maximum mtime
from LocalisationCache, and use that in the startup module to conditionally
call MessageBlobStore::clear() before retrieving any module timestamps. This
would scale because the startup module is cached for 5 minutes.

-- 
Configure bugmail: https://bugzilla.wikimedia.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

_______________________________________________
Wikibugs-l mailing list
Wikibugs-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikibugs-l

Reply via email to