Skip to content

collector: skip over results that refer to an unknown job

When debci-collector receives from the results_queue and it is faced with a job that is not recorded in its database (e.g. because the job was deleted or a worker sent a bad result), Collector.receive_payload calls Collector.receive, which calls Job.receive, which throws ActiveRecord::RecordNotFound. This exception propagates upwards and prevents the collector from acknowledging the message, which results in it being stuck in the results_queue and being retried over and over again. Instead, we now log this event and acknowledge the results before discarding them.

Merge request reports

Loading