Permalink
Browse files

Removing time manipulation so its possible to create memcache entries…

… that do not expire. Updating documentation about the peculiarities of memcache. Refs #871
  • Loading branch information...
1 parent 0865679 commit 2a50c3a1fb4b91af1fd353c06c1966c5c72fe403 @markstory markstory committed Aug 16, 2010
Showing with 9 additions and 4 deletions.
  1. +9 −4 cake/libs/cache/memcache.php
@@ -20,7 +20,9 @@
*/
/**
- * Memcache storage engine for cache
+ * Memcache storage engine for cache. Memcache has some limitations in the amount of
+ * control you have over expire times far in the future. See MemcacheEngine::write() for
+ * more information.
*
* @package cake
* @subpackage cake.cake.libs.cache
@@ -95,17 +97,20 @@ function init($settings = array()) {
}
/**
- * Write data for key into cache
+ * Write data for key into cache. When using memcache as your cache engine
+ * remember that the Memcache pecl extension does not support cache expiry times greater
+ * than 30 days in the future. If you wish to create cache entries that do not expire, set the duration
+ * to `0` in your cache configuration.
*
* @param string $key Identifier for the data
* @param mixed $value Data to be cached
* @param integer $duration How long to cache the data, in seconds
* @return boolean True if the data was succesfully cached, false on failure
+ * @see http://php.net/manual/en/memcache.set.php
* @access public
*/
function write($key, &$value, $duration) {
- $expires = time() + $duration;
- return $this->__Memcache->set($key, $value, $this->settings['compress'], $expires);
+ return $this->__Memcache->set($key, $value, $this->settings['compress'], $duration);
}
/**

0 comments on commit 2a50c3a

Please sign in to comment.