From 3cebaf0bc9175eab9db30b1854477abbb5e2436e Mon Sep 17 00:00:00 2001 From: Bastien Abadie <bastien@nextcairn.com> Date: Mon, 30 Nov 2020 15:59:51 +0100 Subject: [PATCH] Catch all exceptions while deleting an entity --- arkindex/documents/api/entities.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/arkindex/documents/api/entities.py b/arkindex/documents/api/entities.py index a4bd581e6a..3302fc79c6 100644 --- a/arkindex/documents/api/entities.py +++ b/arkindex/documents/api/entities.py @@ -1,3 +1,4 @@ +import logging from uuid import UUID from django.conf import settings @@ -41,6 +42,8 @@ from arkindex.project.mixins import CorpusACLMixin from arkindex.project.permissions import IsVerified from arkindex.project.triggers import reindex_start +logger = logging.getLogger(__name__) + class CorpusRoles(CorpusACLMixin, ListCreateAPIView): """ @@ -104,10 +107,12 @@ class EntityDetails(RetrieveUpdateDestroyAPIView): # Try to delete indexed entity if possible try: es_entity = ESEntity.get(id=instance.id.hex) + es_entity.delete() except NotFoundError: pass - else: - es_entity.delete() + except Exception as e: + logger.error(f"Failed to delete ES index entity {instance.id}: {e}") + instance.delete() -- GitLab