Index: trunk/phase3/RELEASE-NOTES-1.19 |
— | — | @@ -153,6 +153,8 @@ |
154 | 154 | was specified. |
155 | 155 | * (bug 30368) Special:Newpages now shows the new page name for moved pages |
156 | 156 | * (bug 1697) The way to search blocked usernames in block log should be clearer |
| 157 | +* (bug 29747) eAccelerator shared memory caching has been removed since it is |
| 158 | + now disabled by default and is buggy. APC, XCache and WinCache are not affected. |
157 | 159 | |
158 | 160 | === API changes in 1.19 === |
159 | 161 | * (bug 19838) siprop=interwikimap can now use the interwiki cache. |
Index: trunk/phase3/includes/Defines.php |
— | — | @@ -92,7 +92,7 @@ |
93 | 93 | define( 'CACHE_NONE', 0 ); // Do not cache |
94 | 94 | define( 'CACHE_DB', 1 ); // Store cache objects in the DB |
95 | 95 | define( 'CACHE_MEMCACHED', 2 ); // MemCached, must specify servers in $wgMemCacheServers |
96 | | -define( 'CACHE_ACCEL', 3 ); // eAccelerator |
| 96 | +define( 'CACHE_ACCEL', 3 ); // APC, XCache or WinCache |
97 | 97 | define( 'CACHE_DBA', 4 ); // Use PHP's DBA extension to store in a DBM-style database |
98 | 98 | /**@}*/ |
99 | 99 | |
Index: trunk/phase3/includes/objectcache/eAccelBagOStuff.php |
— | — | @@ -1,46 +0,0 @@ |
2 | | -<?php |
3 | | - |
4 | | -/** |
5 | | - * This is a wrapper for eAccelerator's shared memory functions. |
6 | | - * |
7 | | - * This is basically identical to the deceased Turck MMCache version, |
8 | | - * mostly because eAccelerator is based on Turck MMCache. |
9 | | - * |
10 | | - * @ingroup Cache |
11 | | - */ |
12 | | -class eAccelBagOStuff extends BagOStuff { |
13 | | - public function get( $key ) { |
14 | | - $val = eaccelerator_get( $key ); |
15 | | - |
16 | | - if ( is_string( $val ) ) { |
17 | | - $val = unserialize( $val ); |
18 | | - } |
19 | | - |
20 | | - return $val; |
21 | | - } |
22 | | - |
23 | | - public function set( $key, $value, $exptime = 0 ) { |
24 | | - eaccelerator_put( $key, serialize( $value ), $exptime ); |
25 | | - |
26 | | - return true; |
27 | | - } |
28 | | - |
29 | | - public function delete( $key, $time = 0 ) { |
30 | | - eaccelerator_rm( $key ); |
31 | | - |
32 | | - return true; |
33 | | - } |
34 | | - |
35 | | - public function lock( $key, $waitTimeout = 0 ) { |
36 | | - eaccelerator_lock( $key ); |
37 | | - |
38 | | - return true; |
39 | | - } |
40 | | - |
41 | | - public function unlock( $key ) { |
42 | | - eaccelerator_unlock( $key ); |
43 | | - |
44 | | - return true; |
45 | | - } |
46 | | -} |
47 | | - |
Index: trunk/phase3/includes/objectcache/ObjectCache.php |
— | — | @@ -89,9 +89,7 @@ |
90 | 90 | * @return ObjectCache |
91 | 91 | */ |
92 | 92 | static function newAccelerator( $params ) { |
93 | | - if ( function_exists( 'eaccelerator_get' ) ) { |
94 | | - $id = 'eaccelerator'; |
95 | | - } elseif ( function_exists( 'apc_fetch') ) { |
| 93 | + if ( function_exists( 'apc_fetch') ) { |
96 | 94 | $id = 'apc'; |
97 | 95 | } elseif( function_exists( 'xcache_get' ) && wfIniGetBool( 'xcache.var_size' ) ) { |
98 | 96 | $id = 'xcache'; |
Index: trunk/phase3/includes/LocalisationCache.php |
— | — | @@ -842,7 +842,7 @@ |
843 | 843 | |
844 | 844 | /** |
845 | 845 | * LCStore implementation which uses PHP accelerator to store data. |
846 | | - * This will work if one of XCache, eAccelerator, or APC cacher is configured. |
| 846 | + * This will work if one of XCache, WinCache or APC cacher is configured. |
847 | 847 | * (See ObjectCache.php) |
848 | 848 | */ |
849 | 849 | class LCStore_Accel implements LCStore { |
Index: trunk/phase3/includes/installer/Installer.php |
— | — | @@ -205,7 +205,6 @@ |
206 | 206 | protected $objectCaches = array( |
207 | 207 | 'xcache' => 'xcache_get', |
208 | 208 | 'apc' => 'apc_fetch', |
209 | | - 'eaccel' => 'eaccelerator_get', |
210 | 209 | 'wincache' => 'wincache_ucache_get' |
211 | 210 | ); |
212 | 211 | |
Index: trunk/phase3/includes/installer/Installer.i18n.php |
— | — | @@ -134,9 +134,8 @@ |
135 | 135 | The installation may fail!", |
136 | 136 | 'config-xcache' => '[http://xcache.lighttpd.net/ XCache] is installed', |
137 | 137 | 'config-apc' => '[http://www.php.net/apc APC] is installed', |
138 | | - 'config-eaccel' => '[http://eaccelerator.sourceforge.net/ eAccelerator] is installed', |
139 | 138 | 'config-wincache' => '[http://www.iis.net/download/WinCacheForPhp WinCache] is installed', |
140 | | - 'config-no-cache' => "'''Warning:''' Could not find [http://eaccelerator.sourceforge.net eAccelerator], [http://www.php.net/apc APC], [http://xcache.lighttpd.net/ XCache] or [http://www.iis.net/download/WinCacheForPhp WinCache]. |
| 139 | + 'config-no-cache' => "'''Warning:''' Could not find [http://www.php.net/apc APC], [http://xcache.lighttpd.net/ XCache] or [http://www.iis.net/download/WinCacheForPhp WinCache]. |
141 | 140 | Object caching is not enabled.", |
142 | 141 | 'config-mod-security' => "'''Warning''': your web server has [http://modsecurity.org/ mod_security] enabled. If misconfigured, it can cause problems for MediaWiki or other software that allows users to post arbitrary content. |
143 | 142 | Refer to [http://modsecurity.org/documentation/ mod_security documentation] or contact your host's support if you encounter random errors.", |
— | — | @@ -472,7 +471,7 @@ |
473 | 472 | 'config-cache-help' => 'Object caching is used to improve the speed of MediaWiki by caching frequently used data. |
474 | 473 | Medium to large sites are highly encouraged to enable this, and small sites will see benefits as well.', |
475 | 474 | 'config-cache-none' => 'No caching (no functionality is removed, but speed may be impacted on larger wiki sites)', |
476 | | - 'config-cache-accel' => 'PHP object caching (APC, eAccelerator, XCache or WinCache)', |
| 475 | + 'config-cache-accel' => 'PHP object caching (APC, XCache or WinCache)', |
477 | 476 | 'config-cache-memcached' => 'Use Memcached (requires additional setup and configuration)', |
478 | 477 | 'config-memcached-servers' => 'Memcached servers:', |
479 | 478 | 'config-memcached-help' => 'List of IP addresses to use for Memcached. |
— | — | @@ -606,7 +605,6 @@ |
607 | 606 | * $1 is the configured <code>memory_limit</code>.', |
608 | 607 | 'config-xcache' => 'Message indicates if this program is available', |
609 | 608 | 'config-apc' => 'Message indicates if this program is available', |
610 | | - 'config-eaccel' => 'Message indicates if this program is available', |
611 | 609 | 'config-wincache' => 'Message indicates if this program is available', |
612 | 610 | 'config-imagemagick' => '$1 is ImageMagick\'s <code>convert</code> executable file name. |
613 | 611 | |
Index: trunk/phase3/includes/AutoLoader.php |
— | — | @@ -598,7 +598,6 @@ |
599 | 599 | 'APCBagOStuff' => 'includes/objectcache/APCBagOStuff.php', |
600 | 600 | 'BagOStuff' => 'includes/objectcache/BagOStuff.php', |
601 | 601 | 'DBABagOStuff' => 'includes/objectcache/DBABagOStuff.php', |
602 | | - 'eAccelBagOStuff' => 'includes/objectcache/eAccelBagOStuff.php', |
603 | 602 | 'EhcacheBagOStuff' => 'includes/objectcache/EhcacheBagOStuff.php', |
604 | 603 | 'EmptyBagOStuff' => 'includes/objectcache/EmptyBagOStuff.php', |
605 | 604 | 'FakeMemCachedClient' => 'includes/objectcache/EmptyBagOStuff.php', |
Index: trunk/phase3/includes/DefaultSettings.php |
— | — | @@ -1492,7 +1492,7 @@ |
1493 | 1493 | * - CACHE_NONE: Do not cache |
1494 | 1494 | * - CACHE_DB: Store cache objects in the DB |
1495 | 1495 | * - CACHE_MEMCACHED: MemCached, must specify servers in $wgMemCachedServers |
1496 | | - * - CACHE_ACCEL: eAccelerator, APC, XCache or WinCache |
| 1496 | + * - CACHE_ACCEL: APC, XCache or WinCache |
1497 | 1497 | * - CACHE_DBA: Use PHP's DBA extension to store in a DBM-style |
1498 | 1498 | * database. This is slow, and is not recommended for |
1499 | 1499 | * anything other than debugging. |
— | — | @@ -1542,7 +1542,6 @@ |
1543 | 1543 | CACHE_ACCEL => array( 'factory' => 'ObjectCache::newAccelerator' ), |
1544 | 1544 | CACHE_MEMCACHED => array( 'factory' => 'ObjectCache::newMemcached' ), |
1545 | 1545 | |
1546 | | - 'eaccelerator' => array( 'class' => 'eAccelBagOStuff' ), |
1547 | 1546 | 'apc' => array( 'class' => 'APCBagOStuff' ), |
1548 | 1547 | 'xcache' => array( 'class' => 'XCacheBagOStuff' ), |
1549 | 1548 | 'wincache' => array( 'class' => 'WinCacheBagOStuff' ), |