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
2 changed files with 15 additions and 2 deletions
|
@ -725,8 +725,10 @@ function fb_consume_stream($uid,$j,$wall = false) {
|
||||||
|
|
||||||
// don't store post if we don't have a contact
|
// 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;
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
$datarray['verb'] = ACTIVITY_POST;
|
$datarray['verb'] = ACTIVITY_POST;
|
||||||
if($wall) {
|
if($wall) {
|
||||||
|
@ -759,8 +761,10 @@ function fb_consume_stream($uid,$j,$wall = false) {
|
||||||
intval($top_item),
|
intval($top_item),
|
||||||
intval($uid)
|
intval($uid)
|
||||||
);
|
);
|
||||||
if(count($r))
|
if(count($r)) {
|
||||||
$orig_post = $r[0];
|
$orig_post = $r[0];
|
||||||
|
logger('fb: new top level item posted');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(isset($entry->likes) && isset($entry->likes->data))
|
if(isset($entry->likes) && isset($entry->likes->data))
|
||||||
|
|
|
@ -742,6 +742,15 @@ function item_store($arr,$force_parent = false) {
|
||||||
$arr['uri'], // already dbesc'd
|
$arr['uri'], // already dbesc'd
|
||||||
intval($arr['uid'])
|
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)) {
|
if(count($r)) {
|
||||||
$current_post = $r[0]['id'];
|
$current_post = $r[0]['id'];
|
||||||
logger('item_store: created item ' . $current_post);
|
logger('item_store: created item ' . $current_post);
|
||||||
|
|
Loading…
Reference in a new issue