Commit graph

8 commits

Author SHA1 Message Date
Sam Reed
dd6062e75e Bug 13759 - memcached predefined hashes
Patch by Zac Bristow

Half of the patch was already applied. Updated documentation to match
2011-11-19 20:01:33 +00:00
Roan Kattouw
f8024445dd Per Domas, reinstate <1e9 check that was dropped in r94199. Also document what these checks are all about in more detail. 2011-10-06 14:07:57 +00:00
Aaron Schulz
a6999018e5 Added lock/unlock function stubs. Fixes:
PHP fatal error in /usr/local/apache/common-local/php-1.18/includes/objectcache/MemcachedPhpBagOStuff.php line 91: 
Call to undefined method MemCachedClientforWiki::lock()
2011-09-21 20:25:58 +00:00
Roan Kattouw
e877e8f5e0 Merge r93797 to trunk, in a somewhat modified form: clamp expiries for memcached to 30 days, higher values give trouble apparently 2011-08-10 21:15:57 +00:00
Sam Reed
bccd879a46 Add/tweak/update documentation and add some explicit defintions with type descriptions 2011-03-25 10:56:54 +00:00
Platonides
8f0a89efcb Reorder so that wfProfileOut() is the last sentence before the return. 2011-03-06 23:29:29 +00:00
Tim Starling
be76d86932 * Rewrote ObjectCache.php to conform to the modern coding style, and to be less convoluted about how CACHE_ANYTHING and CACHE_ACCEL are resolved. Moved most functionality to static members of a new ObjectCache class.
* Moved the global functions to GlobalFunctions.php, where they are now just convenience wrappers. Made them return non-references. Updated callers (none found in extensions). 
* Added an advanced configuration method, $wgObjectCaches, which allows a lot more detail in the object cache configuration than $wgMainCacheType. 
* Made all object cache classes derive from BagOStuff. 
* Split the MWMemcached class into a generic client class and a MediaWiki-specific wrapper class. The wrapper class presents a simple BagOStuff interface to calling code, hiding memcached client internals, and will simplify the task of supporting the PECL extension.
* Added some extra constructor parameters to MWMemcached, configurable via $wgObjectCaches.
* Removed the *_multi() methods from BagOStuff, my grepping indicates that they are not used.
* Rewrote FakeMemCachedClient as a BagOStuff subclass, called EmptyBagOStuff.
* Added an optional "server" parameter to SQLBagOStuff. This allows the server holding the objectcache table to be different from the server holding the core DB.
* Added MultiWriteBagOStuff: a cache class which writes to multiple locations, and reads from them in a defined fallback sequence. This can be used to extend the cache space by adding disk-backed storage to existing in-memory caches.
* Made MWMemcached::get() return false on failure instead of null, to match the BagOStuff documentation and the other BagOStuff subclasses. Anything that was relying on it returning null would have already been broken with SqlBagOStuff.
* Fixed a bug in the memcached client causing keys with spaces or line breaks in them to break the memcached protocol, injecting arbitrary commands or parameters. Since the PECL client apparently also has this flaw, I implemented the fix in the wrapper class.
* Renamed BagOStuff::set_debug() to setDebug(), since we aren't emulating the memcached client anymore
* Fixed spelling error in MWMemcached: persistant -> persistent
2011-03-03 09:37:37 +00:00
Tim Starling
d3f36ffd4d More renames and splits for objectcache reorganisation. 2011-03-03 04:48:14 +00:00
Renamed from includes/memcached-client.php (Browse further)