Hello there!

I'm just looking to sanity check something, as I've gone over my MySQL configuration, recreated (and moved to faster storage) my databases + whatnot, to no avail.

Basics of the hardware: Q6600 @ 3.1GHz, two cores allocated to a vmWare Workstation 7.5.4 guest on a Windows 7 x64 host. There are two 7200 RPM SATA-2 spindles on the machine, and the virtual hard disks within the guest environment are placed on different spindles to help ensure optimal performance.

The guest OS is Slackware 13.37 all patched up, 3GB RAM with HighMem kernel using a 2G/2G split, 32-bit environment. Kernel is 2.6.35.7.

I had to build with the git version because rc2 doesn't compile at all on this platform.

Dependency versions:

gmime-2.4.25
glib2-2.28.8
libevent-2.0.12
libsieve-2.2.7
libzdb-2.8.1
mysql-5.1.46-i486-2

--- my.cnf ---
[mysqld]
port            = 3306
socket          = /var/run/mysql/mysql.sock
skip-locking
key_buffer_size = 256M
max_allowed_packet = 20M
table_open_cache = 256
sort_buffer_size = 1M
read_buffer_size = 1M
read_rnd_buffer_size = 4M
myisam_sort_buffer_size = 64M
thread_cache_size = 8
query_cache_size= 16M
thread_concurrency = 4
tmpdir          = /tmp/
#log-update     = /path-to-dedicated-directory/hostname

innodb_data_home_dir = /mail/db
innodb_data_file_path = ibdata1:40M:autoextend
innodb_log_group_home_dir = /mail/db
# You can set .._buffer_pool_size up to 50 - 80 %
# of RAM but beware of setting memory usage too high
innodb_buffer_pool_size = 256M
innodb_additional_mem_pool_size = 20M
# Set .._log_file_size to 25 % of buffer pool size
innodb_log_file_size = 64M
innodb_log_buffer_size = 8M
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50

---------

The mysqld process has consumed nearly an hour of CPU time during this process. dbmail is configured to use local sockets rather than network I/O.

I'm using the PERL MailTools http://search.cpan.org/dist/MailTools/
to import about 10 folders' worth of email, totaling about 560MB in raw size, constituting about 23,000 emails. The script basically creates the folders, and does an APPEND for each email. It's bog simple.

I DROP the database, recreated it, added the one user, verify DBMail accepts authentication for the newly created mailbox, and then do the import. The MySQL files live on a freshly formatted ext4 filesystem.

The import takes Dovecot (MailDir or mdbox format), or Panda IMAP (mix) about six minutes to complete.

DBMail 3 took 4h 23m. Casual inspection of the system showed modestly high CPU usage in mysqld and dbmail-imapd (as well as the import perl command on occasion), but the Load Average didn't get too close to 1.0, let alone 2.0, which concerns me that I might have hit some kind of "busy wait" pathology.

Have I picked the "wrong day" to check out a git version? Have I flubbed the MySQL configuration? The documentation says 250 inbound emails/second is possible - is this with a vast cluster comprised of very fast CPU/RAM/SSD hard disks?

I am doing some feature/performance analysis to narrow down a mail backed selection, and DBMail sounds truly appealing. I'd like to find out the problem to give this a fair evaluation.

Cheers!

=R=
_______________________________________________
DBmail mailing list
[email protected]
http://mailman.fastxs.nl/cgi-bin/mailman/listinfo/dbmail

Reply via email to