Bug#268758: Renaming a large (maildir) mailbox is slow
tag 268758 unreproducible moreinfo
quit
* Daniel Burrows [Sat, 28 Aug 2004 19:29:49 -0400]:
> It appears that kmail renames a mailbox by creating a new mailbox,
> then moving each message of the old mailbox to the new mailbox. I say
> this because renaming a somewhat large mailbox (containing about 4000
> messages) takes around a minute of hard drive thrashing on my computer.
> Since the messages are just files in the filesystem, I suggest that it
> would be worthwhile for kmail to avail itself of the rename(2) system
> call, and to use it on the mailbox directory (ie: don't move every
> message file individually!).
hi Daniel, I can't reproduce. I rename a big maildir folder and it
happens immediately, plus the strace shows this:
rename("/home/adeodato/Mail/devel22", "/home/adeodato/Mail/devel33") = 0
rename("/home/adeodato/Mail/.devel22.index", "/home/adeodato/Mail/.devel33.index") = 0
rename("/home/adeodato/Mail/.devel22.index.sorted", "/home/adeodato/Mail/.devel33.index.sorted") = 0
rename("/home/adeodato/Mail/.devel22.index.ids", "/home/adeodato/Mail/.devel33.index.ids") = 0
rename("/home/adeodato/Mail/.devel22.directory", "/home/adeodato/Mail/.devel33.directory") = -1 ENOENT (No such file or directory)
access("/home/adeodato/Mail/devel33", R_OK|W_OK|X_OK) = 0
access("/home/adeodato/Mail/devel33/new", R_OK|W_OK|X_OK) = 0
access("/home/adeodato/Mail/devel33/cur", R_OK|W_OK|X_OK) = 0
access("/home/adeodato/Mail/devel33/tmp", R_OK|W_OK|X_OK) = 0
access("/home/adeodato/Mail/.devel33.index", F_OK) = 0
lstat64("/home/adeodato/Mail/.devel33.index", {st_mode=S_IFREG|0600, st_size=3689375, ...}) = 0
lstat64("/home/adeodato/Mail/devel33/new", {st_mode=S_IFDIR|0700, st_size=48, ...}) = 0
lstat64("/home/adeodato/Mail/devel33/cur", {st_mode=S_IFDIR|0700, st_size=322088, ...}) = 0
open("/home/adeodato/Mail/.devel33.index", O_RDWR|O_LARGEFILE) = 13
I have noticed, though, that when I copied that big folder from
~/.mail/whatever to ~/Mail, and then opened KMail, it went for a
minute or so with intense hard drive access (to create the indexes, I
imagine).
perhaps you were renaming a folder that lacked those indexes, and thus
the hard drive activity was the result of this and not of the rename
action?
thanks,
--
Adeodato Simó
EM: asp16 [ykwim] alu.ua.es | PK: DA6AE621
Hanlon's Razor: Never attribute to malice that which is adequately
explained by stupidity.
Reply to: