dovecot: mailbox_transaction_commit*() doesn't sync the mailbox ...

dovecot at dovecot.org dovecot at dovecot.org
Sun Sep 30 17:03:49 EEST 2007


details:   http://hg.dovecot.org/dovecot/rev/1a3604c8ee05
changeset: 6512:1a3604c8ee05
user:      Timo Sirainen <tss at iki.fi>
date:      Sun Sep 30 17:03:26 2007 +0300
description:
mailbox_transaction_commit*() doesn't sync the mailbox anymore, so it
shouldn't take mailbox_sync_flags parameter either.

diffstat:

28 files changed, 37 insertions(+), 57 deletions(-)
src/deliver/deliver.c                          |    2 +-
src/imap/cmd-append.c                          |    2 +-
src/imap/cmd-copy.c                            |    4 ++--
src/imap/cmd-search.c                          |    2 +-
src/imap/cmd-store.c                           |    2 +-
src/imap/imap-expunge.c                        |    5 +----
src/imap/imap-fetch.c                          |    2 +-
src/imap/imap-sort.c                           |    2 +-
src/imap/imap-sync.c                           |    2 +-
src/imap/imap-thread.c                         |    2 +-
src/lib-storage/index/index-storage.h          |    2 --
src/lib-storage/index/index-transaction.c      |    2 --
src/lib-storage/mail-storage-private.h         |    1 -
src/lib-storage/mail-storage.c                 |    8 +++-----
src/lib-storage/mail-storage.h                 |    4 +---
src/plugins/acl/acl-mailbox.c                  |    4 ++--
src/plugins/convert/convert-storage.c          |    4 ++--
src/plugins/expire/expire-plugin.c             |    3 +--
src/plugins/expire/expire-tool.c               |    3 +--
src/plugins/fts/fts-storage.c                  |    3 +--
src/plugins/lazy-expunge/lazy-expunge-plugin.c |    5 ++---
src/plugins/mail-log/mail-log-plugin.c         |    3 +--
src/plugins/mbox-snarf/mbox-snarf-plugin.c     |    4 ++--
src/plugins/quota/quota-count.c                |    2 +-
src/plugins/quota/quota-storage.c              |    5 ++---
src/plugins/trash/trash-plugin.c               |    7 +++----
src/pop3/client.c                              |    6 +++---
src/pop3/commands.c                            |    3 +--

diffs (truncated from 498 to 300 lines):

