From 43ae2fb6f91e25d03bd8ddc358debc1f95a13e57 Mon Sep 17 00:00:00 2001 From: Antoine Musso Date: Mon, 20 May 2013 11:16:27 +0200 Subject: [PATCH] doc: various updates [includes/cache/MessageCache.php] - internal constants - constructor - a few missing @var [includes/clientpool/RedisConnectionPool.php] - group internal settings applying to the pool - misc protected members updates [includes/debug/Debug.php] - missing parameter name in @var statements Change-Id: I6ff0a68d659529d128f40f32b0fd1c1d39af952f --- includes/cache/MessageCache.php | 48 +++++++++++++++++---- includes/clientpool/RedisConnectionPool.php | 30 +++++++++---- includes/debug/Debug.php | 18 ++++---- 3 files changed, 70 insertions(+), 26 deletions(-) diff --git a/includes/cache/MessageCache.php b/includes/cache/MessageCache.php index 49db8576d3..c06383e4c0 100644 --- a/includes/cache/MessageCache.php +++ b/includes/cache/MessageCache.php @@ -22,12 +22,27 @@ */ /** - * + * MediaWiki message cache structure version. + * Bump this whenever the message cache format has changed. + */ +define( 'MSG_CACHE_VERSION', 1 ); + +/** + * Memcached timeout when loading a key. + * See MessageCache::load() */ define( 'MSG_LOAD_TIMEOUT', 60 ); + +/** + * Memcached timeout when locking a key for a writing operation. + * See MessageCache::lock() + */ define( 'MSG_LOCK_TIMEOUT', 30 ); +/** + * Number of times we will try to acquire a lock from Memcached. + * This comes in addition to MSG_LOCK_TIMEOUT. + */ define( 'MSG_WAIT_TIMEOUT', 30 ); -define( 'MSG_CACHE_VERSION', 1 ); /** * Message cache @@ -44,10 +59,16 @@ class MessageCache { */ protected $mCache; - // Should mean that database cannot be used, but check + /** + * Should mean that database cannot be used, but check + * @var bool $mDisable + */ protected $mDisable; - /// Lifetime for cache, used by object caching + /** + * Lifetime for cache, used by object caching. + * Set on construction, see __construct(). + */ protected $mExpiry; /** @@ -56,18 +77,21 @@ class MessageCache { */ protected $mParserOptions, $mParser; - /// Variable for tracking which variables are already loaded + /** + * Variable for tracking which variables are already loaded + * @var array $mLoadedLanguages + */ protected $mLoadedLanguages = array(); /** * Singleton instance * - * @var MessageCache + * @var MessageCache $instance */ private static $instance; /** - * @var bool + * @var bool $mInParser */ protected $mInParser = false; @@ -98,6 +122,11 @@ class MessageCache { self::$instance = null; } + /** + * @param ObjectCache $memCached A cache instance. If none, fall back to CACHE_NONE. + * @param bool $useDB + * @param int $expiry Lifetime for cache. @see $mExpiry. + */ function __construct( $memCached, $useDB, $expiry ) { if ( !$memCached ) { $memCached = wfGetCache( CACHE_NONE ); @@ -592,7 +621,10 @@ class MessageCache { } /** - * Represents a write lock on the messages key + * Represents a write lock on the messages key. + * + * Will retry MessageCache::MSG_WAIT_TIMEOUT times, each operations having + * a timeout of MessageCache::MSG_LOCK_TIMEOUT. * * @param string $key * @return Boolean: success diff --git a/includes/clientpool/RedisConnectionPool.php b/includes/clientpool/RedisConnectionPool.php index 65fe58fc16..da4621acde 100644 --- a/includes/clientpool/RedisConnectionPool.php +++ b/includes/clientpool/RedisConnectionPool.php @@ -36,23 +36,35 @@ * @since 1.21 */ class RedisConnectionPool { - // Settings for all connections in this pool - protected $connectTimeout; // string; connection timeout - protected $persistent; // bool; whether connections persist - protected $password; // string; plaintext auth password - protected $serializer; // integer; the serializer to use (Redis::SERIALIZER_*) + /** + * @name Pool settings. + * Settings there are shared for any connection made in this pool. + * See the singleton() method documentation for more details. + * @{ + */ + /** @var string Connection timeout in seconds */ + protected $connectTimeout; + /** @var string Plaintext auth password */ + protected $password; + /** @var bool Whether connections persist */ + protected $persistent; + /** @var integer Serializer to use (Redis::SERIALIZER_*) */ + protected $serializer; + /** @} */ - protected $idlePoolSize = 0; // integer; current idle pool size + /** @var integer Current idle pool size */ + protected $idlePoolSize = 0; /** @var Array (server name => ((connection info array),...) */ protected $connections = array(); /** @var Array (server name => UNIX timestamp) */ protected $downServers = array(); - /** @var Array */ - protected static $instances = array(); // (pool ID => RedisConnectionPool) + /** @var Array (pool ID => RedisConnectionPool) */ + protected static $instances = array(); - const SERVER_DOWN_TTL = 30; // integer; seconds to cache servers as "down" + /** integer; seconds to cache servers as "down". */ + const SERVER_DOWN_TTL = 30; /** * @param array $options diff --git a/includes/debug/Debug.php b/includes/debug/Debug.php index d75a126b7f..ec9a62af7f 100644 --- a/includes/debug/Debug.php +++ b/includes/debug/Debug.php @@ -1,6 +1,6 @@