Subject: [lemonade] Persistent UIDs (comments on draft-maes-lemonade-monoincuid-00.txt)

From: Alexey Melnikov <[email-masked]>
Date: Thu, 14 Jul 2005 14:53:28 +0100

After quickly scanning through the draft I have some comments. I list 
the specific comments first.

 >2.1.     UID
 >  
 >   As specified in RFC 3501, section 2.3.1.1, "The unique identifier of
 >   a message MUST NOT change during the session, and SHOULD NOT change
 >   between sessions."  Changing the UID of email messages imposes a very
 >  heavy computational and bandwidth burden on a mobile client. For a 
 >   server compliant to MONOINCUID, the UID MUST always monotonically
 >   increase.

My understanding of RFC 3501 that any server that violates this MUST 
requirement is not an IMAP4rev1 server. So this should be dropped.

 >It MUST remain unchanged between sessions and monotonically
 >   increase.

"MUST ... monotonically increase" just repeats the previous sentence.

 > It MAY also increase without gaps in its sequence.

I don't understand the reason for this sentence. If two messages got 
delivered and the first of them got deleted and expunged, surely there 
is would be a gap?
=========
More general comments about the draft:
1). The document defines a new capability that describes mailstore 
capabilities. There were some previous discussions about defining an 
IMAP extension for listing mailstore capabilities. This need further 
investigation.

2). Some IMAP servers support multiple mailstores that have different 
characteristics and different mailstores may be accessed at the same 
time using different namespaces (RFC 2342). Note, that 
draft-maes-lemonade-monoincuid-00.txt can't support that: it requires 
that all mailstores are able to have persistent UIDs.

3). Mark Crispin has recently updated UIDPLUS (RFC 2359) in 
draft-crispin-imap-rfc2359bis-04.txt. The draft adds UIDNOTSTICKY 
response code, whichi is exactly the opposite of MONOINCUID capability 
and addresses the problem described in item 2) above.

4). Combining 2) and 3) together, I am thinking that a better approach 
would be to define an extension to NAMESPACE command that can list if a 
mailstore under a particular namespace allows for persistent UIDs, 
something like this:

        S: * NAMESPACE (("" "/" "PERSISTUID"))(("Other Users/" "/" 
"PERSISTUID")) (("News/" "/"))

(i.e. all personal mailboxes allow for persistent UIDs and "News" don't)

Thoughts?

Alexey
__________________________________________
Isode M-Box Message Store developer
http://www.isode.com/products/m-box.html

IETF standard related pages:
http://www.melnikov.ca/mel/devel/Links.html

Personal Home Page: http://www.melnikov.ca
__________________________________________

_______________________________________________
lemonade mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/lemonade