The mdbox-format with the altstorage-feature is quite nice and important.
But we're having much more then >> 30 TB of maildata and doing an fsck on huge partitions takes too much (down-) time for our mailsystem.
It would be much easier, if Dovecot would be able to use at least THREE storage-paths for his m-Files (and not just TWO like now).
Having an altstorage1 and altstorage2, we would be able to move away all mails from on altstorage-mountpoint, we could put this storage-moungpoint into "maintenance" and do an fsck without Downtime for Dovecot.
It would be nice having a doveadm-feature to put a altstorage-path in "maintenance-mode", so to move easily away all m-files to other alt-storage-paths and to let Dovecot know not to use this locked partition.
Having even more then 3 storage-paths would be nice for huge setups: In this case we could easily use different SMALLER partitions without having just two or three huge partitions > 15 TB.
The architecture of the altstorage-system is nice and simple. Wouldn't it be easily possible to look (at least) in three, then just in two places for a m-file?
What about a "hash_dir"-system for the storage? What about a configuration-parameter like
altstorage_dirs=4
which would mean, that there are 4 storage-mountpoints that could be addressed by "%m":
mail_location = mdbox:/vmail/%d/%n/mdbox:altstorage/alt/%m/%d/%n
In this case, Dovecot could easily use all existing partitions automatically "round-robin".
Or maybe it would be better to tell Dovecot the partitions by:
altstorage_dirs_existing = 1,2,3,4 altstorage_dirs_newmail = 1,4
so it would be very easy to tell Dovecot in which partitions he has to look for m-files and where he is allowed to save round-robin new e-mails. With this setup it's easy to put a partition in maintenance mode.
Peer
-- Heinlein Support GmbH Schwedter Str. 8/9b, 10119 Berlin
http://www.heinlein-support.de
Tel: 030 / 405051-42 Fax: 030 / 405051-19
Zwangsangaben lt. §35a GmbHG: HRB 93818 B / Amtsgericht Berlin-Charlottenburg, Geschäftsführer: Peer Heinlein -- Sitz: Berlin