MediaWiki
master
|
A cache class that replicates all writes to multiple child caches. More...
Public Member Functions | |
__construct ($params) | |
$params include: More... | |
add ($key, $value, $exptime=0) | |
clearLastError () | |
decr ($key, $value=1) | |
delete ($key) | |
deleteObjectsExpiringBefore ($date, $progressCallback=false) | |
Delete objects expiring before a certain date. More... | |
getLastError () | |
incr ($key, $value=1) | |
lock ($key, $timeout=6, $expiry=6, $rclass= '') | |
set ($key, $value, $exptime=0, $flags=0) | |
setDebug ($debug) | |
unlock ($key) | |
Public Member Functions inherited from BagOStuff | |
__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... | |
Public Attributes | |
const | ALL = INF |
Idiom for "write to all backends". More... | |
const | UPGRADE_TTL = 3600 |
Public Attributes inherited from BagOStuff | |
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... | |
Public Attributes inherited from IExpiringStore | |
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 |
Protected Member Functions | |
doGet ($key, $flags=0) | |
doWrite ($count, $asyncWrites, $method) | |
Apply a write method to the first $count backing caches. More... | |
Protected Member Functions inherited from BagOStuff | |
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 | |
bool | $asyncWrites = false |
Use async secondary writes. More... | |
BagOStuff[] | $caches |
Protected Attributes inherited from BagOStuff | |
callback null | $asyncHandler |
string | $keyspace = 'local' |
integer | $lastError = self::ERR_NONE |
array[] | $locks = [] |
Lock tracking. More... | |
LoggerInterface | $logger |
A cache class that replicates all writes to multiple child caches.
Reads are implemented by reading from the caches in the order they are given in the configuration until a cache gives a positive result.
Definition at line 31 of file MultiWriteBagOStuff.php.
MultiWriteBagOStuff::__construct | ( | $params | ) |
$params include:
array | $params |
InvalidArgumentException |
Definition at line 62 of file MultiWriteBagOStuff.php.
References $params, as, and ObjectFactory\getObjectFromSpec().
MultiWriteBagOStuff::add | ( | $key, | |
$value, | |||
$exptime = 0 |
|||
) |
Definition at line 140 of file MultiWriteBagOStuff.php.
MultiWriteBagOStuff::clearLastError | ( | ) |
Definition at line 166 of file MultiWriteBagOStuff.php.
MultiWriteBagOStuff::decr | ( | $key, | |
$value = 1 |
|||
) |
Definition at line 148 of file MultiWriteBagOStuff.php.
MultiWriteBagOStuff::delete | ( | $key | ) |
Definition at line 136 of file MultiWriteBagOStuff.php.
References doWrite().
MultiWriteBagOStuff::deleteObjectsExpiringBefore | ( | $date, | |
$progressCallback = false |
|||
) |
Delete objects expiring before a certain date.
Succeed if any of the child caches succeed.
string | $date | |
bool | callable | $progressCallback |
Definition at line 218 of file MultiWriteBagOStuff.php.
|
protected |
|
protected |
Apply a write method to the first $count backing caches.
integer | $count | |
bool | $asyncWrites | |
string | $method | |
mixed | ... |
Definition at line 179 of file MultiWriteBagOStuff.php.
References $args, $asyncWrites, $cache, $count, BagOStuff\$logger, $ret, as, and use.
Referenced by add(), decr(), delete(), doGet(), incr(), and set().
MultiWriteBagOStuff::getLastError | ( | ) |
Definition at line 162 of file MultiWriteBagOStuff.php.
MultiWriteBagOStuff::incr | ( | $key, | |
$value = 1 |
|||
) |
Definition at line 144 of file MultiWriteBagOStuff.php.
MultiWriteBagOStuff::lock | ( | $key, | |
$timeout = 6 , |
|||
$expiry = 6 , |
|||
$rclass = '' |
|||
) |
Definition at line 152 of file MultiWriteBagOStuff.php.
MultiWriteBagOStuff::set | ( | $key, | |
$value, | |||
$exptime = 0 , |
|||
$flags = 0 |
|||
) |
Definition at line 128 of file MultiWriteBagOStuff.php.
References $asyncWrites, $flags, $value, and doWrite().
MultiWriteBagOStuff::setDebug | ( | $debug | ) |
Definition at line 94 of file MultiWriteBagOStuff.php.
MultiWriteBagOStuff::unlock | ( | $key | ) |
Definition at line 157 of file MultiWriteBagOStuff.php.
|
protected |
Use async secondary writes.
Definition at line 35 of file MultiWriteBagOStuff.php.
|
protected |
Definition at line 33 of file MultiWriteBagOStuff.php.
const MultiWriteBagOStuff::ALL = INF |
Idiom for "write to all backends".
Definition at line 38 of file MultiWriteBagOStuff.php.
const MultiWriteBagOStuff::UPGRADE_TTL = 3600 |
Definition at line 40 of file MultiWriteBagOStuff.php.