From 45f5ef8c8741fe874c5353df4f9f7ff37f6feeda Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Sat, 22 Nov 2008 14:28:57 -0500 Subject: [PATCH] if all faves in cache, skip darcs-hash:20081122192857-84dde-c8fcddd794a8339a53e6a0224bd07f6f86ef3896.gz --- classes/User.php | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/classes/User.php b/classes/User.php index 75dd733151..0c0874091d 100644 --- a/classes/User.php +++ b/classes/User.php @@ -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 }