From e5e7c1c19ffb24c7ab5409b64db43a80bce568f9 Mon Sep 17 00:00:00 2001 From: "Janus C. H. Knudsen" Date: Thu, 8 Jan 2026 22:52:57 +0100 Subject: [PATCH] Refines user creation email uniqueness check Improves email duplicate detection by adding specific constraint name validation Prevents potential false positives in unique email constraint handling Ensures more precise exception handling for email registration --- PlanTempus.Components/Users/Create/CreateUserHandler.cs | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/PlanTempus.Components/Users/Create/CreateUserHandler.cs b/PlanTempus.Components/Users/Create/CreateUserHandler.cs index c4a9764..42bb8dc 100644 --- a/PlanTempus.Components/Users/Create/CreateUserHandler.cs +++ b/PlanTempus.Components/Users/Create/CreateUserHandler.cs @@ -14,8 +14,6 @@ namespace PlanTempus.Components.Users.Create { public async Task Handle(CreateUserCommand command) { - command.TransactionId = Guid.NewGuid(); - using var db = databaseOperations.CreateScope(nameof(CreateUserHandler)); try { @@ -41,7 +39,7 @@ namespace PlanTempus.Components.Users.Create return new CommandResponse(command.CorrelationId, command.GetType().Name, command.TransactionId); } - catch (PostgresException ex) when (ex.SqlState == "23505") + catch (PostgresException ex) when (ex.SqlState == "23505" && ex.ConstraintName.Equals("users_email_key", StringComparison.InvariantCultureIgnoreCase)) { db.Error(ex); throw new EmailAlreadyRegistreredException();