Remove unnecessary job status

This commit is contained in:
Patrick Jentsch 2020-02-13 15:08:15 +01:00
parent 0ea03983d6
commit 0cb51a34c4
2 changed files with 15 additions and 10 deletions

View File

@ -322,11 +322,16 @@ class Job(db.Model):
""" """
Delete the job and its inputs and outputs from database and filesystem. Delete the job and its inputs and outputs from database and filesystem.
""" """
self.status = 'stopping' if self.status != 'complete' and self.status != 'failed':
db.session.commit() self.status = 'canceling'
while self.status != 'deleted': db.session.commit()
sleep(1) while self.status != 'canceled':
db.session.refresh(self) # In case the daemon started a submitted job meanwhile
if self.status == 'running':
self.status = 'canceling'
db.session.commit()
sleep(1)
db.session.refresh(self)
path = os.path.join(current_app.config['NOPAQUE_STORAGE'], path = os.path.join(current_app.config['NOPAQUE_STORAGE'],
str(self.user_id), 'jobs', str(self.id)) str(self.user_id), 'jobs', str(self.id))
try: try:

View File

@ -51,16 +51,16 @@ def service(service):
db.session.add(job) db.session.add(job)
db.session.commit() db.session.commit()
relative_dir = os.path.join(str(job.user_id), 'jobs', str(job.id)) relative_dir = os.path.join(str(job.user_id), 'jobs', str(job.id))
absolut_dir = os.path.join( absolut_dir = os.path.join(current_app.config['NOPAQUE_STORAGE'],
current_app.config['NOPAQUE_STORAGE'], relative_dir) relative_dir)
try: try:
os.makedirs(absolut_dir) os.makedirs(absolut_dir)
except OSError: except OSError:
job.delete() job.delete()
flash('Internal Server Error') flash('Internal Server Error')
return make_response( return make_response({'redirect_url': url_for('services.service',
{'redirect_url': url_for('services.service', service=service)}, service=service)},
500) 500)
else: else:
for file in add_job_form.files.data: for file in add_job_form.files.data:
filename = secure_filename(file.filename) filename = secure_filename(file.filename)