From 32508f6dc84fbffc78248250472d266d86655ee1 Mon Sep 17 00:00:00 2001 From: Filippo Casarin Date: Thu, 13 Aug 2026 11:26:57 +0500 Subject: [PATCH] Fix race condition while loading the contest submission page --- cms/server/admin/handlers/base.py | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/cms/server/admin/handlers/base.py b/cms/server/admin/handlers/base.py index 1402bc4d92..796526b21d 100644 --- a/cms/server/admin/handlers/base.py +++ b/cms/server/admin/handlers/base.py @@ -48,7 +48,7 @@ import tornado.web from sqlalchemy.exc import IntegrityError -from sqlalchemy.orm import Query, subqueryload +from sqlalchemy.orm import Query, selectinload from cms import __version__, config from cms.db import Admin, Contest, Participation, Question, Submission, \ @@ -592,12 +592,12 @@ def render_params_for_submissions( """ query = query\ - .options(subqueryload(Submission.task))\ - .options(subqueryload(Submission.participation))\ - .options(subqueryload(Submission.files))\ - .options(subqueryload(Submission.token))\ - .options(subqueryload(Submission.results) - .subqueryload(SubmissionResult.evaluations))\ + .options(selectinload(Submission.task))\ + .options(selectinload(Submission.participation))\ + .options(selectinload(Submission.files))\ + .options(selectinload(Submission.token))\ + .options(selectinload(Submission.results) + .selectinload(SubmissionResult.evaluations))\ .order_by(Submission.timestamp.desc()) offset = page * page_size @@ -628,10 +628,10 @@ def render_params_for_user_tests( """ query = query\ - .options(subqueryload(UserTest.task))\ - .options(subqueryload(UserTest.participation))\ - .options(subqueryload(UserTest.files))\ - .options(subqueryload(UserTest.results))\ + .options(selectinload(UserTest.task))\ + .options(selectinload(UserTest.participation))\ + .options(selectinload(UserTest.files))\ + .options(selectinload(UserTest.results))\ .order_by(UserTest.timestamp.desc()) offset = page * page_size