[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kmail-devel
Subject:    Re: Serious Kmail memory problems (v1.0.29.1)
From:       Don Sanders <don () sanders ! org>
Date:       2000-04-27 4:03:12
[Download RAW message or body]

Using 1.1.41 it takes about 60 seconds to remove a folder with 2000 messages
(which was 200MB) on my Celereon 450 with 64MB (well the limiting speed here is
probably the hard drive). This could well be a big improvement over 1.0.x as I
remember it would refresh the header list of each message was processed which
was very slow.

I doubt moving the mail in chunks would result significant improvement, the
writes are probably already being buffered.

The real problem is that the message bodies are being copied at all. If you
look at the situation with a filesystem (that resides on a single physical
disk) then mving files from one directory to another doesn't actually move the
contents of those files it just updates the entries in their respective
directories.

In order to do something similar in KMail we will need to change the
file format used to store and index mails. Specifically one would use a btree
based file format to store all the mails in then store index files for each
KMail folder in their own seperate file (storing these in a btree would be a
good idea too).

There are the following obstacles preventing us from doing that.
1) It would require using basically a proprietary format for storing mail in.
2) I don't know of any free software implementation of a btree 'database'.
Maybe gdbm is one, but I believe it's authors have decided that database is
proprietary. (There are lots of commerical ones I used one
Novell Btrieve, to do some commerical programming when I was a kid).
3) It's a lot of work (perhaps not terribly difficult for someone who knows
what the are doing but definitely time consuming).

In short the situation might be better in 1.1.41 (you really should try that
rather than posting 1.0.x bugs on this list, as this list is for 1.1.x
development). But making it really fast (it should only take a fraction of a
second using a btree based storage system) is a lot of work and isn't going to
happen in the near future.

It would be a very cool project if someone had time to do it though.

BFN,
Don


On Tue, 27 Apr 1999, Casey Allen Shobe wrote:
> On Wed, 26 Apr 2000, Daniel Naber wrote:
> > On Don, 27 Apr 2000, Casey Allen Shobe wrote:
> > 
> > > If you want to empty a folder, why not just rm it, and then recreate it? 
> > > Gee. that would take 2 seconds.
> > 
> > But your mails would be gone, with this method they're in the trash folder.
> > Maybe we could add another menu entry "Really delete"? For now, you'll
> > have to use "Remove".
> 
> Ok, how about moving the entire block of emails at once instead of one by one? 
> Move a 5mb chunk into trash instead of 5000 1kb chunks?
> 
> -- 
> - Rivyn [ Casey Allen Shobe ]
> - rivyn@mailandnews.com [ ICQ: 1494523 ]
> - http://lightning.prohosting.com/~rivyn

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic