diff options
author | Selwin Ong <selwin.ong@gmail.com> | 2022-07-24 10:29:49 +0700 |
---|---|---|
committer | Selwin Ong <selwin.ong@gmail.com> | 2022-07-24 10:29:49 +0700 |
commit | 013818953345570da4c77d4c2675ce4a22034eeb (patch) | |
tree | 1bec08e921dafc1b75dbcca804e38af8eea0bc22 | |
parent | 468eb00c13b5ff65bb0feb6785c6a8b889387aea (diff) | |
download | rq-delete-stopped-jobs.tar.gz |
When stopped jobs are deleted, they should also be removed from FailedJobRegistry.delete-stopped-jobs
-rw-r--r-- | rq/job.py | 2 | ||||
-rw-r--r-- | tests/test_job.py | 9 |
2 files changed, 10 insertions, 1 deletions
@@ -772,7 +772,7 @@ class Job: serializer=self.serializer) registry.remove(self, pipeline=pipeline) - elif self.is_failed: + elif self.is_failed or self.is_stopped: self.failed_job_registry.remove(self, pipeline=pipeline) elif self.is_canceled: diff --git a/tests/test_job.py b/tests/test_job.py index df17f30..bf7af5b 100644 --- a/tests/test_job.py +++ b/tests/test_job.py @@ -621,6 +621,15 @@ class TestJob(RQTestCase): job.delete() self.assertFalse(job in registry) + job = Job.create(func=fixtures.say_hello, status=JobStatus.STOPPED, + connection=self.testconn, origin='default', serializer=JSONSerializer) + job.save() + registry = FailedJobRegistry(connection=self.testconn, serializer=JSONSerializer) + registry.add(job, 500) + + job.delete() + self.assertFalse(job in registry) + job = Job.create(func=fixtures.say_hello, status=JobStatus.FINISHED, connection=self.testconn, origin='default', serializer=JSONSerializer) job.save() |