// When serving cached pages, the overhead of using ::select() was found
// to add around 30% overhead to the request. Since $this->bin is a
...
...
@@ -64,10 +60,10 @@ public function getMultiple(&$cids) {
// is used here only due to the performance overhead we would incur
// otherwise. When serving an uncached page, the overhead of using
// ::select() is a much smaller proportion of the request.
$result=Database::getConnection()->query('SELECT cid, data, created, expire, serialized, tags, checksum FROM {'.Database::getConnection()->escapeTable($this->bin).'} WHERE cid IN (:cids)',array(':cids'=>$cids));
$result=Database::getConnection()->query('SELECT cid, data, created, expire, serialized, tags, checksum_invalidations, checksum_deletions FROM {'.Database::getConnection()->escapeTable($this->bin).'} WHERE cid IN (:cids)',array(':cids'=>$cids));
$cache=array();
foreach($resultas$item){
$item=$this->prepareItem($item);
$item=$this->prepareItem($item,$allow_invalid);
if($item){
$cache[$item->cid]=$item;
}
...
...
@@ -90,22 +86,37 @@ public function getMultiple(&$cids) {
*
* @param stdClass $cache
* An item loaded from cache_get() or cache_get_multiple().
* @param bool $allow_invalid
* If FALSE, the method returns FALSE if the cache item is not valid.
*
* @return mixed
* The item with data unserialized as appropriate or FALSE if there is no