Inherit the creation date
This commit is contained in:
parent
f1119b4198
commit
4f70682f7a
3 changed files with 26 additions and 6 deletions
6
boot.php
6
boot.php
|
@ -1069,6 +1069,7 @@ function proc_run($cmd) {
|
|||
|
||||
$priority = PRIORITY_MEDIUM;
|
||||
$dont_fork = get_config("system", "worker_dont_fork");
|
||||
$created = datetime_convert();
|
||||
|
||||
if (is_int($run_parameter)) {
|
||||
$priority = $run_parameter;
|
||||
|
@ -1076,6 +1077,9 @@ function proc_run($cmd) {
|
|||
if (isset($run_parameter['priority'])) {
|
||||
$priority = $run_parameter['priority'];
|
||||
}
|
||||
if (isset($run_parameter['created'])) {
|
||||
$created = $run_parameter['created'];
|
||||
}
|
||||
if (isset($run_parameter['dont_fork'])) {
|
||||
$dont_fork = $run_parameter['dont_fork'];
|
||||
}
|
||||
|
@ -1088,7 +1092,7 @@ function proc_run($cmd) {
|
|||
$found = dba::select('workerqueue', array('id'), array('parameter' => $parameters), array('limit' => 1));
|
||||
|
||||
if (!dbm::is_result($found)) {
|
||||
dba::insert('workerqueue', array('parameter' => $parameters, 'created' => datetime_convert(), 'priority' => $priority));
|
||||
dba::insert('workerqueue', array('parameter' => $parameters, 'created' => $created, 'priority' => $priority));
|
||||
}
|
||||
|
||||
// Should we quit and wait for the poller to be called as a cronjob?
|
||||
|
|
|
@ -56,13 +56,15 @@ function notifier_run(&$argv, &$argc){
|
|||
}
|
||||
|
||||
// Inherit the priority
|
||||
$queue = dba::select('workerqueue', array('priority'), array('pid' => getmypid()), array('limit' => 1));
|
||||
$queue = dba::select('workerqueue', array('priority', 'created'), array('pid' => getmypid()), array('limit' => 1));
|
||||
if (dbm::is_result($queue)) {
|
||||
$priority = (int)$queue['priority'];
|
||||
$process_created = $queue['created'];
|
||||
logger('inherited priority: '.$priority);
|
||||
} else {
|
||||
// Normally this shouldn't happen.
|
||||
$priority = PRIORITY_HIGH;
|
||||
$process_created = datetime_convert();
|
||||
logger('no inherited priority! Something is wrong.');
|
||||
}
|
||||
|
||||
|
@ -498,7 +500,8 @@ function notifier_run(&$argv, &$argc){
|
|||
}
|
||||
logger("Deliver ".$target_item["guid"]." to ".$contact['url']." via network ".$contact['network'], LOGGER_DEBUG);
|
||||
|
||||
proc_run(array('priority' => $priority, 'dont_fork' => true), 'include/delivery.php', $cmd, $item_id, $contact['id']);
|
||||
proc_run(array('priority' => $priority, 'created' => $process_created, 'dont_fork' => true),
|
||||
'include/delivery.php', $cmd, $item_id, $contact['id']);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -563,7 +566,8 @@ function notifier_run(&$argv, &$argc){
|
|||
|
||||
if ((! $mail) && (! $fsuggest) && (! $followup)) {
|
||||
logger('notifier: delivery agent: '.$rr['name'].' '.$rr['id'].' '.$rr['network'].' '.$target_item["guid"]);
|
||||
proc_run(array('priority' => $priority, 'dont_fork' => true), 'include/delivery.php', $cmd, $item_id, $rr['id']);
|
||||
proc_run(array('priority' => $priority, 'created' => $process_created, 'dont_fork' => true),
|
||||
'include/delivery.php', $cmd, $item_id, $rr['id']);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -603,7 +607,8 @@ function notifier_run(&$argv, &$argc){
|
|||
}
|
||||
|
||||
// Handling the pubsubhubbub requests
|
||||
proc_run(array('priority' => PRIORITY_HIGH, 'dont_fork' => true), 'include/pubsubpublish.php');
|
||||
proc_run(array('priority' => PRIORITY_HIGH, 'created' => $process_created, 'dont_fork' => true),
|
||||
'include/pubsubpublish.php');
|
||||
}
|
||||
|
||||
logger('notifier: calling hooks', LOGGER_DEBUG);
|
||||
|
|
|
@ -11,13 +11,24 @@ function pubsubpublish_run(&$argv, &$argc){
|
|||
if ($argc > 1) {
|
||||
$pubsubpublish_id = intval($argv[1]);
|
||||
} else {
|
||||
// Inherit the creation time
|
||||
$queue = dba::select('workerqueue', array('created'), array('pid' => getmypid()), array('limit' => 1));
|
||||
if (dbm::is_result($queue)) {
|
||||
$process_created = $queue['created'];
|
||||
} else {
|
||||
// Normally this shouldn't happen.
|
||||
$process_created = datetime_convert();
|
||||
logger('no inherited priority! Something is wrong.');
|
||||
}
|
||||
|
||||
// We'll push to each subscriber that has push > 0,
|
||||
// i.e. there has been an update (set in notifier.php).
|
||||
$r = q("SELECT `id`, `callback_url` FROM `push_subscriber` WHERE `push` > 0");
|
||||
|
||||
foreach ($r as $rr) {
|
||||
logger("Publish feed to ".$rr["callback_url"], LOGGER_DEBUG);
|
||||
proc_run(array('priority' => PRIORITY_HIGH, 'dont_fork' => true), 'include/pubsubpublish.php', $rr["id"]);
|
||||
proc_run(array('priority' => PRIORITY_HIGH, 'created' => $process_created, 'dont_fork' => true),
|
||||
'include/pubsubpublish.php', $rr["id"]);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue