It seems like Maildir is the safest mailbox format for shared storage, but even with Maildir there are warnings about the possibility of corrupting the index files. Would it make sense to use shared storage for the maildirs themselves, but use the INDEX option in mail_location to store index files locally, and have separate index files for each Dovecot server? That would take care of the potential for index corruption, but what other strange problems would it cause?
Maybe i did it wrong, but this was my experience. I am using maildir with NSF4. One SMTP server accepts mail from the world on port 25. Another server deals with IMAP connections.
I tried doing local index files on each server. The problem i had was when the SMTP server received new mail, postfix would deliver it LMTP to dovecot on that same server, dovecot would update index files locally on the SMTP server.
The user client connected to the other IMAP server is being updated by the index files on the server they are connected to. The user never received notification there was a new email physically sitting in their /new/ folder on the NSF4 server.
I went back to storing index files on the NSF4 server.
The point of the story, if you store index files locally be aware that local copies of index files have no mechanism to auto update because something happened to another index file stored locally somewhere else.