From 4812f4c0f93915c20e4b3a9727fe0535a9d72721 Mon Sep 17 00:00:00 2001 From: Michael Date: Thu, 16 Mar 2017 07:30:59 +0000 Subject: [PATCH] Without only the worker queue we don't need the deliverq anymore. --- database.sql | 14 +------------- include/dbstructure.php | 12 ------------ include/delivery.php | 24 ------------------------ include/notifier.php | 31 ++----------------------------- include/queue.php | 8 -------- 5 files changed, 3 insertions(+), 86 deletions(-) diff --git a/database.sql b/database.sql index b133489e4e..c7ab893d72 100644 --- a/database.sql +++ b/database.sql @@ -1,5 +1,5 @@ -- ------------------------------------------ --- Friendica 3.5.1-rc (Asparagus) +-- Friendica 3.5.2-dev (Asparagus) -- DB_UPDATE_VERSION 1215 -- ------------------------------------------ @@ -204,18 +204,6 @@ CREATE TABLE IF NOT EXISTS `conv` ( INDEX `uid` (`uid`) ) DEFAULT CHARSET=utf8mb4; --- --- TABLE deliverq --- -CREATE TABLE IF NOT EXISTS `deliverq` ( - `id` int(10) unsigned NOT NULL auto_increment, - `cmd` varbinary(32) NOT NULL DEFAULT '', - `item` int(11) NOT NULL DEFAULT 0, - `contact` int(11) NOT NULL DEFAULT 0, - PRIMARY KEY(`id`), - UNIQUE INDEX `cmd_item_contact` (`cmd`,`item`,`contact`) -) DEFAULT CHARSET=utf8mb4; - -- -- TABLE event -- diff --git a/include/dbstructure.php b/include/dbstructure.php index 4ad54e6ba2..c1ed4bb986 100644 --- a/include/dbstructure.php +++ b/include/dbstructure.php @@ -712,18 +712,6 @@ function db_definition($charset) { "uid" => array("uid"), ) ); - $database["deliverq"] = array( - "fields" => array( - "id" => array("type" => "int(10) unsigned", "not null" => "1", "extra" => "auto_increment", "primary" => "1"), - "cmd" => array("type" => "varbinary(32)", "not null" => "1", "default" => ""), - "item" => array("type" => "int(11)", "not null" => "1", "default" => "0"), - "contact" => array("type" => "int(11)", "not null" => "1", "default" => "0"), - ), - "indexes" => array( - "PRIMARY" => array("id"), - "cmd_item_contact" => array("UNIQUE", "cmd", "item", "contact"), - ) - ); $database["event"] = array( "fields" => array( "id" => array("type" => "int(11)", "not null" => "1", "extra" => "auto_increment", "primary" => "1"), diff --git a/include/delivery.php b/include/delivery.php index c48e606f48..faa1cad674 100644 --- a/include/delivery.php +++ b/include/delivery.php @@ -30,30 +30,6 @@ function delivery_run(&$argv, &$argc){ $contact_id = intval($argv[$x]); - /// @todo When switching completely to the worker we won't need this anymore - // Some other process may have delivered this item already. - - $r = q("SELECT * FROM `deliverq` WHERE `cmd` = '%s' AND `item` = %d AND `contact` = %d LIMIT 1", - dbesc($cmd), - dbesc($item_id), - dbesc($contact_id) - ); - if (!dbm::is_result($r)) { - continue; - } - - if ($a->maxload_reached()) { - return; - } - - // It's ours to deliver. Remove it from the queue. - - q("DELETE FROM `deliverq` WHERE `cmd` = '%s' AND `item` = %d AND `contact` = %d", - dbesc($cmd), - dbesc($item_id), - dbesc($contact_id) - ); - if (!$item_id || !$contact_id) { continue; } diff --git a/include/notifier.php b/include/notifier.php index ada871e927..e3d7d10d6b 100644 --- a/include/notifier.php +++ b/include/notifier.php @@ -471,7 +471,8 @@ function notifier_run(&$argv, &$argc){ if ($relocate) { $r = $recipients_relocate; } else { - $r = q("SELECT * FROM `contact` WHERE `id` IN (%s) AND NOT `blocked` AND NOT `pending` AND NOT `archive`".$sql_extra, + $r = q("SELECT `id`, `url`, `network`, `self` FROM `contact` + WHERE `id` IN (%s) AND NOT `blocked` AND NOT `pending` AND NOT `archive`".$sql_extra, dbesc($recip_str) ); } @@ -480,28 +481,12 @@ function notifier_run(&$argv, &$argc){ if (dbm::is_result($r)) { foreach ($r as $contact) { - if (!$contact['self']) { - if (($contact['network'] === NETWORK_DIASPORA) && ($public_message)) { - continue; - } - q("INSERT INTO `deliverq` (`cmd`,`item`,`contact`) VALUES ('%s', %d, %d)", - dbesc($cmd), - intval($item_id), - intval($contact['id']) - ); - } - } - - for ($x = 0; $x < count($r); $x ++) { - $contact = $r[$x]; - if ($contact['self']) { continue; } logger("Deliver ".$target_item["guid"]." to ".$contact['url']." via network ".$contact['network'], LOGGER_DEBUG); proc_run(PRIORITY_HIGH,'include/delivery.php', $cmd, $item_id, $contact['id']); - continue; } } @@ -553,18 +538,6 @@ function notifier_run(&$argv, &$argc){ if (dbm::is_result($r)) { logger('pubdeliver '.$target_item["guid"].': '.print_r($r,true), LOGGER_DEBUG); - // throw everything into the queue in case we get killed - - foreach ($r as $rr) { - if ((! $mail) && (! $fsuggest) && (! $followup)) { - q("INSERT INTO `deliverq` (`cmd`,`item`,`contact`) VALUES ('%s', %d, %d) - ON DUPLICATE KEY UPDATE `cmd` = '%s', `item` = %d, `contact` = %d", - dbesc($cmd), intval($item_id), intval($rr['id']), - dbesc($cmd), intval($item_id), intval($rr['id']) - ); - } - } - foreach ($r as $rr) { // except for Diaspora batch jobs diff --git a/include/queue.php b/include/queue.php index 67119aea44..c0c73cda61 100644 --- a/include/queue.php +++ b/include/queue.php @@ -29,14 +29,6 @@ function queue_run(&$argv, &$argc){ // Handling the pubsubhubbub requests proc_run(PRIORITY_HIGH,'include/pubsubpublish.php'); - $r = q("select * from deliverq where 1"); - if ($r) { - foreach ($r as $rr) { - logger('queue: deliverq'); - proc_run(PRIORITY_HIGH,'include/delivery.php', $rr['cmd'], $rr['item'], $rr['contact']); - } - } - $r = q("SELECT `queue`.*, `contact`.`name`, `contact`.`uid` FROM `queue` INNER JOIN `contact` ON `queue`.`cid` = `contact`.`id` WHERE `queue`.`created` < UTC_TIMESTAMP() - INTERVAL 3 DAY"); -- 2.39.5