On 17 Nov 07, at 0909, Rob Mueller wrote:
One thing that's worth noting for ZFS-ites is that on ZFS, you can have multiple writer threads in a file simultaneously, which UFS can only do for directio under certain conditions I can't recall. That's a win for overlapping transactions into a file-based database. We're not hitting mailboxes.db remotely rapidly enough for this to be an issue, but I can imagine it being so for big shops. In production releases of ZFS fsync() essentially triggers sync() (fixed in Solaris Next). So if you anticipate a lot of writes (and hence fsync()s) to mailboxes.db then you don't want mailboxes.db in the same ZFS filesystem as things with lots of un-sync'd writes going on. I've broken up /var/imap for ease of taking and rolling back snapshots, but it has the handy side-effect of isolating delivery.db and mailboxes.db from all the metadata partitions. In my darker moments, by the way, I'm tempted to put deliver.db into tmpfs. For planned reboot I could copy it somewhere stable, and I could periodically dump it out to disk. But if I lost it, the consequences aren't serious, and it's most of the write load through that particular filesystem. ian mailhost-new# zfs list -t filesystem | grep imap; df /var/imap/proc pool1/mailhost-space/imap 1.34G 24.6G 346M /var/imap pool1/mailhost-space/imap-seen 105M 24.6G 22.4M /var/imap/user pool1/mailhost-space/meta-partition-1 2.48G 24.6G 972M /var/imap/meta-partition-1 pool1/mailhost-space/meta-partition-2 12.4G 24.6G 4.82G /var/imap/meta-partition-2 pool1/mailhost-space/meta-partition-3 4.86G 24.6G 1.60G /var/imap/meta-partition-3 pool1/mailhost-space/meta-partition-7 5.60G 24.6G 1.41G /var/imap/meta-partition-7 pool1/mailhost-space/meta-partition-8 14.0G 24.6G 5.39G /var/imap/meta-partition-8 pool1/mailhost-space/meta-partition-9 1.08G 24.6G 415M /var/imap/meta-partition-9 pool1/mailhost-space/sieve 5.26M 24.6G 1.62M /var/imap/sieve /var/imap/proc (swap ): 514496 blocks 2356285 files mailhost-new#
|
---- Cyrus Home Page: http://cyrusimap.web.cmu.edu/ Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html