When the LocalisationCache class is set to 'detect', we prefer LCStoreCDB if
$wgCacheDirectory is set, but we default to LCStoreDB otherwise. Rather than
give up, we should try wfTempDir(), since any directory that meets its criteria
is also suitable for LCStoreCDB.
Change-Id: Id3e2d2b18ddb423647bf2e893bcf942722c0e097
$storeClass = 'LCStoreStaticArray';
break;
case 'detect':
- $storeClass = $wgCacheDirectory ? 'LCStoreCDB' : 'LCStoreDB';
+ if ( !empty( $conf['storeDirectory'] ) ) {
+ $storeClass = 'LCStoreCDB';
+ } else {
+ $cacheDir = $wgCacheDirectory ?: wfTempDir();
+ if ( $cacheDir ) {
+ $storeConf['directory'] = $cacheDir;
+ $storeClass = 'LCStoreCDB';
+ } else {
+ $storeClass = 'LCStoreDB';
+ }
+ }
break;
default:
throw new MWException(