From 9274308859cda09651a2148c3e59c14ed893f616 Mon Sep 17 00:00:00 2001 From: Daniel Bimschas <daniel@bimschas.com> Date: Wed, 11 Dec 2024 06:57:13 +0100 Subject: [PATCH] HOLI-10718: handle object not found on deletion gracefully --- main.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/main.py b/main.py index 6314fd7..dfbba02 100644 --- a/main.py +++ b/main.py @@ -4,6 +4,7 @@ from typing import Union from dataclasses import asdict from cloudevents.http.event import CloudEvent +from typesense.exceptions import ObjectNotFound from events import UserNameUpdatedEvent, get_event_type, get_event_version, UserDeletedEvent, SpaceCreatedEvent, \ SpaceUpdatedEvent, SpaceDeletedEvent @@ -20,7 +21,10 @@ def process_user_name_updated_event(client: TypesenseClient, event: UserNameUpda def process_user_deleted_event(client: TypesenseClient, event: UserDeletedEvent): logger.debug(f'Processing {event}') - client.delete(f"profile_{event.user.id}") + try: + client.delete(f"profile_{event.user.id}") + except ObjectNotFound: + pass logger.info(f'Deleted user {event.user.id} from Typesense') def process_space_upserting_event(client: TypesenseClient, event: Union[SpaceCreatedEvent, SpaceUpdatedEvent]): @@ -30,7 +34,10 @@ def process_space_upserting_event(client: TypesenseClient, event: Union[SpaceCre def process_space_deleted_event(client: TypesenseClient, event: SpaceDeletedEvent): logger.debug(f'Processing {event}') - client.delete(f"space_{event.space.id}") + try: + client.delete(f"space_{event.space.id}") + except ObjectNotFound: + pass logger.info(f'Deleted space {event.space.id} in Typesense') def process_event(client: TypesenseClient, event: CloudEvent): -- GitLab