Skip to content
Snippets Groups Projects
Commit 0332a1c2 authored by Samuel GAIST's avatar Samuel GAIST
Browse files

[backend][helpers] Simply block canceling and failure code

parent ac559ecd
No related branches found
No related tags found
2 merge requests!2551.4.x,!253Improve block state change
Pipeline #24560 passed
...@@ -712,9 +712,7 @@ def update_job(job): ...@@ -712,9 +712,7 @@ def update_job(job):
cached_file.update(Block.FAILED) cached_file.update(Block.FAILED)
# Update the block # Update the block
job.block.status = Block.FAILED job.block.set_failed(job.end_date)
job.block.end_date = job.end_date
job.block.save()
# Cancel all the remaining blocks of the experiment # Cancel all the remaining blocks of the experiment
splits_to_cancel.extend(cancel_all_blocks(job.block.experiment)) splits_to_cancel.extend(cancel_all_blocks(job.block.experiment))
...@@ -728,9 +726,7 @@ def update_job(job): ...@@ -728,9 +726,7 @@ def update_job(job):
mirror_job.end_date = job.end_date mirror_job.end_date = job.end_date
mirror_job.save() mirror_job.save()
mirror_job.block.status = Block.FAILED mirror_job.block.set_failed(job.end_date)
mirror_job.block.end_date = job.end_date
mirror_job.block.save()
# Cancel all the remaining blocks of the experiment # Cancel all the remaining blocks of the experiment
splits_to_cancel.extend(cancel_all_blocks(mirror_job.block.experiment)) splits_to_cancel.extend(cancel_all_blocks(mirror_job.block.experiment))
...@@ -795,9 +791,7 @@ def update_job(job): ...@@ -795,9 +791,7 @@ def update_job(job):
cached_file.update(Block.CANCELLED) cached_file.update(Block.CANCELLED)
# Update the block # Update the block
job.block.status = Block.CANCELLED job.block.set_canceled(job.end_date)
job.block.end_date = job.end_date
job.block.save()
# Update the experiment # Update the experiment
update_experiment(job.block.experiment) update_experiment(job.block.experiment)
...@@ -874,12 +868,7 @@ def cancel_all_blocks(experiment): ...@@ -874,12 +868,7 @@ def cancel_all_blocks(experiment):
# (If possible) Mark the block as cancelled # (If possible) Mark the block as cancelled
if block.job.splits.filter(status=JobSplit.CANCELLING).count() == 0: if block.job.splits.filter(status=JobSplit.CANCELLING).count() == 0:
block.status = Block.CANCELLED block.set_canceled()
block.end_date = datetime.now()
if block.start_date is None:
block.start_date = block.end_date
block.save()
block.job.delete() block.job.delete()
...@@ -888,15 +877,9 @@ def cancel_all_blocks(experiment): ...@@ -888,15 +877,9 @@ def cancel_all_blocks(experiment):
.filter(job__mirror=True) .filter(job__mirror=True)
for block in mirror_blocks_to_cancel: for block in mirror_blocks_to_cancel:
block.status = Block.CANCELLED block.set_canceled()
block.end_date = datetime.now()
if block.start_date is None:
block.start_date = block.end_date
block.save()
block.job.delete() block.job.delete()
return splits_to_cancel return splits_to_cancel
......
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