Patrick O'Callaghan wrote: > Any distributed system is subject to partial failure, i.e. one part > stops working or loses communication with another part. If data is in > the process of being moved between the two parts when that happens, the > designer has to decide between allowing data to be lost and opening the > possibility of duplicating it. Systems which aim for reliability > invariably choose the latter option, because the mess can always be > cleaned up later. Sometimes the cleanup is automatic (e.g. transactional > databases, many remote filesystems) and sometimes it's "manual" (i.e. > visible to the end user). AFAIK all email systems fall into the latter > category because a) it's not that big a deal, and b) doing it > automatically would be complicated and could introduce other errors. > > poc
It's not hard to think on an IMAP server where the client is moving the emails using MOVE, the server is storing the files in maildir and thus it simply performs a rename() and the underlying filesystem is journaled (nothing fancy, just ext3 would do) and makes rename(2) atomic even in case of a server crash. Sometimes it's not hard to make things that work properly. But then nobody would notice :) _______________________________________________ evolution-list mailing list evolution-list@gnome.org To change your list options or unsubscribe, visit ... https://mail.gnome.org/mailman/listinfo/evolution-list