From 34f779785c361f3d11bc68fe6fe902cbdcc18634 Mon Sep 17 00:00:00 2001 From: Ralph Bean Date: Fri, 3 Mar 2017 09:53:12 -0500 Subject: [PATCH] Don't handle koji messages with null task_id values. Otherwise, we query for null==null in our DB and chaos ensues. --- module_build_service/messaging.py | 6 ++++++ module_build_service/scheduler/handlers/components.py | 2 ++ 2 files changed, 8 insertions(+) diff --git a/module_build_service/messaging.py b/module_build_service/messaging.py index 480ea13e..430c7324 100644 --- a/module_build_service/messaging.py +++ b/module_build_service/messaging.py @@ -186,6 +186,10 @@ class BaseMessage(object): build_version = msg_inner_msg.get('version') build_release = msg_inner_msg.get('release') + if task_id is None: + log.debug("Saw a koji build change with no task_id.") + return + msg_obj = KojiBuildChange( msg_id, build_id, task_id, build_new_state, build_name, build_version, build_release) @@ -225,6 +229,8 @@ class KojiBuildChange(BaseMessage): def __init__(self, msg_id, build_id, task_id, build_new_state, build_name, build_version, build_release, module_build_id=None, state_reason=None): + if task_id is None: + raise ValueError("KojiBuildChange with a null task_id is invalid.") super(KojiBuildChange, self).__init__(msg_id) self.build_id = build_id self.task_id = task_id diff --git a/module_build_service/scheduler/handlers/components.py b/module_build_service/scheduler/handlers/components.py index f76153a2..ab32ec77 100644 --- a/module_build_service/scheduler/handlers/components.py +++ b/module_build_service/scheduler/handlers/components.py @@ -50,6 +50,8 @@ def _finalize(config, session, msg, state): log.debug("We have no record of %s" % nvr) return + log.info("Saw relevant component build of %r from %r." % (nvr, msg.msg_id)) + if msg.state_reason: state_reason = msg.state_reason elif state != koji.BUILD_STATES['COMPLETE']: