From 253bee13bfd3d9f5ba4f96f71f0243d2c31f0374 Mon Sep 17 00:00:00 2001 From: Timo Tijhof Date: Tue, 28 May 2019 19:24:31 +0100 Subject: [PATCH] resourceloader: Change cache keys to use first segment for grouping by purpose Remove use of a complete "namespace" for grouping and instead use dashes within the first key segment for that. This way, we can leverage the various features WANObjectCache provides for statistics relating to a particular kind of thing being cached. These statistics are currently combined for all of resourceloader, which isn't useful. Mildly related to T223647. Change-Id: I5df69e46ac436d04e765726a36fc3eb70697a7ed --- includes/resourceloader/ResourceLoader.php | 3 +-- includes/resourceloader/ResourceLoaderModule.php | 3 +-- includes/resourceloader/ResourceLoaderWikiModule.php | 6 +++--- 3 files changed, 5 insertions(+), 7 deletions(-) diff --git a/includes/resourceloader/ResourceLoader.php b/includes/resourceloader/ResourceLoader.php index e338f93091..2ae6d7495e 100644 --- a/includes/resourceloader/ResourceLoader.php +++ b/includes/resourceloader/ResourceLoader.php @@ -196,8 +196,7 @@ class ResourceLoader implements LoggerAwareInterface { $cache = ObjectCache::getLocalServerInstance( CACHE_ANYTHING ); $key = $cache->makeGlobalKey( - 'resourceloader', - 'filter', + 'resourceloader-filter', $filter, self::CACHE_VERSION, md5( $data ) diff --git a/includes/resourceloader/ResourceLoaderModule.php b/includes/resourceloader/ResourceLoaderModule.php index 66a4edfb1c..dd7857ee8a 100644 --- a/includes/resourceloader/ResourceLoaderModule.php +++ b/includes/resourceloader/ResourceLoaderModule.php @@ -954,8 +954,7 @@ abstract class ResourceLoaderModule implements LoggerAwareInterface { $cache = MediaWikiServices::getInstance()->getMainWANObjectCache(); return $cache->getWithSetCallback( $cache->makeGlobalKey( - 'resourceloader', - 'jsparse', + 'resourceloader-jsparse', self::$parseCacheVersion, md5( $contents ), $fileName diff --git a/includes/resourceloader/ResourceLoaderWikiModule.php b/includes/resourceloader/ResourceLoaderWikiModule.php index 4c11fce0b1..d37c31b1f5 100644 --- a/includes/resourceloader/ResourceLoaderWikiModule.php +++ b/includes/resourceloader/ResourceLoaderWikiModule.php @@ -484,7 +484,7 @@ class ResourceLoaderWikiModule extends ResourceLoaderModule { $cache = MediaWikiServices::getInstance()->getMainWANObjectCache(); $allInfo = $cache->getWithSetCallback( - $cache->makeGlobalKey( 'resourceloader', 'titleinfo', $db->getDomainID(), $hash ), + $cache->makeGlobalKey( 'resourceloader-titleinfo', $db->getDomainID(), $hash ), $cache::TTL_HOUR, function ( $curVal, &$ttl, array &$setOpts ) use ( $func, $pageNames, $db, $fname ) { $setOpts += Database::getCacheSetOptions( $db ); @@ -493,7 +493,7 @@ class ResourceLoaderWikiModule extends ResourceLoaderModule { }, [ 'checkKeys' => [ - $cache->makeGlobalKey( 'resourceloader', 'titleinfo', $db->getDomainID() ) ] + $cache->makeGlobalKey( 'resourceloader-titleinfo', $db->getDomainID() ) ] ] ); @@ -550,7 +550,7 @@ class ResourceLoaderWikiModule extends ResourceLoaderModule { if ( $purge ) { $cache = MediaWikiServices::getInstance()->getMainWANObjectCache(); - $key = $cache->makeGlobalKey( 'resourceloader', 'titleinfo', $domain ); + $key = $cache->makeGlobalKey( 'resourceloader-titleinfo', $domain ); $cache->touchCheckKey( $key ); } } -- 2.20.1