diff options
| author | Daniel Schadt <kingdread@gmx.de> | 2026-10-08 10:03:59 +0200 |
|---|---|---|
| committer | Daniel Schadt <kingdread@gmx.de> | 2026-10-08 10:03:59 +0200 |
| commit | b0998779042d7fa9f8145c1e6775caa35340be7f (patch) | |
| tree | 352bc4e39b7914ac86b64f9b250b57046883b059 | |
| parent | 4508653f3e802928deebe55b0f84ac961c6ac86a (diff) | |
| download | fietsboek-b0998779042d7fa9f8145c1e6775caa35340be7f.tar.gz fietsboek-b0998779042d7fa9f8145c1e6775caa35340be7f.tar.bz2 fietsboek-b0998779042d7fa9f8145c1e6775caa35340be7f.zip | |
catch sql exception in background climb extraction
| -rw-r--r-- | fietsboek/actions.py | 6 |
1 files changed, 5 insertions, 1 deletions
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") |
