thomascube
2011-09-26 feb3783de729a5ac8ca75370ca1e359fb4116160
Add method to remove outdated cache entries from sql DB

1 files modified
20 ■■■■■ changed files
program/include/rcube_cache.php 20 ●●●●● patch | view | raw | blame | history
program/include/rcube_cache.php
@@ -28,7 +28,7 @@
 * @package    Cache
 * @author     Thomas Bruederli <roundcube@gmail.com>
 * @author     Aleksander Machniak <alec@alec.pl>
 * @version    1.0
 * @version    1.1
 */
class rcube_cache
{
@@ -188,6 +188,24 @@
    /**
     * Remove cache records older than ttl
     */
    function expunge()
    {
        if ($this->type == 'db' && $this->db) {
            $this->db->query(
                "DELETE FROM ".get_table_name('cache').
                " WHERE user_id = ?".
                " AND cache_key LIKE ?".
                " AND " . $this->db->unixtimestamp('created')." < ?",
                $this->userid,
                $this->prefix.'.%',
                time() - $this->ttl);
        }
    }
    /**
     * Writes the cache back to the DB.
     */
    function close()