On Sun, 17 Nov 2019 at 17:12:54 +0100, Jonas Smedegaard wrote: > local(INBOX.olpc): WARNING: No match for 1 vanished remote UID(s) 97. > Ignoring.
This means the remote server send a VANISHED response for a message in the “known range” (ie with UID strictly lower than the remote's cache UIDNEXT value), but that message was not synced locally so interimap can't replicate the STORE/EXPUNGE command to remove it from the local server. Details are in RFC 7162 sec. 3.2.5 and 3.2.10 :-) You can probably see an untagged VANISHED (EARLIER) response with a set containing 97 if you do a ENABLE QRESYNC b EXAMINE INBOX.olpc (QRESYNC (1225292233 1 1:100)) (1225292233 is the mailbox's UIDVALIDITY, 1 is the lowest mod-sequence, and 1:100 is an UID range containing 97. If that doesn't trigger an untagged VANISHED (EARLIER) response then replacing ‘1:100’ with ‘1:12584’ should.) > jonas@auryn:~$ interimap --config debian > jonas@auryn:~$ interimap --config debian > jonas@auryn:~$ interimap --config debian That's expected, it doesn't complain about unexpected VANISHED responses anymore because it went on. QRESYNC-based synchronization is so efficient because it's stateful, and UID 97 message disappeared before the servers could agree on a state. The mailbox's HIGHESTMODSEQ counter is increased when a message is EXPUNGed, added, flagged, etc.; once synchronization successfully terminates, the invariant is that all changes up to the cached UIDNEXT / HIGHESTMODSEQ values have been synced, so only further changes are picked up next time. (To reconcile earlier changes one needs to do a so called “full-sync” with --repair.) The server claims that message has MODSEQ 1, so I guess the VANISHED (EARLIER) response won't show up when QRESYNC's MODSEQ attribute is ≥2. That said I'm not sure server responses about that UID can be relied upon. > jonas@auryn:~$ interimap --config debian --repair > local(INBOX.olpc): WARNING: No match for modified remote UID 97. Downloading > again. That's also expected, because as we saw earlier the server sends conflicting untagged FETCH responses for that UID. -- Guilhem.
signature.asc
Description: PGP signature