On Mon, 11 Aug 2003, Pete Maclean wrote: > A related issue is that I feel the need for some clarification on the whole > business of commands completely succeeding or completely failing. I have > come to regard this as an important dictum for IMAP implementation as it > has been mentioned a few times on this list. (For example, in a message > from April 2000, Mark stated "IMAP guarantees that commands succeed > completely or fail completely.") However I can find no statement to this > effect in RFC 3501 and am not sure just what it means to fail or succeed > completely?
I just got back from vacation and saw this. The quoted comment from me is correct. Note, however, the "unsolicited data" model in IMAP, in which a server can unilaterally send data that was not requested from the client. Thus, in a FETCH, it is quite possible for some data to be fetched and then get a NO. The NO still means that that the command "failed completely." > Given that Mark has also made it clear that there is no > problem with a command failing but still resulting in useful data being > sent to the client, I have tentatively concluded that the rule pertains > only to commands that change multiple and non-atomic things on the > server. Obvious contenders are APPEND, COPY, DELETE, EXPUNGE and STORE, Right. > plus instances of FETCH that have the side effect of setting \Seen > flags. Wrong, and yes this is a design wart in IMAP. Fortunately, it's only an issue with binary fetching of multiple messages. -- Mark -- http://staff.washington.edu/mrc Science does not emerge from voting, party politics, or public debate. Si vis pacem, para bellum.
