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