Hi, "Christian Kratzer" <[EMAIL PROTECTED]> wrote: > Until such point in time that Client A syncs it's internal state with the > mailstore it will keep working with sequence numbers 1 to 10. > > You have to somehow support this in mailstores that allow concurrent access. > A frequently used solution will be to use an index file or a header in > the message store to mark messages as expunged and only rewrite the > mailbox when an exclusive lock on it has been obtained.
This is possible, but in my eyes not good. You keep a state for a session which actually is no more. As it is not advisable to keep already expunged data (e.g. it was deleted for security reasons, e.g. RFC2180 4.1.1), you can only deliver "non-content" data securely, which makes the whole system useless from an information point of view (you may "access" the message, but do not get information out of it). I'd favor a "NO command" to subsequent FETCH/STORE/SEARCH like in 4.1.2, so my question was if this is also ok for concurrent access like described in my earlier mail. If anyone could answer that, I'd be happy. > With a maildirs like message store you could actually delete the > messages on expunge but you would only rewrite your index file > to reflect new sequence numbers when you get an exclusive lock > on it. I happily say I don't have to deal with maildir et.al., but use a database instead. Anyway, protocol issues should not have to do with any implementation constraints whatsoever, so thanks for the tip, but I'll ignore it :-) Christof
