diff --git a/main.py b/main.py index 6314fd7ad07939bd02bce72cadb5392ef271d831..dfbba023cdd9a66b50a505d2f16d215a397c1da2 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):