From 5da7953a64dd386c2a6245a7a03f9a54f778aa57 Mon Sep 17 00:00:00 2001 From: Son NK <> Date: Fri, 23 Oct 2020 11:55:01 +0200 Subject: [PATCH] handle the case a directory alias is created concurrently --- app/alias_utils.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/app/alias_utils.py b/app/alias_utils.py index 109366cd..77bae501 100644 --- a/app/alias_utils.py +++ b/app/alias_utils.py @@ -93,6 +93,11 @@ def try_auto_create_directory(address: str) -> Optional[Alias]: dir_user, ) return None + except IntegrityError: + LOG.warning("Alias %s already exists", address) + db.session.rollback() + alias = Alias.get_by(email=address) + return alias def try_auto_create_catch_all_domain(address: str) -> Optional[Alias]: