diff options
author | Andrew Manning <tamanning@zoho.com> | 2017-01-30 06:03:53 -0500 |
---|---|---|
committer | Andrew Manning <tamanning@zoho.com> | 2017-01-30 06:03:53 -0500 |
commit | fab103524ab2b171d36c6f3830da682b0768627f (patch) | |
tree | 9deadb7596933054a4ae1f24dbbb04f71a8c8e87 /include/queue_fn.php | |
parent | b58d56826bf9fd74a70a25848113c80baeeb8dfc (diff) | |
parent | 15be542e56543b14d03ca0c90faecc620b9b6a28 (diff) | |
download | volse-hubzilla-fab103524ab2b171d36c6f3830da682b0768627f.tar.gz volse-hubzilla-fab103524ab2b171d36c6f3830da682b0768627f.tar.bz2 volse-hubzilla-fab103524ab2b171d36c6f3830da682b0768627f.zip |
Merge branch 'dev' of https://github.com/redmatrix/hubzilla into dev
Diffstat (limited to 'include/queue_fn.php')
-rw-r--r-- | include/queue_fn.php | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/include/queue_fn.php b/include/queue_fn.php index 74dde5de2..ede6c8f11 100644 --- a/include/queue_fn.php +++ b/include/queue_fn.php @@ -8,6 +8,21 @@ function update_queue_item($id, $add_priority = 0) { if(! $x) return; + + $y = q("select min(outq_created) as earliest from outq where outq_posturl = '%s'", + dbesc($x[0]['outq_posturl']) + ); + + // look for the oldest queue entry with this destination URL. If it's older than a couple of days, + // the destination is considered to be down and only scheduled once an hour, regardless of the + // age of the current queue item. + + $might_be_down = false; + + if($y) + $might_be_down = ((datetime_convert('UTC','UTC',$y[0]['earliest']) < datetime_convert('UTC','UTC','now - 2 days')) ? true : false); + + // Set all other records for this destination way into the future. // The queue delivers by destination. We'll keep one queue item for // this destination (this one) with a shorter delivery. If we succeed @@ -23,7 +38,7 @@ function update_queue_item($id, $add_priority = 0) { $since = datetime_convert('UTC','UTC',$x[0]['outq_created']); - if($since < datetime_convert('UTC','UTC','now - 12 hour')) { + if(($might_be_down) || ($since < datetime_convert('UTC','UTC','now - 12 hour'))) { $next = datetime_convert('UTC','UTC','now + 1 hour'); } else { |