25 Aug
2010
25 Aug
'10
5:27 p.m.
On Aug 25, 2010, at 10:15 AM, Timo Sirainen wrote:
But if secondary server allowed changes, this is the difficult step to do correctly. For example lets say in first server:
- It rsyncs user foo
- User foo changes message A flag to \Seen
- User foo deletes message B
- User foo saves a new message C
- The server crashes
- Secondary server goes up, but 2-4 changes weren't resynced yet
- User foo logs in and changes message D's flag to \Seen
- Primary server goes back up
- You rsync .. how? If you make primary server look exactly like secondary server, you message C gets lost. If you copy new files, now message A and message D gets duplicated, because their filename changed due to the flag change. Also message B becomes undeleted.
Of course assuming this happens rarely enough, those aren't a huge problem, but the server move isn't always transparent to users and you'll get errors in Dovecot's logs.
First off, thanks. It will happen rarely (2-3x/year most likely base on prior power outages) and if a couple users get a duplicate message or unread when read issue they can file a complaint :) The transfer wouldn't be transparent - I would force them to webmail on the backup (maybe even force POP3?).
Now to figure out where the virtual user data is...sigh