|
20 | 20 | from django.utils.module_loading import import_string |
21 | 21 |
|
22 | 22 | from .backend import DatabaseBackend |
| 23 | +from .defaults import DEFAULT_RUNNER_LOOP_DELAY |
23 | 24 | from .models import ScheduledTask |
24 | 25 | from .periodic import Periodic |
25 | 26 |
|
@@ -51,7 +52,7 @@ def __init__( |
51 | 52 | workers: int = 4, |
52 | 53 | worker_id: str | None = None, |
53 | 54 | backend: str = DEFAULT_TASK_BACKEND_ALIAS, |
54 | | - loop_delay: float = 1.0, |
| 55 | + loop_delay: float = DEFAULT_RUNNER_LOOP_DELAY, |
55 | 56 | init_periodic: bool = True, |
56 | 57 | ): |
57 | 58 | self.workers = workers |
@@ -217,13 +218,15 @@ def delete_tasks(self): |
217 | 218 | """ |
218 | 219 | Deletes any finished tasks scheduled for deletion before now. |
219 | 220 | """ |
220 | | - return ScheduledTask.objects.filter( |
| 221 | + deleted = ScheduledTask.objects.filter( |
221 | 222 | delete_after__lt=timezone.now(), |
222 | 223 | status__in=[TaskResultStatus.SUCCESSFUL, TaskResultStatus.FAILED], |
223 | 224 | # TODO: allow runner to specify which backend/queues to process |
224 | 225 | backend=self.backend.alias, |
225 | 226 | queue__in=self.backend.queues, |
226 | | - ).delete() |
| 227 | + ).delete()[0] |
| 228 | + if deleted: |
| 229 | + logger.debug(f"Removed {deleted} completed task(s)") |
227 | 230 |
|
228 | 231 | def init_periodic(self): |
229 | 232 | """ |
|
0 commit comments