MBOX-Line: From jkt at flaska.net  Fri Dec 28 23:51:18 2012
To: imap-protocol@u.washington.edu
From: =?iso-8859-1?Q?Jan_Kundr=E1t?= <jkt@flaska.net>
Date: Fri Jun  8 12:34:50 2018
Subject: [Imap-protocol] Re: Missing UIDNEXT during mailbox synchronization
In-Reply-To: <1356723190.15576.140661171078629.69B791C0@webmail.messagingengine.com>
References: <db123879-1082-4911-b7ce-3a861d62217a@flaska.net>
	<20121228112725.Horde.cM7EjLQoqQDix9dQMs5KcA1@bigworm.curecanti.org>
	<1356723190.15576.140661171078629.69B791C0@webmail.messagingengine.com>
Message-ID: <ea3f11ee-43f5-458a-9c38-c8fab12e90ef@flaska.net>

On Friday, 28 December 2012 20:33:10 CEST, Bron Gondwana wrote:
> The more interesting question is: what do you need to know it for anyway?

It's needed for an old heuristic -- if UIDVALIDITY is the same and (exists - old_exists) == (uidnext - old_uidnext), then the mailbox has only seen new arrivals since the last time, so the client doesn't have to fetch the whole UID-seq mapping once again, just the new arrivals. (If the first difference is higher, then the server is broken or the local cache was corrupted, so a revert to a dumb sync.)

Which is also the reason why my code checks for missing UIDNEXT -- when it's not available, this heuristic cannot work and we have to go back to full UID syncing.

Cheers,
Jan

-- 
Trojit?, a fast Qt IMAP e-mail client -- http://trojita.flaska.net/

