On Fri, 2009-07-31 at 19:27 +0200, Thomas Hummel wrote:
On Fri, Jul 31, 2009 at 01:22:37PM -0400, Timo Sirainen wrote:
Because client thinks UID = message. If a message's UID changes, the client has no idea that it's still the same message.
Yes but what does and UID has changes from the client pint of view then ?
If you have two messages with UIDs 3 and 5, then client makes on difference between:
- UID 3 and 5 are expunged, two new mails are delivered with UIDs 6 and
- Server loses dovecot-uidlist and assigns the existing messages UIDs 6 and 7.
The message contents may be different in those cases, but client doesn't care about that. In both cases it just sees that it used to have UIDs 3 and 5 in its cache, but now server only has UIDs 6 and 7, so it goes and deletes UIDs 3 and 5 from its cache and downloads the messages with UIDs 6 and 7.
You mean something like, in its cache, the client has a mapping like
slot 1 <-> UID u slot 2 <-> UID v ...
and he sees
slot 1 <-> UID z ?
Maybe. Depends on what you mean by slot.