From: Mark A. Hershberger Date: Mon, 7 Nov 2011 17:50:54 +0000 (+0000) Subject: re Bug #29283, r101507: Apply Vitaliy Filippov's followup fix: X-Git-Tag: 1.31.0-rc.0~26656 X-Git-Url: https://git.cyclocoop.org/%20%27.%28%24debut%20%20%20%24par_page%29.%27?a=commitdiff_plain;h=2d1ccd9ba1370c0cbb558b9ee9448e421ea44993;p=lhc%2Fweb%2Fwiklou.git re Bug #29283, r101507: Apply Vitaliy Filippov's followup fix: .... I've found another bug with the implementation - it also relies on the presence of key '...:preload' and doesn't check it when checking for the expired cache, which can lead to "Invalid or missing localisation cache" exceptions. --- diff --git a/includes/LocalisationCache.php b/includes/LocalisationCache.php index 1aaf8367bd..aaa0245e48 100644 --- a/includes/LocalisationCache.php +++ b/includes/LocalisationCache.php @@ -357,8 +357,9 @@ class LocalisationCache { $deps = $this->store->get( $code, 'deps' ); $keys = $this->store->get( $code, 'list', 'messages' ); - // 'list:messages' sometimes expires separately of 'deps' in LCStore_Accel - if ( $deps === null || $keys === null ) { + $preload = $this->store->get( $code, 'preload' ); + // Different keys may expire separately, at least in LCStore_Accel + if ( $deps === null || $keys === null || $preload === null ) { wfDebug( __METHOD__."($code): cache missing, need to make one\n" ); return true; }