From e0f989f6a84838c5ff8b7d67ca1d74deacd05f36 Mon Sep 17 00:00:00 2001 From: stoletniy Date: Thu, 1 Mar 2018 21:17:40 +0300 Subject: [PATCH] Revert "Migrate subscribers for all tasks types [MAILPOET-903]" This reverts commit f1f69c983525bff00f5b6c21ff2cff425ce10320. --- lib/Cron/Workers/SendingQueue/Migration.php | 2 +- tests/unit/Cron/Workers/SendingQueue/MigrationTest.php | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/Cron/Workers/SendingQueue/Migration.php b/lib/Cron/Workers/SendingQueue/Migration.php index 7a7c85ad55..661fa46f08 100644 --- a/lib/Cron/Workers/SendingQueue/Migration.php +++ b/lib/Cron/Workers/SendingQueue/Migration.php @@ -96,7 +96,7 @@ class Migration extends SimpleWorker { global $wpdb; $query = sprintf( 'SELECT queues.`task_id` FROM %1$s queues INNER JOIN %2$s tasks ON queues.`task_id` = tasks.`id` ' . - 'WHERE tasks.`type` = "sending" ' . + 'WHERE tasks.`type` = "sending" AND (tasks.`status` IS NULL OR tasks.`status` = "paused") ' . 'AND queues.`subscribers` != "" AND queues.`subscribers` != "N;"' . 'AND queues.`count_total` > (SELECT COUNT(*) FROM %3$s subs WHERE subs.`task_id` = queues.`task_id`)', MP_SENDING_QUEUES_TABLE, diff --git a/tests/unit/Cron/Workers/SendingQueue/MigrationTest.php b/tests/unit/Cron/Workers/SendingQueue/MigrationTest.php index d450c696a2..7b306a127c 100644 --- a/tests/unit/Cron/Workers/SendingQueue/MigrationTest.php +++ b/tests/unit/Cron/Workers/SendingQueue/MigrationTest.php @@ -31,6 +31,8 @@ class MigrationTest extends \MailPoetTest { // subscribers should be migrated $this->queue_running = $this->createSendingQueue(); $this->queue_paused = $this->createSendingQueue(SendingQueue::STATUS_PAUSED); + + // subscribers should not be migrated $this->queue_completed = $this->createSendingQueue(SendingQueue::STATUS_COMPLETED); $this->queue_scheduled = $this->createSendingQueue(SendingQueue::STATUS_SCHEDULED); @@ -83,7 +85,7 @@ class MigrationTest extends \MailPoetTest { expect($this->worker->getUnmigratedQueues()->count())->equals(0); expect(ScheduledTask::where('type', SendingTask::TASK_TYPE)->findMany())->count(4); - expect(ScheduledTaskSubscriber::whereGt('task_id', 0)->count())->equals(8); // 2 for task of each status + expect(ScheduledTaskSubscriber::whereGt('task_id', 0)->count())->equals(4); // 2 for running, 2 for paused $queue = SendingQueue::findOne($this->queue_running->id); $task = ScheduledTask::findOne($queue->task_id);