mirror of https://github.com/rq/rq.git
Change parameter name from `exclude` ...
...to `exclude_job_id`. Also make it a single id not a set.
This commit is contained in:
parent
c0119a8a19
commit
c679c1af2f
11
rq/job.py
11
rq/job.py
|
@ -9,6 +9,7 @@ from functools import partial
|
||||||
from uuid import uuid4
|
from uuid import uuid4
|
||||||
|
|
||||||
from rq.compat import as_text, decode_redis_hash, string_types, text_type
|
from rq.compat import as_text, decode_redis_hash, string_types, text_type
|
||||||
|
|
||||||
from .connections import resolve_connection
|
from .connections import resolve_connection
|
||||||
from .exceptions import NoSuchJobError
|
from .exceptions import NoSuchJobError
|
||||||
from .local import LocalStack
|
from .local import LocalStack
|
||||||
|
@ -740,12 +741,7 @@ class Job(object):
|
||||||
return [Job.key_for(as_text(_id))
|
return [Job.key_for(as_text(_id))
|
||||||
for _id in dependencies]
|
for _id in dependencies]
|
||||||
|
|
||||||
def dependencies_are_met(
|
def dependencies_are_met(self, exclude_job_id=None, pipeline=None):
|
||||||
self,
|
|
||||||
pipeline=None,
|
|
||||||
exclude=None
|
|
||||||
|
|
||||||
):
|
|
||||||
"""Returns a boolean indicating if all of this jobs dependencies are _FINISHED_
|
"""Returns a boolean indicating if all of this jobs dependencies are _FINISHED_
|
||||||
|
|
||||||
If a pipeline is passed, all dependencies are WATCHed.
|
If a pipeline is passed, all dependencies are WATCHed.
|
||||||
|
@ -755,7 +751,6 @@ class Job(object):
|
||||||
`FINISHED` may not be yet set in redis, but said job is indeed _done_ and this
|
`FINISHED` may not be yet set in redis, but said job is indeed _done_ and this
|
||||||
method is _called_ in the _stack_ of it's dependents are being enqueued.
|
method is _called_ in the _stack_ of it's dependents are being enqueued.
|
||||||
"""
|
"""
|
||||||
exclude = exclude or []
|
|
||||||
|
|
||||||
pipe = pipeline if pipeline is not None else self.connection
|
pipe = pipeline if pipeline is not None else self.connection
|
||||||
|
|
||||||
|
@ -786,6 +781,6 @@ class Job(object):
|
||||||
return all(status == JobStatus.FINISHED or not created_at
|
return all(status == JobStatus.FINISHED or not created_at
|
||||||
for dependency_id, created_at, status
|
for dependency_id, created_at, status
|
||||||
in dependencies_statuses
|
in dependencies_statuses
|
||||||
if dependency_id not in exclude)
|
if not (exclude_job_id and dependency_id == exclude_job_id))
|
||||||
|
|
||||||
_job_stack = LocalStack()
|
_job_stack = LocalStack()
|
||||||
|
|
|
@ -469,8 +469,8 @@ class Queue(object):
|
||||||
dependent_job_ids,
|
dependent_job_ids,
|
||||||
connection=self.connection
|
connection=self.connection
|
||||||
) if dependent_job.dependencies_are_met(
|
) if dependent_job.dependencies_are_met(
|
||||||
pipeline=pipe,
|
exclude_job_id=job.id,
|
||||||
exclude={job.id}
|
pipeline=pipe
|
||||||
)
|
)
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue