From 743e05392771bf7f7310f25ce23c6aa74f4b0e16 Mon Sep 17 00:00:00 2001 From: Michael Krens Date: Thu, 15 Oct 2015 02:53:44 +0200 Subject: [PATCH] Log a warning when tasks are discarded --- djcelery_transactions/__init__.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/djcelery_transactions/__init__.py b/djcelery_transactions/__init__.py index 40231b0..1373593 100644 --- a/djcelery_transactions/__init__.py +++ b/djcelery_transactions/__init__.py @@ -4,6 +4,9 @@ from django.db import transaction from functools import partial import threading +import logging + +logger = logging.getLogger(__name__) # Thread-local data (task queue). @@ -67,6 +70,9 @@ def _discard_tasks(**kwargs): """Discards all delayed Celery tasks. Called after a transaction is rolled back.""" + num_tasks = len(_get_task_queue()) + if num_tasks: + logger.warning('%d tasks discarded because of transaction rollback!', num_tasks) _get_task_queue()[:] = []