Merge pull request #2896 from rabuzarus/0311_fix_photo_albums
chache: check for valid serialized data + uncomment caching of contac…
This commit is contained in:
commit
46ba1a46f5
2 changed files with 30 additions and 10 deletions
|
@ -84,9 +84,14 @@ class Cache {
|
|||
$memcache = self::memcache();
|
||||
if (is_object($memcache)) {
|
||||
// We fetch with the hostname as key to avoid problems with other applications
|
||||
$value = $memcache->get(get_app()->get_hostname().":".$key);
|
||||
if (!is_bool($value)) {
|
||||
return unserialize($value);
|
||||
$cached = $memcache->get(get_app()->get_hostname().":".$key);
|
||||
$value = @unserialize($cached);
|
||||
|
||||
// Only return a value if the serialized value is valid.
|
||||
// We also check if the db entry is a serialized
|
||||
// boolean 'false' value (which we want to return).
|
||||
if ($cached === serialize(false) || $value !== false) {
|
||||
return $value;
|
||||
}
|
||||
|
||||
return null;
|
||||
|
@ -100,7 +105,15 @@ class Cache {
|
|||
);
|
||||
|
||||
if (dbm::is_result($r)) {
|
||||
return unserialize($r[0]['v']);
|
||||
$cached = $r[0]['v'];
|
||||
$value = @unserialize($cached);
|
||||
|
||||
// Only return a value if the serialized value is valid.
|
||||
// We also check if the db entry is a serialized
|
||||
// boolean 'false' value (which we want to return).
|
||||
if ($cached === serialize(false) || $value !== false) {
|
||||
return $value;
|
||||
}
|
||||
}
|
||||
|
||||
return null;
|
||||
|
|
|
@ -1079,10 +1079,12 @@ function suggestion_query($uid, $start = 0, $limit = 80) {
|
|||
return array();
|
||||
}
|
||||
|
||||
$list = Cache::get("suggestion_query:".$uid.":".$start.":".$limit);
|
||||
if (!is_null($list)) {
|
||||
return $list;
|
||||
}
|
||||
// Uncommented because the result of the queries are to big to store it in the cache.
|
||||
// We need to decide if we want to change the db column type or if we want to delete it.
|
||||
// $list = Cache::get("suggestion_query:".$uid.":".$start.":".$limit);
|
||||
// if (!is_null($list)) {
|
||||
// return $list;
|
||||
// }
|
||||
|
||||
$network = array(NETWORK_DFRN);
|
||||
|
||||
|
@ -1116,7 +1118,10 @@ function suggestion_query($uid, $start = 0, $limit = 80) {
|
|||
);
|
||||
|
||||
if (count($r) && count($r) >= ($limit -1)) {
|
||||
Cache::set("suggestion_query:".$uid.":".$start.":".$limit, $r, CACHE_FIVE_MINUTES);
|
||||
// Uncommented because the result of the queries are to big to store it in the cache.
|
||||
// We need to decide if we want to change the db column type or if we want to delete it.
|
||||
// Cache::set("suggestion_query:".$uid.":".$start.":".$limit, $r, CACHE_FIVE_MINUTES);
|
||||
|
||||
return $r;
|
||||
}
|
||||
|
||||
|
@ -1147,7 +1152,9 @@ function suggestion_query($uid, $start = 0, $limit = 80) {
|
|||
while (sizeof($list) > ($limit))
|
||||
array_pop($list);
|
||||
|
||||
Cache::set("suggestion_query:".$uid.":".$start.":".$limit, $list, CACHE_FIVE_MINUTES);
|
||||
// Uncommented because the result of the queries are to big to store it in the cache.
|
||||
// We need to decide if we want to change the db column type or if we want to delete it.
|
||||
// Cache::set("suggestion_query:".$uid.":".$start.":".$limit, $list, CACHE_FIVE_MINUTES);
|
||||
return $list;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue