From b6d37af910eeebae76a9bb0e6db6152722b773f0 Mon Sep 17 00:00:00 2001 From: Nicola Soranzo Date: Thu, 18 Dec 2025 12:27:31 -0500 Subject: [PATCH] Fix mypy errors in changes to recalculate_user_disk_usage() --- lib/galaxy/model/__init__.py | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/lib/galaxy/model/__init__.py b/lib/galaxy/model/__init__.py index 92bc0fd53ef..832c4d7f964 100644 --- a/lib/galaxy/model/__init__.py +++ b/lib/galaxy/model/__init__.py @@ -1104,31 +1104,32 @@ WHERE user_id = :user_id and quota_source_label = :label self.disk_usage = (self.disk_usage or 0) + amount else: # else would work on newer sqlite - 3.24.0 - engine = required_object_session(self).bind - if "sqlite" in engine.dialect.name: + sa_session = required_object_session(self) + assert sa_session.bind is not None + if "sqlite" in sa_session.bind.dialect.name: # hacky alternative for older sqlite - statement = """ + sql = """ WITH new (user_id, quota_source_label) AS ( VALUES(:user_id, :label) ) INSERT OR REPLACE INTO user_quota_source_usage (id, user_id, quota_source_label, disk_usage) SELECT old.id, new.user_id, new.quota_source_label, COALESCE(old.disk_usage + :amount, :amount) FROM new LEFT JOIN user_quota_source_usage AS old ON new.user_id = old.user_id AND NEW.quota_source_label = old.quota_source_label; """ else: - statement = """ + sql = """ INSERT INTO user_quota_source_usage(user_id, disk_usage, quota_source_label) VALUES(:user_id, :amount, :label) ON CONFLICT ON constraint uqsu_unique_label_per_user DO UPDATE SET disk_usage = user_quota_source_usage.disk_usage + :amount """ - statement = text(statement) + statement = text(sql) params = { "user_id": self.id, "amount": int(amount), "label": quota_source_label, } - with engine.connect() as conn, conn.begin(): - conn.execute(statement, params) + with sa_session.begin(): + sa_session.execute(statement, params) def _get_social_auth(self, provider_backend): if not self.social_auth: