changeset 5032:b6b2b1d98f42 HEAD

Removed mail_read_mmaped setting. It's a pretty useless setting and apparently it can also be buggy.
author Timo Sirainen <tss@iki.fi>
date Thu, 18 Jan 2007 18:57:43 +0200
parents 8661cc109e90
children 612b5c358d2e
files dovecot-example.conf src/lib-storage/index/index-storage.c src/lib-storage/index/index-storage.h src/lib-storage/index/maildir/maildir-mail.c src/lib-storage/index/mbox/mbox-file.c src/lib-storage/index/mbox/mbox-lock.c src/lib-storage/mail-storage.c src/lib-storage/mail-storage.h src/master/mail-process.c src/master/master-settings-defs.c src/master/master-settings.c src/master/master-settings.h
diffstat 12 files changed, 2 insertions(+), 34 deletions(-) [+]
line wrap: on
line diff
--- a/dovecot-example.conf	Thu Jan 18 18:56:57 2007 +0200
+++ b/dovecot-example.conf	Thu Jan 18 18:57:43 2007 +0200
@@ -267,11 +267,6 @@
 # variables you can use.
 #mail_log_prefix = "%Us(%u): "
 
-# Use mmap() instead of read() to read mail files. read() seems to be a bit
-# faster with my Linux/x86 and it's better with NFS, so that's the default.
-# Note that OpenBSD 3.3 and older don't work right with mail_read_mmaped = yes.
-#mail_read_mmaped = no
-
 # Don't use mmap() at all. This is required if you store indexes to shared
 # filesystems (NFS or clustered filesystem).
 #mmap_disable = no
--- a/src/lib-storage/index/index-storage.c	Thu Jan 18 18:56:57 2007 +0200
+++ b/src/lib-storage/index/index-storage.c	Thu Jan 18 18:57:43 2007 +0200
@@ -385,8 +385,6 @@
 
 	ibox->next_lock_notify = time(NULL) + LOCK_NOTIFY_INTERVAL;
 	ibox->commit_log_file_seq = 0;
-	ibox->mail_read_mmaped =
-		(storage->flags & MAIL_STORAGE_FLAG_MMAP_MAILS) != 0;
 
 	ibox->md5hdr_ext_idx =
 		mail_index_ext_register(index, "header-md5", 0, 16, 1);
--- a/src/lib-storage/index/index-storage.h	Thu Jan 18 18:56:57 2007 +0200
+++ b/src/lib-storage/index/index-storage.h	Thu Jan 18 18:57:43 2007 +0200
@@ -72,7 +72,6 @@
 	unsigned int sent_diskspace_warning:1;
 	unsigned int sent_readonly_flags_warning:1;
 	unsigned int notify_pending:1;
-	unsigned int mail_read_mmaped:1;
 	unsigned int move_to_memory:1;
 	unsigned int fsync_disable:1;
 };
--- a/src/lib-storage/index/maildir/maildir-mail.c	Thu Jan 18 18:56:57 2007 +0200
+++ b/src/lib-storage/index/maildir/maildir-mail.c	Thu Jan 18 18:57:43 2007 +0200
@@ -60,13 +60,8 @@
 		return NULL;
 	}
 
-	if (mbox->ibox.mail_read_mmaped) {
-		return i_stream_create_mmap(fd, default_pool,
-					    MAIL_MMAP_BLOCK_SIZE, 0, 0, TRUE);
-	} else {
-		return i_stream_create_file(fd, default_pool,
-					    MAIL_READ_BLOCK_SIZE, TRUE);
-	}
+	return i_stream_create_file(fd, default_pool,
+				    MAIL_READ_BLOCK_SIZE, TRUE);
 }
 
 static int maildir_mail_stat(struct mail *mail, struct stat *st)
--- a/src/lib-storage/index/mbox/mbox-file.c	Thu Jan 18 18:56:57 2007 +0200
+++ b/src/lib-storage/index/mbox/mbox-file.c	Thu Jan 18 18:57:43 2007 +0200
@@ -87,11 +87,6 @@
 	if (mbox->mbox_writeonly) {
 		mbox->mbox_file_stream =
 			i_stream_create_from_data(default_pool, NULL, 0);
-	} else if (mbox->ibox.mail_read_mmaped) {
-		mbox->mbox_file_stream =
-			i_stream_create_mmap(mbox->mbox_fd, default_pool,
-					     MAIL_MMAP_BLOCK_SIZE,
-					     0, 0, FALSE);
 	} else {
 		mbox->mbox_file_stream =
 			i_stream_create_file(mbox->mbox_fd, default_pool,
--- a/src/lib-storage/index/mbox/mbox-lock.c	Thu Jan 18 18:56:57 2007 +0200
+++ b/src/lib-storage/index/mbox/mbox-lock.c	Thu Jan 18 18:57:43 2007 +0200
@@ -555,11 +555,6 @@
 	if (mbox_lock_list(ctx, F_UNLCK, 0, 0) < 0)
 		ret = -1;
 
-	if (ctx->mbox->ibox.mail_read_mmaped) {
-		/* make sure we don't keep mmap() between locks */
-		mbox_file_close_stream(ctx->mbox);
-	}
-
 	ctx->mbox->mbox_lock_id += 2;
 	ctx->mbox->mbox_lock_type = F_UNLCK;
 	return ret;
--- a/src/lib-storage/mail-storage.c	Thu Jan 18 18:56:57 2007 +0200
+++ b/src/lib-storage/mail-storage.c	Thu Jan 18 18:57:43 2007 +0200
@@ -78,8 +78,6 @@
 		*flags_r |= MAIL_STORAGE_FLAG_MMAP_NO_WRITE;
 	if (getenv("DOTLOCK_USE_EXCL") != NULL)
 		*flags_r |= MAIL_STORAGE_FLAG_DOTLOCK_USE_EXCL;
-	if (getenv("MAIL_READ_MMAPED") != NULL)
-		*flags_r |= MAIL_STORAGE_FLAG_MMAP_MAILS;
 	if (getenv("MAIL_SAVE_CRLF") != NULL)
 		*flags_r |= MAIL_STORAGE_FLAG_SAVE_CRLF;
 
--- a/src/lib-storage/mail-storage.h	Thu Jan 18 18:56:57 2007 +0200
+++ b/src/lib-storage/mail-storage.h	Thu Jan 18 18:57:43 2007 +0200
@@ -19,8 +19,6 @@
 	MAIL_STORAGE_FLAG_MMAP_NO_WRITE		= 0x08,
 	/* Remember message headers' MD5 sum */
 	MAIL_STORAGE_FLAG_KEEP_HEADER_MD5	= 0x10,
-	/* Use mmap() for reading mail files. */
-	MAIL_STORAGE_FLAG_MMAP_MAILS		= 0x20,
 	/* Use CRLF linefeeds when saving mails. */
 	MAIL_STORAGE_FLAG_SAVE_CRLF		= 0x40,
 	/* The storage points to shared namespaces */
--- a/src/master/mail-process.c	Thu Jan 18 18:56:57 2007 +0200
+++ b/src/master/mail-process.c	Thu Jan 18 18:57:43 2007 +0200
@@ -225,8 +225,6 @@
 
 	if (set->mail_save_crlf)
 		env_put("MAIL_SAVE_CRLF=1");
-	if (set->mail_read_mmaped)
-		env_put("MAIL_READ_MMAPED=1");
 	if (set->mmap_disable)
 		env_put("MMAP_DISABLE=1");
 	if (set->mmap_no_write)
--- a/src/master/master-settings-defs.c	Thu Jan 18 18:56:57 2007 +0200
+++ b/src/master/master-settings-defs.c	Thu Jan 18 18:57:43 2007 +0200
@@ -69,7 +69,6 @@
 	DEF(SET_BOOL, mail_full_filesystem_access),
 	DEF(SET_INT, mail_max_keyword_length),
 	DEF(SET_BOOL, mail_save_crlf),
-	DEF(SET_BOOL, mail_read_mmaped),
 	DEF(SET_BOOL, mmap_disable),
 	DEF(SET_BOOL, mmap_no_write),
 	DEF(SET_BOOL, dotlock_use_excl),
--- a/src/master/master-settings.c	Thu Jan 18 18:56:57 2007 +0200
+++ b/src/master/master-settings.c	Thu Jan 18 18:57:43 2007 +0200
@@ -216,7 +216,6 @@
 	MEMBER(mail_full_filesystem_access) FALSE,
 	MEMBER(mail_max_keyword_length) 50,
 	MEMBER(mail_save_crlf) FALSE,
-	MEMBER(mail_read_mmaped) FALSE,
 	MEMBER(mmap_disable) FALSE,
 #ifdef MMAP_CONFLICTS_WRITE
 	MEMBER(mmap_no_write) TRUE,
--- a/src/master/master-settings.h	Thu Jan 18 18:56:57 2007 +0200
+++ b/src/master/master-settings.h	Thu Jan 18 18:57:43 2007 +0200
@@ -77,7 +77,6 @@
 	bool mail_full_filesystem_access;
 	unsigned int mail_max_keyword_length;
 	bool mail_save_crlf;
-	bool mail_read_mmaped;
 	bool mmap_disable;
 	bool mmap_no_write;
 	bool dotlock_use_excl;