6 Aug 2009 robertc   » (Master)

Dear evolution, Why are you taking 180 seconds (+- 20) to open mails ?

Dear user, I'm reading message metadata for every message in that folder, then for all the new mail that arrived while I was doing that.

Dear evolution, sqlite is good, not reading the entire maildirs in to filter mail, or open a folder, would be better.

iotop says:
  TID  PRIO  USER     DISK READ  DISK WRITE  SWAPIN     IO>
   COMMAND
14797 be/4 robertc     4.30 M/s    0.00 B/s  0.00 %  0.00 %
evolution

Dear user, I know, but I'm still the program I was before sqlite... what to do? (bugs have been filed, tuits are currently lacking).

Dear evolution, I see you have a large db, but perhaps its just your cache size?


$ ls -l
/home/robertc/.evolution/mail/imap/robertc@localhost/folders.db
-rw-r--r-- 1 robertc robertc 953131008 2009-08-06 12:23
/home/robertc/.evolution/mail/imap/robertc@localhost/folders.db
$ sqlite3
/home/robertc/.evolution/mail/imap/robertc@localhost/folders.db
SQLite version 3.6.14.2
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> pragma default_cache_size;
2000
sqlite> pragma default_cache_size=50000;
$ sqlite3
/home/robertc/.evolution/mail/imap/robertc@localhost/folders.db
SQLite version 3.6.14.2
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> pragma default_cache_size;
50000

Dear user, oooo, that feels good.

2000 - the default, is 2MB of cache. evolution was using 535m of actual memory before, this gives it 25 times the cache size. My theory is that the still present read-all-message-info limitations in evolution were causing cache thrashing. (A DB doesn't help at all unless one actually is looking at less data :).

Latest blog entries     Older blog entries

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!