From 75da426bcbb1902b39fbe410c32d1305699a2311 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Stefan=20K=C3=B6gl?= Date: Sun, 28 Jun 2015 13:56:04 +0200 Subject: [PATCH] [Podcasts] handle IntegrityError when adding related podcasts --- mygpo/data/tasks.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/mygpo/data/tasks.py b/mygpo/data/tasks.py index ff1143c1..df6726a8 100644 --- a/mygpo/data/tasks.py +++ b/mygpo/data/tasks.py @@ -1,6 +1,8 @@ from operator import itemgetter from datetime import datetime, timedelta +from django.db import IntegrityError + from celery.decorators import periodic_task from mygpo.data.podcast import calc_similar_podcasts @@ -27,7 +29,11 @@ def update_related_podcasts(podcast, max_related=20): related = map(get_podcast, related) for p in related: - podcast.related_podcasts.add(p) + try: + podcast.related_podcasts.add(p) + except IntegrityError: + logger.warn('Integrity error while adding related podcast', + exc_info=True) # interval in which podcast updates are scheduled -- 2.11.4.GIT