diff --git a/boot.php b/boot.php
index 15341c0fe..2ad057d4c 100644
--- a/boot.php
+++ b/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?
diff --git a/include/notifier.php b/include/notifier.php
index a08057f67..a5f378a55 100644
--- a/include/notifier.php
+++ b/include/notifier.php
@@ -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);
diff --git a/include/pubsubpublish.php b/include/pubsubpublish.php
index 1112969f2..7c70059f9 100644
--- a/include/pubsubpublish.php
+++ b/include/pubsubpublish.php
@@ -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"]);
 		}
 	}