mirror of
https://git.freebsd.org/ports.git
synced 2025-06-23 13:40:34 -04:00
- login_disabled option before starttls for pop3 - fix compiler warnings for GCC5 - Fix IMAP mailbox maintanence - prevent assertion in p_string_erase - improve crypt authentication, also don't segfault when spasswd is empty - simplify log_query_time duration logic - Disconnect IMAP clients if only few free FDs left - Add primary key constraint to dbmail_authlog - Rework temporary connection failures - Give sensible default for retry 120s - Add retries for binding and searching - Bump search timeout to 60s - Increase ldap timeout to 600s 10 mins - Refactor deprecated functions - Get timeout from config - Remove redundant event_assign - Remove deprecated non functioning g_mem_profile - Add definition for authldap_free - Revert inadvertent event_assign removal - Reduce failed LDAP connection for search to error - Update LDAP to non deprecated search - Clear the ldap connection - Update ldap deprecated unbind - Fix typo - Update to ldap_unbind_ext_s and remove redundant sigaction - Rebalance commit rollback - Ensure mailbox2dbmail is using Python 2 - Tidy mailbox2dbmail man page - Update description of pid file location in server man page - Boundaries fixups ordering of parts do not add newline on - Prepend headers during delivery - Allow for systems that don't use proc PR: 210274 Submitted by: fluffy
71 lines
1.8 KiB
Text
71 lines
1.8 KiB
Text
From 1a09a645c82e07fee8d42642a83652c6c85473ff Mon Sep 17 00:00:00 2001
|
|
From: Alan Hicks <ahicks@p-o.co.uk>
|
|
Date: Mon, 31 Oct 2016 18:27:45 +0000
|
|
Subject: [PATCH 26/33] Rebalance commit/rollback
|
|
|
|
---
|
|
src/dm_mailboxstate.c | 9 ++++++---
|
|
src/imapcommands.c | 1 +
|
|
2 files changed, 7 insertions(+), 3 deletions(-)
|
|
|
|
diff --git src/dm_mailboxstate.c src/dm_mailboxstate.c
|
|
index 723689a..c04b6d7 100644
|
|
--- src/dm_mailboxstate.c
|
|
+++ src/dm_mailboxstate.c
|
|
@@ -212,11 +212,12 @@ T MailboxState_new(Mempool_T pool, uint64_t id)
|
|
db_begin_transaction(c); // we need read-committed isolation
|
|
state_load_metadata(M, c);
|
|
state_load_messages(M, c);
|
|
+ db_commit_transaction(c);
|
|
CATCH(SQLException)
|
|
LOG_SQLERROR;
|
|
+ db_rollback_transaction(c);
|
|
t = DM_EQUERY;
|
|
FINALLY
|
|
- db_commit_transaction(c);
|
|
db_con_close(c);
|
|
END_TRY;
|
|
|
|
@@ -888,11 +889,12 @@ int MailboxState_info(T M)
|
|
TRY
|
|
db_begin_transaction(c);
|
|
db_getmailbox_info(M, c);
|
|
+ db_commit_transaction(c);
|
|
CATCH(SQLException)
|
|
LOG_SQLERROR;
|
|
+ db_rollback_transaction(c);
|
|
t = DM_EQUERY;
|
|
FINALLY
|
|
- db_commit_transaction(c);
|
|
db_con_close(c);
|
|
END_TRY;
|
|
|
|
@@ -928,11 +930,12 @@ int MailboxState_count(T M)
|
|
TRY
|
|
db_begin_transaction(c);
|
|
db_getmailbox_count(M, c);
|
|
+ db_commit_transaction(c);
|
|
CATCH(SQLException)
|
|
LOG_SQLERROR;
|
|
+ db_rollback_transaction(c);
|
|
t = DM_EQUERY;
|
|
FINALLY
|
|
- db_commit_transaction(c);
|
|
db_con_close(c);
|
|
END_TRY;
|
|
|
|
diff --git src/imapcommands.c src/imapcommands.c
|
|
index bdedb4a..43760fc 100644
|
|
--- src/imapcommands.c
|
|
+++ src/imapcommands.c
|
|
@@ -946,6 +946,7 @@ void _ic_delete_enter(dm_thread_data *D)
|
|
db_commit_transaction(c);
|
|
CATCH(SQLException)
|
|
LOG_SQLERROR;
|
|
+ db_rollback_transaction(c);
|
|
t = DM_EQUERY;
|
|
FINALLY
|
|
db_con_close(c);
|
|
--
|
|
2.10.1 (Apple Git-78)
|
|
|