diff --git a/service/src/main/java/org/whispersystems/textsecuregcm/storage/AccountsManager.java b/service/src/main/java/org/whispersystems/textsecuregcm/storage/AccountsManager.java index 3243b8dd4..9cdaa1866 100644 --- a/service/src/main/java/org/whispersystems/textsecuregcm/storage/AccountsManager.java +++ b/service/src/main/java/org/whispersystems/textsecuregcm/storage/AccountsManager.java @@ -353,11 +353,11 @@ public class AccountsManager { return CompletableFuture.failedFuture(throwable); }) - .whenComplete((ignored, throwable) -> { + .whenCompleteAsync((ignored, throwable) -> { if (throwable == null) { - clientPresenceManager.disconnectPresence(accountIdentifier, deviceId); + RedisOperation.unchecked(() -> clientPresenceManager.disconnectPresence(accountIdentifier, deviceId)); } - }); + }, clientPresenceExecutor); } public Account changeNumber(final Account account,