MediaWiki
master
|
Base class for memcached clients. More...
Public Member Functions | |
add ($key, $value, $exptime=0) | |
delete ($key) | |
fixExpiry ($expiry) | |
TTLs higher than 30 days will be detected as absolute TTLs (UNIX timestamps), and will result in the cache entry being discarded immediately because the expiry is in the past. More... | |
getClient () | |
Get the underlying client object. More... | |
makeKeyInternal ($keyspace, $args) | |
Construct a cache key. More... | |
merge ($key, callable $callback, $exptime=0, $attempts=10, $flags=0) | |
modifySimpleRelayEvent (array $event) | |
set ($key, $value, $exptime=0, $flags=0) | |
validateKeyEncoding ($key) | |
Ensure that a key is safe to use (contains no control characters and no characters above the ASCII range.) More... | |
![]() | |
__construct (array $params=[]) | |
$params include: More... | |
add ($key, $value, $exptime=0) | |
clearLastError () | |
Clear the "last error" registry. More... | |
decr ($key, $value=1) | |
Decrease stored value of $key by $value while preserving its TTL. More... | |
delete ($key) | |
Delete an item. More... | |
deleteObjectsExpiringBefore ($date, $progressCallback=false) | |
Delete all objects expiring before a certain date. More... | |
get ($key, $flags=0, $oldFlags=null) | |
Get an item with the given key. More... | |
getLastError () | |
Get the "last error" registered; clearLastError() should be called manually. More... | |
getMulti (array $keys, $flags=0) | |
Get an associative array containing the item for each of the keys that have items. More... | |
getScopedLock ($key, $timeout=6, $expiry=30, $rclass= '') | |
Get a lightweight exclusive self-unlocking lock. More... | |
getWithSetCallback ($key, $ttl, $callback, $flags=0) | |
Get an item with the given key, regenerating and setting it if not found. More... | |
incr ($key, $value=1) | |
Increase stored value of $key by $value while preserving its TTL. More... | |
incrWithInit ($key, $ttl, $value=1, $init=1) | |
Increase stored value of $key by $value while preserving its TTL. More... | |
lock ($key, $timeout=6, $expiry=6, $rclass= '') | |
Acquire an advisory lock on a key string. More... | |
makeGlobalKey () | |
Make a global cache key. More... | |
makeKey () | |
Make a cache key, scoped to this instance's keyspace. More... | |
makeKeyInternal ($keyspace, $args) | |
Construct a cache key. More... | |
merge ($key, callable $callback, $exptime=0, $attempts=10, $flags=0) | |
Merge changes into the existing cache value (possibly creating a new one) More... | |
modifySimpleRelayEvent (array $event) | |
Modify a cache update operation array for EventRelayer::notify() More... | |
set ($key, $value, $exptime=0, $flags=0) | |
Set an item. More... | |
setDebug ($bool) | |
setLogger (LoggerInterface $logger) | |
setMulti (array $data, $exptime=0) | |
Batch insertion. More... | |
unlock ($key) | |
Release an advisory lock on a key string. More... | |
Protected Member Functions | |
applyDefaultParams ($params) | |
Fill in some defaults for missing keys in $params. More... | |
cas ($casToken, $key, $value, $exptime=0) | |
debugLog ($text) | |
Send a debug message to the log. More... | |
doGet ($key, $flags=0) | |
getWithToken ($key, &$casToken, $flags=0) | |
![]() | |
cas ($casToken, $key, $value, $exptime=0) | |
Check and set an item. More... | |
convertExpiry ($exptime) | |
Convert an optionally relative time to an absolute time. More... | |
convertToRelative ($exptime) | |
Convert an optionally absolute expiry time to a relative time. More... | |
debug ($text) | |
doGet ($key, $flags=0) | |
getWithToken ($key, &$casToken, $flags=0) | |
isInteger ($value) | |
Check if a value is an integer. More... | |
mergeViaCas ($key, $callback, $exptime=0, $attempts=10) | |
mergeViaLock ($key, $callback, $exptime=0, $attempts=10, $flags=0) | |
setLastError ($err) | |
Set the "last error" registry. More... | |
Protected Attributes | |
MemcachedClient Memcached | $client |
![]() | |
callback null | $asyncHandler |
string | $keyspace = 'local' |
integer | $lastError = self::ERR_NONE |
array[] | $locks = [] |
Lock tracking. More... | |
LoggerInterface | $logger |
Additional Inherited Members | |
![]() | |
const | ERR_NO_RESPONSE = 1 |
const | ERR_NONE = 0 |
Possible values for getLastError() More... | |
const | ERR_UNEXPECTED = 3 |
const | ERR_UNREACHABLE = 2 |
const | READ_LATEST = 1 |
Bitfield constants for get()/getMulti() More... | |
const | READ_VERIFIED = 2 |
const | WRITE_CACHE_ONLY = 2 |
const | WRITE_SYNC = 1 |
Bitfield constants for set()/merge() More... | |
![]() | |
const | TTL_DAY = 86400 |
const | TTL_HOUR = 3600 |
const | TTL_INDEFINITE = 0 |
const | TTL_MINUTE = 60 |
const | TTL_MONTH = 2592000 |
const | TTL_PROC_LONG = 30 |
const | TTL_PROC_SHORT = 3 |
const | TTL_WEEK = 604800 |
const | TTL_YEAR = 31536000 |
Base class for memcached clients.
Definition at line 29 of file MemcachedBagOStuff.php.
MemcachedBagOStuff::add | ( | $key, | |
$value, | |||
$exptime = 0 |
|||
) |
Definition at line 73 of file MemcachedBagOStuff.php.
References $value, fixExpiry(), and validateKeyEncoding().
Referenced by MemcLockManager\acquireMutexes().
|
protected |
Fill in some defaults for missing keys in $params.
array | $params |
Definition at line 39 of file MemcachedBagOStuff.php.
References $params.
Referenced by MemcachedPhpBagOStuff\__construct(), and MemcachedPeclBagOStuff\__construct().
|
protected |
Definition at line 64 of file MemcachedBagOStuff.php.
References $value, fixExpiry(), and validateKeyEncoding().
|
protected |
Send a debug message to the log.
string | $text |
Definition at line 172 of file MemcachedBagOStuff.php.
Referenced by MemcachedPeclBagOStuff\add(), MemcachedPeclBagOStuff\cas(), MemcachedPeclBagOStuff\checkResult(), MemcachedPeclBagOStuff\decr(), MemcachedPeclBagOStuff\delete(), MemcachedPeclBagOStuff\getMulti(), MemcachedPeclBagOStuff\getWithToken(), MemcachedPeclBagOStuff\incr(), MemcachedPeclBagOStuff\set(), and MemcachedPeclBagOStuff\setMulti().
MemcachedBagOStuff::delete | ( | $key | ) |
Definition at line 69 of file MemcachedBagOStuff.php.
References validateKeyEncoding().
Referenced by MemcLockManager\releaseMutexes().
|
protected |
Definition at line 49 of file MemcachedBagOStuff.php.
References $flags, and getWithToken().
MemcachedBagOStuff::fixExpiry | ( | $expiry | ) |
TTLs higher than 30 days will be detected as absolute TTLs (UNIX timestamps), and will result in the cache entry being discarded immediately because the expiry is in the past.
Clamp expires >30d at 30d, unless they're >=1e9 in which case they are likely to really be absolute (1e9 = 2011-09-09)
int | $expiry |
Definition at line 161 of file MemcachedBagOStuff.php.
Referenced by add(), cas(), set(), and MemcachedPeclBagOStuff\setMulti().
MemcachedBagOStuff::getClient | ( | ) |
Get the underlying client object.
This is provided for debugging purposes.
Definition at line 87 of file MemcachedBagOStuff.php.
References $client.
|
protected |
Definition at line 55 of file MemcachedBagOStuff.php.
References validateKeyEncoding().
Referenced by doGet().
MemcachedBagOStuff::makeKeyInternal | ( | $keyspace, | |
$args | |||
) |
Construct a cache key.
string | $keyspace | |
array | $args |
Definition at line 99 of file MemcachedBagOStuff.php.
References $args, BagOStuff\$keyspace, and use.
MemcachedBagOStuff::merge | ( | $key, | |
callable | $callback, | ||
$exptime = 0 , |
|||
$attempts = 10 , |
|||
$flags = 0 |
|||
) |
Definition at line 78 of file MemcachedBagOStuff.php.
References BagOStuff\mergeViaCas().
MemcachedBagOStuff::modifySimpleRelayEvent | ( | array | $event | ) |
Definition at line 176 of file MemcachedBagOStuff.php.
MemcachedBagOStuff::set | ( | $key, | |
$value, | |||
$exptime = 0 , |
|||
$flags = 0 |
|||
) |
Definition at line 59 of file MemcachedBagOStuff.php.
References $value, fixExpiry(), and validateKeyEncoding().
MemcachedBagOStuff::validateKeyEncoding | ( | $key | ) |
Ensure that a key is safe to use (contains no control characters and no characters above the ASCII range.)
string | $key |
Exception |
Definition at line 145 of file MemcachedBagOStuff.php.
Referenced by add(), cas(), MemcachedPhpBagOStuff\decr(), delete(), MemcachedPhpBagOStuff\getMulti(), MemcachedPeclBagOStuff\getMulti(), getWithToken(), MemcachedPeclBagOStuff\getWithToken(), MemcachedPhpBagOStuff\incr(), set(), and MemcachedPeclBagOStuff\setMulti().
|
protected |
Definition at line 31 of file MemcachedBagOStuff.php.
Referenced by getClient().