fix lock if no mapupdates exist

This commit is contained in:
Laura Klünder 2018-12-18 20:36:45 +01:00
parent 2691c4d714
commit 79fbb915de

View file

@ -95,7 +95,12 @@ class MapUpdate(models.Model):
@contextmanager
def lock(cls):
with transaction.atomic():
yield cls.objects.select_for_update().get(pk=cls.objects.earliest().pk)
try:
earliest = cls.objects.earliest()
except cls.DoesNotExist:
yield
else:
yield cls.objects.select_for_update().get(pk=earliest.pk)
def _changed_geometries_filename(self):
return os.path.join(settings.CACHE_ROOT, 'changed_geometries', 'update_%d.pickle' % self.pk)