if all faves in cache, skip

darcs-hash:20081122192857-84dde-c8fcddd794a8339a53e6a0224bd07f6f86ef3896.gz
This commit is contained in:
Evan Prodromou 2008-11-22 14:28:57 -05:00
parent 24ad0b3c13
commit 45f5ef8c87
1 changed files with 9 additions and 1 deletions

View File

@ -281,6 +281,7 @@ class User extends Memcached_DataObject
# This is the stream of favorite notices, in rev chron
# order. This forces it into cache.
$faves = $this->favoriteNotices(0, NOTICE_CACHE_WINDOW);
$cnt = 0;
while ($faves->fetch()) {
if ($faves->id < $notice->id) {
@ -290,8 +291,15 @@ class User extends Memcached_DataObject
# If it matches a cached notice, then it's a fave
return true;
}
$cnt++;
}
# If it's past the end of the cache window,
# If we're not past the end of the cache window,
# then the cache has all available faves, so this one
# is not a fave.
if ($cnt < NOTICE_CACHE_WINDOW) {
return false;
}
# Otherwise, cache doesn't have all faves;
# fall through to the default
}