From b0998779042d7fa9f8145c1e6775caa35340be7f Mon Sep 17 00:00:00 2001 From: Daniel Schadt Date: Thu, 8 Oct 2026 10:03:59 +0200 Subject: catch sql exception in background climb extraction --- fietsboek/actions.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/fietsboek/actions.py b/fietsboek/actions.py index c467cc2..a50884f 100644 --- a/fietsboek/actions.py +++ b/fietsboek/actions.py @@ -14,6 +14,7 @@ import re from threading import Thread from typing import Optional +import sqlalchemy.exc from pyramid.i18n import TranslationString as _ from pyramid.request import Request from sqlalchemy import select @@ -379,7 +380,10 @@ def extract_climbs_background(request: Request, track_id: int): track = session.get(models.Track, track_id) with session: extract_climbs(session, track, loader, layer, request.overpass_api) - session.commit() + try: + session.commit() + except sqlalchemy.exc.IntegrityError: + LOGGER.info("SQL IntegrityError -- did we lose the track while extracting climbs?") request.redis.delete(f"bg-tasks:track-{track_id}") LOGGER.debug("Climb extraction done") -- cgit v1.2.3