diff options
| -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") |
