queue: Restore prematurely-cut upgrade path.

Revert c8f034e9a "queue: Remove missedmessage_email_senders code."
As the comment in the code says, it ensures a smooth upgrade path
from 1.7.x; we can delete it in master after 1.8.0 is released.
The removal commit was merged early due to a communication failure.
This commit is contained in:
Greg Price 2018-02-28 11:15:53 -08:00
parent 49252c97d2
commit 4475950ddf
5 changed files with 25 additions and 1 deletions

View File

@ -46,6 +46,7 @@ class zulip::base {
'error_reports',
'feedback_messages',
'invites',
'missedmessage_email_senders',
'email_senders',
'missedmessage_emails',
'missedmessage_mobile_notifications',

View File

@ -555,6 +555,15 @@ define service {
contact_groups admins
}
define service {
use generic-service
service_description Check missedmessage_email_senders queue processor
check_command check_remote_arg_string!manage.py process_queue --queue_name=missedmessage_email_senders!1:1!1:1
max_check_attempts 3
hostgroup_name frontends
contact_groups admins
}
define service {
use generic-service
service_description Check email_senders queue processor

View File

@ -50,6 +50,7 @@ queues = {
'invites',
'message_sender',
'missedmessage_emails',
'missedmessage_email_senders',
'email_senders',
'missedmessage_mobile_notifications',
'outgoing_webhooks',

View File

@ -17,7 +17,7 @@ from typing import IO, Text
# TODO: Convert this to use scripts/lib/queue_workers.py
TOOLS_DIR = os.path.dirname(os.path.abspath(__file__))
successful_worker_launches = [
'[process_queue] 19 queue worker threads were launched',
'[process_queue] 20 queue worker threads were launched',
]
def check_worker_launch(logfile_name):

View File

@ -308,6 +308,19 @@ class EmailSendingWorker(QueueProcessingWorker):
del copied_event['failed_tries']
send_email_from_dict(copied_event)
@assign_queue('missedmessage_email_senders')
class MissedMessageSendingWorker(EmailSendingWorker):
"""
Note: Class decorators are not inherited.
The `missedmessage_email_senders` queue was used up through 1.7.1, so we
keep consuming from it in case we've just upgraded from an old version.
After the 1.8 release, we can delete it and tell admins to upgrade to 1.8
first.
"""
# TODO: zulip-1.8: Delete code related to missedmessage_email_senders queue.
pass
@assign_queue('missedmessage_mobile_notifications')
class PushNotificationsWorker(QueueProcessingWorker):
def consume(self, data):