*
* @ingroup Cache
*/
-abstract class MemcachedBagOStuff extends BagOStuff {
+abstract class MemcachedBagOStuff extends MediumSpecificBagOStuff {
function __construct( array $params ) {
parent::__construct( $params );
$this->segmentationSize = $params['maxPreferedKeySize'] ?? 917504; // < 1MiB
}
- /**
- * Fill in some defaults for missing keys in $params.
- *
- * @param array $params
- * @return array
- */
- protected function applyDefaultParams( $params ) {
- return $params + [
- 'compress_threshold' => 1500,
- 'connect_timeout' => 0.5,
- 'debug' => false
- ];
- }
-
/**
* Construct a cache key.
*
* 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)
- * @param int $expiry
+ * @param int $exptime
* @return int
*/
- function fixExpiry( $expiry ) {
- if ( $expiry > 2592000 && $expiry < 1000000000 ) {
- $expiry = 2592000;
- }
- return (int)$expiry;
+ protected function fixExpiry( $exptime ) {
+ return ( $exptime > self::TTL_MONTH && !$this->isRelativeExpiration( $exptime ) )
+ ? self::TTL_MONTH
+ : (int)$exptime;
}
}