diff -r fe5c19ffc119 -r 1a3604c8ee05 src/deliver/deliver.c
--- a/src/deliver/deliver.c	Sun Sep 30 16:57:32 2007 +0300
+++ b/src/deliver/deliver.c	Sun Sep 30 17:03:26 2007 +0300
@@ -152,7 +152,7 @@ int deliver_save(struct mail_namespace *
 	if (ret < 0)
 		mailbox_transaction_rollback(&t);
 	else
-		ret = mailbox_transaction_commit(&t, 0);
+		ret = mailbox_transaction_commit(&t);
 
 	if (mail_get_first_header(mail, "Message-ID", &msgid) <= 0)
 		msgid = "";
diff -r fe5c19ffc119 -r 1a3604c8ee05 src/imap/cmd-append.c
--- a/src/imap/cmd-append.c	Sun Sep 30 16:57:32 2007 +0300
+++ b/src/imap/cmd-append.c	Sun Sep 30 17:03:26 2007 +0300
@@ -248,7 +248,7 @@ static bool cmd_append_continue_parsing(
 			return TRUE;
 		}
 
-		ret = mailbox_transaction_commit_get_uids(&ctx->t, 0,
+		ret = mailbox_transaction_commit_get_uids(&ctx->t,
 							  &uid_validity,
 							  &uid1, &uid2);
 		if (ret < 0) {
diff -r fe5c19ffc119 -r 1a3604c8ee05 src/imap/cmd-copy.c
--- a/src/imap/cmd-copy.c	Sun Sep 30 16:57:32 2007 +0300
+++ b/src/imap/cmd-copy.c	Sun Sep 30 17:03:26 2007 +0300
@@ -76,7 +76,7 @@ static int fetch_and_copy(struct client 
 	if (mailbox_search_deinit(&search_ctx) < 0)
 		ret = -1;
 
-	if (mailbox_transaction_commit(&src_trans, 0) < 0)
+	if (mailbox_transaction_commit(&src_trans) < 0)
 		ret = -1;
 
 	*src_uidset_r = str_c(src_uidset);
@@ -138,7 +138,7 @@ bool cmd_copy(struct client_command_cont
 
 	if (ret <= 0)
 		mailbox_transaction_rollback(&t);
-	else if (mailbox_transaction_commit_get_uids(&t, 0, &uid_validity,
+	else if (mailbox_transaction_commit_get_uids(&t, &uid_validity,
 						     &uid1, &uid2) < 0)
 		ret = -1;
 	else if (copy_count == 0)
diff -r fe5c19ffc119 -r 1a3604c8ee05 src/imap/cmd-search.c
--- a/src/imap/cmd-search.c	Sun Sep 30 16:57:32 2007 +0300
+++ b/src/imap/cmd-search.c	Sun Sep 30 17:03:26 2007 +0300
@@ -43,7 +43,7 @@ static int imap_search_deinit(struct cli
 	mail_free(&ctx->mail);
 	ret = mailbox_search_deinit(&ctx->search_ctx);
 
-	if (mailbox_transaction_commit(&ctx->trans, 0) < 0)
+	if (mailbox_transaction_commit(&ctx->trans) < 0)
 		ret = -1;
 
 	if (ctx->output_sent || (ret == 0 && !cmd->cancel)) {
diff -r fe5c19ffc119 -r 1a3604c8ee05 src/imap/cmd-store.c
--- a/src/imap/cmd-store.c	Sun Sep 30 16:57:32 2007 +0300
+++ b/src/imap/cmd-store.c	Sun Sep 30 17:03:26 2007 +0300
@@ -114,7 +114,7 @@ bool cmd_store(struct client_command_con
 		failed = TRUE;
 		mailbox_transaction_rollback(&t);
 	} else {
-		failed = mailbox_transaction_commit(&t, 0) < 0;
+		failed = mailbox_transaction_commit(&t) < 0;
 	}
 
 	if (!failed) {
diff -r fe5c19ffc119 -r 1a3604c8ee05 src/imap/imap-expunge.c
--- a/src/imap/imap-expunge.c	Sun Sep 30 16:57:32 2007 +0300
+++ b/src/imap/imap-expunge.c	Sun Sep 30 17:03:26 2007 +0300
@@ -11,7 +11,6 @@ bool imap_expunge(struct mailbox *box, s
         struct mailbox_transaction_context *t;
 	struct mail *mail;
 	struct mail_search_arg search_arg;
-        enum mailbox_sync_flags flags;
 	bool failed;
 
 	if (mailbox_is_readonly(box)) {
@@ -35,9 +34,7 @@ bool imap_expunge(struct mailbox *box, s
 		failed = TRUE;
 		mailbox_transaction_rollback(&t);
 	} else {
-		flags = MAILBOX_SYNC_FLAG_FULL_READ |
-			MAILBOX_SYNC_FLAG_FULL_WRITE;
-		failed = mailbox_transaction_commit(&t, flags) < 0;
+		failed = mailbox_transaction_commit(&t) < 0;
 	}
 
 	return !failed;
diff -r fe5c19ffc119 -r 1a3604c8ee05 src/imap/imap-fetch.c
--- a/src/imap/imap-fetch.c	Sun Sep 30 16:57:32 2007 +0300
+++ b/src/imap/imap-fetch.c	Sun Sep 30 17:03:26 2007 +0300
@@ -391,7 +391,7 @@ int imap_fetch_deinit(struct imap_fetch_
 		/* even if something failed, we want to commit changes to
 		   cache, as well as possible \Seen flag changes for FETCH
 		   replies we returned so far. */
-		if (mailbox_transaction_commit(&ctx->trans, 0) < 0)
+		if (mailbox_transaction_commit(&ctx->trans) < 0)
 			ctx->failed = TRUE;
 	}
 	return ctx->failed ? -1 : 0;
diff -r fe5c19ffc119 -r 1a3604c8ee05 src/imap/imap-sort.c
--- a/src/imap/imap-sort.c	Sun Sep 30 16:57:32 2007 +0300
+++ b/src/imap/imap-sort.c	Sun Sep 30 17:03:26 2007 +0300
@@ -100,7 +100,7 @@ int imap_sort(struct client_command_cont
 	ret = mailbox_search_deinit(&search_ctx);
 	mail_free(&mail);
 
-	if (mailbox_transaction_commit(&t, 0) < 0)
+	if (mailbox_transaction_commit(&t) < 0)
 		ret = -1;
 
 	if (written || ret == 0) {
diff -r fe5c19ffc119 -r 1a3604c8ee05 src/imap/imap-sync.c
--- a/src/imap/imap-sync.c	Sun Sep 30 16:57:32 2007 +0300
+++ b/src/imap/imap-sync.c	Sun Sep 30 17:03:26 2007 +0300
@@ -71,7 +71,7 @@ int imap_sync_deinit(struct imap_sync_co
 		return -1;
 	}
 
-	ret = mailbox_transaction_commit(&ctx->t, 0);
+	ret = mailbox_transaction_commit(&ctx->t);
 
 	t_push();
 
diff -r fe5c19ffc119 -r 1a3604c8ee05 src/imap/imap-thread.c
--- a/src/imap/imap-thread.c	Sun Sep 30 16:57:32 2007 +0300
+++ b/src/imap/imap-thread.c	Sun Sep 30 17:03:26 2007 +0300
@@ -149,7 +149,7 @@ int imap_thread(struct client_command_co
 	o_stream_send_str(client->output, "\r\n");
 
 	ret = mailbox_search_deinit(&ctx->search_ctx);
-	if (mailbox_transaction_commit(&ctx->t, 0) < 0)
+	if (mailbox_transaction_commit(&ctx->t) < 0)
 		ret = -1;
 
 	mailbox_header_lookup_deinit(&headers_ctx);
diff -r fe5c19ffc119 -r 1a3604c8ee05 src/lib-storage/index/index-storage.h
--- a/src/lib-storage/index/index-storage.h	Sun Sep 30 16:57:32 2007 +0300
+++ b/src/lib-storage/index/index-storage.h	Sun Sep 30 17:03:26 2007 +0300
@@ -73,7 +73,6 @@ struct index_transaction_context {
 
 	struct index_mailbox *ibox;
 	enum mailbox_transaction_flags flags;
-	enum mailbox_sync_flags commit_flags;
 
 	struct mail_index_transaction *trans;
 	struct mail_index_view *trans_view;
@@ -169,7 +168,6 @@ index_transaction_begin(struct mailbox *
 index_transaction_begin(struct mailbox *box,
 			enum mailbox_transaction_flags flags);
 int index_transaction_commit(struct mailbox_transaction_context *t,
-			     enum mailbox_sync_flags flags,
 			     uint32_t *uid_validity_r,
 			     uint32_t *first_saved_uid_r,
 			     uint32_t *last_saved_uid_r);
diff -r fe5c19ffc119 -r 1a3604c8ee05 src/lib-storage/index/index-transaction.c
--- a/src/lib-storage/index/index-transaction.c	Sun Sep 30 16:57:32 2007 +0300
+++ b/src/lib-storage/index/index-transaction.c	Sun Sep 30 17:03:26 2007 +0300
@@ -81,7 +81,6 @@ index_transaction_begin(struct mailbox *
 }
 
 int index_transaction_commit(struct mailbox_transaction_context *_t,
-			     enum mailbox_sync_flags flags,
 			     uint32_t *uid_validity_r,
 			     uint32_t *first_saved_uid_r,
 			     uint32_t *last_saved_uid_r)
@@ -95,7 +94,6 @@ int index_transaction_commit(struct mail
 	*uid_validity_r = 0;
 	*first_saved_uid_r = *last_saved_uid_r = 0;
 
-	t->commit_flags = flags;
 	t->saved_uid_validity = uid_validity_r;
 	t->first_saved_uid = first_saved_uid_r;
 	t->last_saved_uid = last_saved_uid_r;
diff -r fe5c19ffc119 -r 1a3604c8ee05 src/lib-storage/mail-storage-private.h
--- a/src/lib-storage/mail-storage-private.h	Sun Sep 30 16:57:32 2007 +0300
+++ b/src/lib-storage/mail-storage-private.h	Sun Sep 30 17:03:26 2007 +0300
@@ -111,7 +111,6 @@ struct mailbox_vfuncs {
 		(*transaction_begin)(struct mailbox *box,
 				     enum mailbox_transaction_flags flags);
 	int (*transaction_commit)(struct mailbox_transaction_context *t,
-				  enum mailbox_sync_flags flags,
 				  uint32_t *uid_validity_r,
 				  uint32_t *first_saved_uid_r,
 				  uint32_t *last_saved_uid_r);
diff -r fe5c19ffc119 -r 1a3604c8ee05 src/lib-storage/mail-storage.c
--- a/src/lib-storage/mail-storage.c	Sun Sep 30 16:57:32 2007 +0300
+++ b/src/lib-storage/mail-storage.c	Sun Sep 30 17:03:26 2007 +0300
@@ -648,16 +648,14 @@ mailbox_transaction_begin(struct mailbox
 	return box->v.transaction_begin(box, flags);
 }
 
-int mailbox_transaction_commit(struct mailbox_transaction_context **t,
-			       enum mailbox_sync_flags flags)
+int mailbox_transaction_commit(struct mailbox_transaction_context **t)
 {
 	uint32_t tmp;
 
-	return mailbox_transaction_commit_get_uids(t, flags, &tmp, &tmp, &tmp);
+	return mailbox_transaction_commit_get_uids(t, &tmp, &tmp, &tmp);
 }
 
 int mailbox_transaction_commit_get_uids(struct mailbox_transaction_context **_t,
-					enum mailbox_sync_flags flags,
 					uint32_t *uid_validity_r,
 					uint32_t *first_saved_uid_r,
 					uint32_t *last_saved_uid_r)
@@ -667,7 +665,7 @@ int mailbox_transaction_commit_get_uids(
 	t->box->transaction_count--;
 
 	*_t = NULL;
-	return t->box->v.transaction_commit(t, flags, uid_validity_r,
+	return t->box->v.transaction_commit(t, uid_validity_r,
 					    first_saved_uid_r,
 					    last_saved_uid_r);
 }
diff -r fe5c19ffc119 -r 1a3604c8ee05 src/lib-storage/mail-storage.h
--- a/src/lib-storage/mail-storage.h	Sun Sep 30 16:57:32 2007 +0300
+++ b/src/lib-storage/mail-storage.h	Sun Sep 30 17:03:26 2007 +0300
@@ -316,11 +316,9 @@ struct mailbox_transaction_context *
 struct mailbox_transaction_context *
 mailbox_transaction_begin(struct mailbox *box,
 			  enum mailbox_transaction_flags flags);
-int mailbox_transaction_commit(struct mailbox_transaction_context **t,
-			       enum mailbox_sync_flags flags);
+int mailbox_transaction_commit(struct mailbox_transaction_context **t);
 /* If no messages were saved/copied, first/last_saved_uid_r are 0. */
 int mailbox_transaction_commit_get_uids(struct mailbox_transaction_context **t,
-					enum mailbox_sync_flags flags,
 					uint32_t *uid_validity_r,
 					uint32_t *first_saved_uid_r,
 					uint32_t *last_saved_uid_r);
diff -r fe5c19ffc119 -r 1a3604c8ee05 src/plugins/acl/acl-mailbox.c
--- a/src/plugins/acl/acl-mailbox.c	Sun Sep 30 16:57:32 2007 +0300
+++ b/src/plugins/acl/acl-mailbox.c	Sun Sep 30 17:03:26 2007 +0300
@@ -280,7 +280,7 @@ acl_copy(struct mailbox_transaction_cont
 
 static int
 acl_transaction_commit(struct mailbox_transaction_context *ctx,
-		       enum mailbox_sync_flags flags, uint32_t *uid_validity_r,
+		       uint32_t *uid_validity_r,
 		       uint32_t *first_saved_uid_r, uint32_t *last_saved_uid_r)
 {
 	struct acl_mailbox *abox = ACL_CONTEXT(ctx->box);
@@ -292,7 +292,7 @@ acl_transaction_commit(struct mailbox_tr
 	}
 
 	return abox->module_ctx.super.
-		transaction_commit(ctx, flags, uid_validity_r,
+		transaction_commit(ctx, uid_validity_r,
 				   first_saved_uid_r, last_saved_uid_r);
 }
 struct mailbox *acl_mailbox_open_box(struct mailbox *box)
diff -r fe5c19ffc119 -r 1a3604c8ee05 src/plugins/convert/convert-storage.c
--- a/src/plugins/convert/convert-storage.c	Sun Sep 30 16:57:32 2007 +0300
+++ b/src/plugins/convert/convert-storage.c	Sun Sep 30 17:03:26 2007 +0300
@@ -77,14 +77,14 @@ static int mailbox_copy_mails(struct mai
 	if (ret < 0)
 		mailbox_transaction_rollback(&dest_trans);
 	else
-		ret = mailbox_transaction_commit(&dest_trans, 0);
+		ret = mailbox_transaction_commit(&dest_trans);
 
 	/* source transaction committing isn't all that important.
 	   ignore if it fails. */
 	if (ret < 0)
 		mailbox_transaction_rollback(&src_trans);
 	else
-		(void)mailbox_transaction_commit(&src_trans, 0);
+		(void)mailbox_transaction_commit(&src_trans);
 	return ret;
 }
 
diff -r fe5c19ffc119 -r 1a3604c8ee05 src/plugins/expire/expire-plugin.c
--- a/src/plugins/expire/expire-plugin.c	Sun Sep 30 16:57:32 2007 +0300
+++ b/src/plugins/expire/expire-plugin.c	Sun Sep 30 17:03:26 2007 +0300
@@ -89,7 +89,6 @@ static void first_nonexpunged_timestamp(
 
 static int
 expire_mailbox_transaction_commit(struct mailbox_transaction_context *t,
-				  enum mailbox_sync_flags flags,
 				  uint32_t *uid_validity_r,
 				  uint32_t *first_saved_uid_r,
 				  uint32_t *last_saved_uid_r)
@@ -122,7 +121,7 @@ expire_mailbox_transaction_commit(struct
 	i_free(xt);
 
 	if (xpr_box->module_ctx.super.
-	    	transaction_commit(t, flags, uid_validity_r,
+	    	transaction_commit(t, uid_validity_r,
 				   first_saved_uid_r, last_saved_uid_r) < 0) {
 		t_pop();
 		return -1;
diff -r fe5c19ffc119 -r 1a3604c8ee05 src/plugins/expire/expire-tool.c
--- a/src/plugins/expire/expire-tool.c	Sun Sep 30 16:57:32 2007 +0300
+++ b/src/plugins/expire/expire-tool.c	Sun Sep 30 17:03:26 2007 +0300
@@ -109,8 +109,7 @@ mailbox_delete_old_mails(struct expire_c


More information about the dovecot-cvs mailing list