From 2d1ccd9ba1370c0cbb558b9ee9448e421ea44993 Mon Sep 17 00:00:00 2001 From: "Mark A. Hershberger" Date: Mon, 7 Nov 2011 17:50:54 +0000 Subject: [PATCH] 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. --- includes/LocalisationCache.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) 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; } -- 2.20.1