forked from GNUsocial/gnu-social
don't insert the same notice twice into an inbox
This commit is contained in:
parent
d3f995846b
commit
650074c648
@ -114,6 +114,16 @@ class Inbox extends Memcached_DataObject
|
||||
return false;
|
||||
}
|
||||
|
||||
$ids = unpack('N*', $inbox->notice_ids);
|
||||
|
||||
// bulk inserts sometimes fail and get restarted.
|
||||
// Skip if this one has been inserted before.
|
||||
|
||||
if (in_array($notice_id, $ids)) {
|
||||
// effectively successful
|
||||
return true;
|
||||
}
|
||||
|
||||
$result = $inbox->query(sprintf('UPDATE inbox '.
|
||||
'set notice_ids = concat(cast(0x%08x as binary(4)), '.
|
||||
'substr(notice_ids, 1, %d)) '.
|
||||
|
Loading…
Reference in New Issue
Block a user