diff --git a/data/queue.py b/data/queue.py index dcb031fa5..601092982 100644 --- a/data/queue.py +++ b/data/queue.py @@ -111,7 +111,7 @@ class WorkQueue(object): dim = {'queue': self._queue_name} self._metric_queue.put_deprecated('Running', running_count, dimensions=dim) self._metric_queue.put_deprecated('AvailableNotRunning', available_not_running_count, - dimensions=dim) + dimensions=dim) self._metric_queue.put_deprecated('Available', available_count, dimensions=dim) self._metric_queue.work_queue_running.set(running_count, labelvalues=[self._queue_name]) @@ -135,23 +135,17 @@ class WorkQueue(object): Put an item, if it shouldn't be processed for some number of seconds, specify that amount as available_after. Returns the ID of the queue item added. """ - - params = { - 'queue_name': self._canonical_name([self._queue_name] + canonical_name_list), - 'body': message, - 'retries_remaining': retries_remaining, - } - - available_date = datetime.utcnow() + timedelta(seconds=available_after or 0) - params['available_after'] = available_date - - with self._transaction_factory(db): - r = str(QueueItem.create(**params).id) + item = QueueItem.create( + queue_name=self._canonical_name([self._queue_name] + canonical_name_list), + body=message, + retries_remaining=retries_remaining, + available_after=datetime.utcnow() + timedelta(seconds=available_after or 0), + ) if self._metric_queue: self._metric_queue.put_deprecated('Added', 1, dimensions={'queue': self._queue_name}) - return r + return str(item.id) def get(self, processing_time=300, ordering_required=False): """