Kill a ping queue item if we get an error on loading up the notice's poster's profile, rather than letting the item be retried over and over as if it were a transitory error.
This shouldn't generally happen as it's an indicator of database inconsistency, but it's a condition we know happens.
This commit is contained in:
parent
9ea7cafd27
commit
fb0c3f4f99
@ -27,7 +27,14 @@ function ping_broadcast_notice($notice) {
|
||||
|
||||
# Array of servers, URL => type
|
||||
$notify = common_config('ping', 'notify');
|
||||
$profile = $notice->getProfile();
|
||||
try {
|
||||
$profile = $notice->getProfile();
|
||||
} catch (Exception $e) {
|
||||
// @todo: distinguish the 'broken notice/profile' case from more general
|
||||
// transitory errors.
|
||||
common_log(LOG_ERR, "Exception getting notice profile: " . $e->getMessage());
|
||||
return true;
|
||||
}
|
||||
$tags = ping_notice_tags($notice);
|
||||
|
||||
foreach ($notify as $notify_url => $type) {
|
||||
|
Loading…
Reference in New Issue
Block a user