The problem is most likely the same as with NFS: Server A caches data -> server B modifies data -> server A modifies data using stale cached state -> corruption. Glusterfs works with FUSE, and FUSE has quite similar problems as NFS.
With director you guarantee that the same mailbox isn't accessed simultaneously by multiple servers, so this problem goes away.
On 21.3.2012, at 18.47, James Devine wrote:
Also I don't seem to get these errors with a single dovecot machine using the shared storage and it looks like there are multiple simultaneous delivery processes running
On Wed, Mar 21, 2012 at 10:25 AM, James Devine fxmulder@gmail.com wrote:
On Wed, Mar 21, 2012 at 10:05 AM, Timo Sirainen tss@iki.fi wrote:
On 21.3.2012, at 17.56, James Devine wrote:
Anyone know how to setup dovecot with mdbox so that it can be used through shared storage from multiple hosts? I've setup a gluster volume and am sharing it between 2 test clients. I'm using postfix/dovecot LDA for delivery and I'm using postal to send mail between 40 users. In doing this, I'm seeing these errors in the logs
Dovecot assumes that the filesystem behaves the same way as regular local filesystems.
Mar 21 09:36:29 test-gluster-client2 dovecot: lda(testuser34): Error: Fixed index file /mnt/testuser34/mdbox/storage/dovecot.map.index: messages_count 272 -> 271 Mar 21 09:36:30 test-gluster-client2 dovecot: lda(testuser28): Error: Log synchronization error at seq=4,offset=3768 for /mnt/testuser28/mdbox/storage/dovecot.map.index: Append with UID 516, but next_uid = 517
Looks like gluster doesn't fit that assumption. So, the solution is the same as with NFS: http://wiki2.dovecot.org/Director
What filesystem mechanisms might not be working in this case?