From a71913869b70c4516d1497c71df3a33d0c58d018 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Pracha=C5=99?= <jan.prachar@gmail.com> Date: Wed, 27 Apr 2022 09:41:58 +0200 Subject: [PATCH] =?UTF-8?q?Uplaod=20=C5=99e=C5=A1en=C3=AD:=20Zalo=C5=BEit?= =?UTF-8?q?=20pokud=20neexistuje?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mo/jobs/submit.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/mo/jobs/submit.py b/mo/jobs/submit.py index 82d19a8a..1c699b25 100644 --- a/mo/jobs/submit.py +++ b/mo/jobs/submit.py @@ -299,11 +299,16 @@ def handle_upload_feedback(the_job: TheJob): smtr.submit_paper(paper, fb.tmp_name) sess.add(paper) + # Najdeme řešení úlohy (nemusí existovat) sol = (sess.query(db.Solution) .filter_by(task=fb.task, user=fb.user) - .with_for_update() - .one()) - if fb.is_solution: + .one_or_none()) + + if not sol: + sol = db.Solution(task=fb.task, user=fb.user) + sess.add(sol) + + if paper.type == db.PaperType.solution: sol.final_submit_obj = paper else: sol.final_feedback_obj = paper -- GitLab