diff --git a/lib/src/main/java/org/asamk/signal/manager/storage/groups/GroupStore.java b/lib/src/main/java/org/asamk/signal/manager/storage/groups/GroupStore.java index 2c4bad99..89fbcc6d 100644 --- a/lib/src/main/java/org/asamk/signal/manager/storage/groups/GroupStore.java +++ b/lib/src/main/java/org/asamk/signal/manager/storage/groups/GroupStore.java @@ -152,6 +152,7 @@ public class GroupStore { statement.setBytes(2, groupId.serialize()); final var result = Utils.executeQueryForOptional(statement, Utils::getIdMapper); if (result.isEmpty()) { + connection.commit(); return; } internalId = result.get(); diff --git a/lib/src/main/java/org/asamk/signal/manager/storage/sendLog/MessageSendLogStore.java b/lib/src/main/java/org/asamk/signal/manager/storage/sendLog/MessageSendLogStore.java index 5b4b1be6..5876354b 100644 --- a/lib/src/main/java/org/asamk/signal/manager/storage/sendLog/MessageSendLogStore.java +++ b/lib/src/main/java/org/asamk/signal/manager/storage/sendLog/MessageSendLogStore.java @@ -303,6 +303,7 @@ public class MessageSendLogStore implements AutoCloseable { } if (contentId == -1) { logger.warn("Failed to insert message send log content"); + connection.commit(); return -1; } insertRecipientsForExistingContent(contentId, recipientDevices, connection); diff --git a/lib/src/main/java/org/asamk/signal/manager/storage/sessions/SessionStore.java b/lib/src/main/java/org/asamk/signal/manager/storage/sessions/SessionStore.java index ee32d980..85b28bd7 100644 --- a/lib/src/main/java/org/asamk/signal/manager/storage/sessions/SessionStore.java +++ b/lib/src/main/java/org/asamk/signal/manager/storage/sessions/SessionStore.java @@ -194,8 +194,9 @@ public class SessionStore implements SignalServiceSessionStore { if (session != null) { session.archiveCurrentState(); storeSession(connection, key, session); - connection.commit(); + } + connection.commit(); } catch (SQLException e) { throw new RuntimeException("Failed update session store", e); }