Merge pull request #9638 from annando/bad-priority
Check for bad worker priorities
This commit is contained in:
commit
9c0342b907
5 changed files with 15 additions and 6 deletions
1
boot.php
1
boot.php
|
@ -201,6 +201,7 @@ define('PRIORITY_HIGH', 20);
|
|||
define('PRIORITY_MEDIUM', 30);
|
||||
define('PRIORITY_LOW', 40);
|
||||
define('PRIORITY_NEGLIGIBLE', 50);
|
||||
define('PRIORITIES', [PRIORITY_CRITICAL, PRIORITY_HIGH, PRIORITY_MEDIUM, PRIORITY_LOW, PRIORITY_NEGLIGIBLE]);
|
||||
/* @}*/
|
||||
|
||||
/**
|
||||
|
|
|
@ -421,6 +421,11 @@ class Worker
|
|||
// For this reason the variables have to be initialized.
|
||||
DI::profiler()->reset();
|
||||
|
||||
if (!in_array($queue['priority'], PRIORITIES)) {
|
||||
Logger::warning('Invalid priority', ['queue' => $queue, 'callstack' => System::callstack(20)]);
|
||||
$queue['priority'] = PRIORITY_MEDIUM;
|
||||
}
|
||||
|
||||
$a->queue = $queue;
|
||||
|
||||
$up_duration = microtime(true) - self::$up_start;
|
||||
|
@ -1264,6 +1269,11 @@ class Worker
|
|||
$found = DBA::exists('workerqueue', ['command' => $command, 'parameter' => $parameters, 'done' => false]);
|
||||
$added = false;
|
||||
|
||||
if (!in_array($priority, PRIORITIES)) {
|
||||
Logger::warning('Invalid priority', ['priority' => $priority, 'command' => $command, 'callstack' => System::callstack(20)]);
|
||||
$priority = PRIORITY_MEDIUM;
|
||||
}
|
||||
|
||||
// Quit if there was a database error - a precaution for the update process to 3.5.3
|
||||
if (DBA::errorNo() != 0) {
|
||||
return false;
|
||||
|
|
|
@ -1568,7 +1568,7 @@ class Item
|
|||
$item['network'] = Protocol::DFRN;
|
||||
$item['protocol'] = Conversation::PARCEL_DIRECT;
|
||||
|
||||
if (is_int($notify)) {
|
||||
if (in_array($notify, PRIORITIES)) {
|
||||
$priority = $notify;
|
||||
}
|
||||
} else {
|
||||
|
@ -2912,7 +2912,7 @@ class Item
|
|||
$_SESSION["authenticated"] = true;
|
||||
$_SESSION["uid"] = $contact['uid'];
|
||||
|
||||
return $result;
|
||||
return (bool)$result;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -623,7 +623,7 @@ class Feed
|
|||
'taglist' => $taglist, 'attachments' => $attachments];
|
||||
}
|
||||
} else {
|
||||
Logger::info('Post already crated or exists in the delayed posts queue', ['uid' => $item['uid'], 'uri' => $item["uri"]]);
|
||||
Logger::info('Post already created or exists in the delayed posts queue', ['uid' => $item['uid'], 'uri' => $item["uri"]]);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -22,9 +22,7 @@
|
|||
namespace Friendica\Worker;
|
||||
|
||||
use Friendica\Core\Logger;
|
||||
use Friendica\Model\Item;
|
||||
use Friendica\Model\Post;
|
||||
use Friendica\Model\Tag;
|
||||
|
||||
class DelayedPublish
|
||||
{
|
||||
|
@ -40,6 +38,6 @@ class DelayedPublish
|
|||
public static function execute(array $item, int $notify = 0, array $taglist = [], array $attachments = [])
|
||||
{
|
||||
$id = Post\Delayed::publish($item, $notify, $taglist, $attachments);
|
||||
Logger::notice('Post published', ['id' => $id, 'uid' => $item['uid'], 'cid' => $item['contact-id']]);
|
||||
Logger::notice('Post published', ['id' => $id, 'uid' => $item['uid'], 'cid' => $item['contact-id'], 'notify' => $notify]);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue