Fix to make blowing of replies stream cache more consistent when receiving replies. (Was being done at mail notify time instead of at save time for local replies; now moved to reply save time internally so it can't get forgotten)
This commit is contained in:
parent
fd9d520aeb
commit
7bdea95ccb
@ -985,8 +985,6 @@ class Notice extends Memcached_DataObject
|
|||||||
$reply->profile_id = $user->id;
|
$reply->profile_id = $user->id;
|
||||||
|
|
||||||
$id = $reply->insert();
|
$id = $reply->insert();
|
||||||
|
|
||||||
self::blow('reply:stream:%d', $user->id);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1052,6 +1050,7 @@ class Notice extends Memcached_DataObject
|
|||||||
throw new ServerException("Couldn't save reply for {$this->id}, {$mentioned->id}");
|
throw new ServerException("Couldn't save reply for {$this->id}, {$mentioned->id}");
|
||||||
} else {
|
} else {
|
||||||
$replied[$mentioned->id] = 1;
|
$replied[$mentioned->id] = 1;
|
||||||
|
self::blow('reply:stream:%d', $mentioned->id);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1107,7 +1106,6 @@ class Notice extends Memcached_DataObject
|
|||||||
foreach ($recipientIds as $recipientId) {
|
foreach ($recipientIds as $recipientId) {
|
||||||
$user = User::staticGet('id', $recipientId);
|
$user = User::staticGet('id', $recipientId);
|
||||||
if (!empty($user)) {
|
if (!empty($user)) {
|
||||||
self::blow('reply:stream:%d', $recipientId);
|
|
||||||
mail_notify_attn($user, $this);
|
mail_notify_attn($user, $this);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -22,6 +22,20 @@ class Reply extends Memcached_DataObject
|
|||||||
/* the code above is auto generated do not remove the tag below */
|
/* the code above is auto generated do not remove the tag below */
|
||||||
###END_AUTOCODE
|
###END_AUTOCODE
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Wrapper for record insertion to update related caches
|
||||||
|
*/
|
||||||
|
function insert()
|
||||||
|
{
|
||||||
|
$result = parent::insert();
|
||||||
|
|
||||||
|
if ($result) {
|
||||||
|
self::blow('reply:stream:%d', $this->profile_id);
|
||||||
|
}
|
||||||
|
|
||||||
|
return $result;
|
||||||
|
}
|
||||||
|
|
||||||
function stream($user_id, $offset=0, $limit=NOTICES_PER_PAGE, $since_id=0, $max_id=0)
|
function stream($user_id, $offset=0, $limit=NOTICES_PER_PAGE, $since_id=0, $max_id=0)
|
||||||
{
|
{
|
||||||
$ids = Notice::stream(array('Reply', '_streamDirect'),
|
$ids = Notice::stream(array('Reply', '_streamDirect'),
|
||||||
|
Loading…
x
Reference in New Issue
Block a user