Skip to content
Snippets Groups Projects
Commit a71e4097 authored by André Anjos's avatar André Anjos :speech_balloon:
Browse files

[backend] Fix to job updates with parent jobs

parent 67f34f27
No related branches found
No related tags found
1 merge request!194Scheduler
...@@ -680,31 +680,35 @@ class Job(models.Model): ...@@ -680,31 +680,35 @@ class Job(models.Model):
if self.done(): return if self.done(): return
split_statuses = self.splits.values_list('status', flat=True) # If this process has a parent, then don't try to get split statuses
if not self.parent:
if self.start_date is None: split_statuses = self.splits.values_list('status', flat=True)
self.start_date = \
self.splits.order_by('start_date').first().start_date
# Process main status and status from job results if self.start_date is None:
if Job.FAILED in split_statuses: self.start_date = \
self.status = Job.FAILED self.splits.order_by('start_date').first().start_date
elif Job.CANCELLED in split_statuses: # Process main status and status from job results
self.status = Job.CANCELLED if Job.FAILED in split_statuses:
self.status = Job.FAILED
elif (Job.PROCESSING in split_statuses) or \ elif Job.CANCELLED in split_statuses:
(Job.QUEUED in split_statuses and Job.COMPLETED in split_statuses): self.status = Job.CANCELLED
self.status = Job.PROCESSING
elif all([s == Job.SKIPPED for s in split_statuses]): elif (Job.PROCESSING in split_statuses) or \
self.status = Job.SKIPPED (Job.QUEUED in split_statuses and \
Job.COMPLETED in split_statuses):
self.status = Job.PROCESSING
elif Job.QUEUED not in split_statuses: elif all([s == Job.SKIPPED for s in split_statuses]):
self.status = Job.COMPLETED self.status = Job.SKIPPED
else: elif Job.QUEUED not in split_statuses:
self.status = Job.QUEUED self.status = Job.COMPLETED
else:
self.status = Job.QUEUED
# if required, erase dangling files, update own results # if required, erase dangling files, update own results
timings = None timings = None
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment