added a lock on a critical path when regenerating pages. this should allow all images to load correctly

This commit is contained in:
2021-04-08 16:43:39 +01:00
parent b502d8164b
commit c1f5d80ff7

View File

@@ -119,6 +119,11 @@ class ComicBook(models.Model):
ComicPage.objects.filter(Comic=self).delete() ComicPage.objects.filter(Comic=self).delete()
self.process_comic_pages(archive, self) self.process_comic_pages(archive, self)
page_obj = ComicPage.objects.get(Comic=self, index=page) page_obj = ComicPage.objects.get(Comic=self, index=page)
except ComicPage.DoesNotExist:
with db_mutex('comicpage'):
ComicPage.objects.filter(Comic=self).delete()
self.process_comic_pages(archive, self)
page_obj = ComicPage.objects.get(Comic=self, index=page)
try: try:
out = (archive.open(page_obj.page_file_name), page_obj.content_type) out = (archive.open(page_obj.page_file_name), page_obj.content_type)
except rarfile.NoRarEntry: except rarfile.NoRarEntry: