on rare occasions posts do not get a parent. The only thing which could cause it is if we can't find our new post. So we'll check for this and try one more time before failing.
This commit is contained in:
parent
dd4d5707b0
commit
656d861b3e
|
@ -725,8 +725,10 @@ function fb_consume_stream($uid,$j,$wall = false) {
|
|||
|
||||
// don't store post if we don't have a contact
|
||||
|
||||
if(! x($datarray,'contact-id'))
|
||||
if(! x($datarray,'contact-id')) {
|
||||
logger('no contact: post ignored');
|
||||
continue;
|
||||
}
|
||||
|
||||
$datarray['verb'] = ACTIVITY_POST;
|
||||
if($wall) {
|
||||
|
@ -759,8 +761,10 @@ function fb_consume_stream($uid,$j,$wall = false) {
|
|||
intval($top_item),
|
||||
intval($uid)
|
||||
);
|
||||
if(count($r))
|
||||
if(count($r)) {
|
||||
$orig_post = $r[0];
|
||||
logger('fb: new top level item posted');
|
||||
}
|
||||
}
|
||||
|
||||
if(isset($entry->likes) && isset($entry->likes->data))
|
||||
|
|
|
@ -742,6 +742,15 @@ function item_store($arr,$force_parent = false) {
|
|||
$arr['uri'], // already dbesc'd
|
||||
intval($arr['uid'])
|
||||
);
|
||||
if(! count($r)) {
|
||||
// This is not good, but perhaps we encountered a rare race/cache condition, so back off and try again.
|
||||
sleep(3);
|
||||
$r = q("SELECT `id` FROM `item` WHERE `uri` = '%s' AND `uid` = %d LIMIT 1",
|
||||
$arr['uri'], // already dbesc'd
|
||||
intval($arr['uid'])
|
||||
);
|
||||
}
|
||||
|
||||
if(count($r)) {
|
||||
$current_post = $r[0]['id'];
|
||||
logger('item_store: created item ' . $current_post);
|
||||
|
|
Loading…
Reference in a new issue