forked from GNUsocial/gnu-social
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;
|
||||
|
||||
$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}");
|
||||
} else {
|
||||
$replied[$mentioned->id] = 1;
|
||||
self::blow('reply:stream:%d', $mentioned->id);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1107,7 +1106,6 @@ class Notice extends Memcached_DataObject
|
||||
foreach ($recipientIds as $recipientId) {
|
||||
$user = User::staticGet('id', $recipientId);
|
||||
if (!empty($user)) {
|
||||
self::blow('reply:stream:%d', $recipientId);
|
||||
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 */
|
||||
###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)
|
||||
{
|
||||
$ids = Notice::stream(array('Reply', '_streamDirect'),
|
||||
|
Loading…
Reference in New Issue
Block a user