Re: [Extra] [EXT] Benjamin Kaduk's No Objection on draft-ietf-extra-imap-fetch-preview-09: (with COMMENT)

Benjamin Kaduk <kaduk@mit.edu> Fri, 25 September 2020 00:07 UTC

Return-Path: <kaduk@mit.edu>
X-Original-To: extra@ietfa.amsl.com
Delivered-To: extra@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 7EBA43A0942; Thu, 24 Sep 2020 17:07:03 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.919
X-Spam-Level:
X-Spam-Status: No, score=-1.919 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id yetEMC6212Tq; Thu, 24 Sep 2020 17:07:02 -0700 (PDT)
Received: from outgoing.mit.edu (outgoing-auth-1.mit.edu [18.9.28.11]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B9F473A0940; Thu, 24 Sep 2020 17:07:01 -0700 (PDT)
Received: from kduck.mit.edu ([24.16.140.251]) (authenticated bits=56) (User authenticated as kaduk@ATHENA.MIT.EDU) by outgoing.mit.edu (8.14.7/8.12.4) with ESMTP id 08P06smL022952 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 24 Sep 2020 20:06:56 -0400
Date: Thu, 24 Sep 2020 17:06:53 -0700
From: Benjamin Kaduk <kaduk@mit.edu>
To: Michael Slusarz <michael.slusarz@open-xchange.com>
Cc: Benjamin Kaduk via Datatracker <noreply@ietf.org>, The IESG <iesg@ietf.org>, draft-ietf-extra-imap-fetch-preview@ietf.org, extra-chairs@ietf.org, extra@ietf.org, Bron Gondwana <brong@fastmailteam.com>
Message-ID: <20200925000653.GK89563@kduck.mit.edu>
References: <160080490190.9778.18063295243922914906@ietfa.amsl.com> <954798175.17578.1600838053373@appsuite.open-xchange.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <954798175.17578.1600838053373@appsuite.open-xchange.com>
User-Agent: Mutt/1.12.1 (2019-06-15)
Archived-At: <https://mailarchive.ietf.org/arch/msg/extra/5Uru0xZLmAzGQ_TXUQv_Tn7T64w>
Subject: Re: [Extra] [EXT] Benjamin Kaduk's No Objection on draft-ietf-extra-imap-fetch-preview-09: (with COMMENT)
X-BeenThere: extra@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Email mailstore and eXtensions To Revise or Amend <extra.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/extra>, <mailto:extra-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/extra/>
List-Post: <mailto:extra@ietf.org>
List-Help: <mailto:extra-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/extra>, <mailto:extra-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 25 Sep 2020 00:07:04 -0000

Hi Michael,

On Tue, Sep 22, 2020 at 11:14:13PM -0600, Michael Slusarz wrote:
> > On 09/22/2020 2:01 PM Benjamin Kaduk via Datatracker <noreply@ietf.org> wrote:
> >
> > ----------------------------------------------------------------------
> > COMMENT:
> > ----------------------------------------------------------------------
> > 
> > I agree with Martin D's comment.
> 
> Addressed in a separate message.
> 
> 
> > I was a little surprised to not see any mention of the analogous JMAP
> > capability (but I guess I'm not actually sure whether one or the other
> > "came first").
> 
> Addressed in a separate message.
> 
> 
> > Section 3.3
> > 
> >    The server SHOULD limit the length of the preview text to 200 preview
> >    characters.  This length should provide sufficient data to generally
> >    support both various languages (and their different average word
> >    lengths) and diverse client display size requirements.
> > 
> > Does the internationalization directorate agree with this analysis?
> > 
> >    format, size, and filename.  This descriptive text is not a product
> >    of the message body itself but is rather auto-generated data by the
> >    server, and should thus use the rules defined for human-generated
> >    text described in the LANGUAGE extension (if supported on the
> >    server).
> > 
> > nit: is "human-generated text" the right description here?  A quick read
> > of RFC 5255 suggests that "generated for human consumption" is usually
> > the appropriate characterization of text affected by the langauge
> > selection.
> 
> Oops ... I think "human-generated" is just fundamentally wrong here.  We are discussing text that is meant for human consumption, but it is not generated BY humans (it's generated programmatically by the server).
> 
> My re-read of RFC 5255 indicates that "human-readable text" is the phrase that is used there.  And that's what we already use elsewhere in that paragraph.  So I think this is just a typo, and should be this:
> 
>   and should thus use the rules defined for human-readable text described in the LANGUAGE extension

+1, thanks

> 
> > Section 4.2
> > 
> >    Once this initial FETCH is complete, the client can then issue FETCH
> >    requests, without the LAZY modifier, to load the preview data for the
> > 
> > nit: "PREVIEW data item" would be more consistent with the previous
> > paragraph (and make it harder to skip over the fact that the preview
> > data is being FETCHed, not the entire message).
> 
> Agreed.
> 
> 
> > 
> >    messages in which preview data was not returned.  It is RECOMMENDED
> >    that these FETCH requests be issued in small batches, e.g. 50
> >    messages per FETCH command, since preview generation may be expensive
> >    and a single large request may exceed server resource limits.
> > 
> > nit: comma after "e.g.".
> 
> OK.
> 
> 
> > Section 5
> > 
> > I'd consider updating the dates in the examples to be closer to the
> > publication date of the document.
> 
> Fair enough.  Although the old dates are a valuable lesson (at least to me) on how long it sometimes takes to move a draft through the process :)

Indeed ... you would probably not be surprised to find out how I have
learned that I should look for it.

> 
> > Section 8
> > 
> > Does it go without saying that a given user should only have access to
> > preview content for messages that it has access to the full content of?
> 
> The base IMAP4rev1 document doesn't even have this kind of warning.  If we think that this is necessary here then we should probably also push this idea to Alexey and Barry as they are working on the new IMAP revision, since this warning would apply to message data in general.
> 
> I don't believe this draft fundamentally changes anything in IMAP.  If you can access a mail in a mailbox, you can access its full body.  This extension just provides an alternative view of that body data, so it doesn't provide a novel way of accessing data.
> 

[handled in a different thread]

> 
> >    results are stored on the server after generation.  Servers MAY limit
> >    the resources that preview generation uses.  In order to mitigate
> > 
> > Would this result in the server generating empty-string previews for
> > some messages that it would otherwise have produced a non-empty preview
> > for?  I'd like to see a little more description of expected server
> > behavior in the case of excessive resource usage for preview generation.
> 
> For historical context: this is the exact issue that was discussed and addressed in the last draft (-09).  Previously, we would have allow a NIL response in this case that could have been returned in this situation.  However, we decided instead that a non-LAZY request must always return some sort of determinative response.
> 
> Preview data is "nice-to-have" info, as opposed to "must have" information like the actual message bodies.  As such, I feel it needs to be left up to the server to decide in extreme cases that it would rather provide no preview, which is an annoyance, than causing access to the mail data to be affected, which is a critical problem.
> 
> It may not be preview generation that is *causing* the excessive resource usage.  It could be the system is overloaded in general due to other problems.  The server is best positioned to determine which ancillary activities it may have to curtail in order to provide the basic mail access, and it is reasonable to predict that preview generation may be one of those activities.
> 
> As to what the expected server behavior should be?  I think that's dependent on the reasons behind the excessive resource usage.  The document defines a server's options: send nothing or send something less than a perfect preview.  The server should make the decision based on the information available to it; I don't think it's the job of this document to demand a specific kind of response.

I agree: we should not demand particular behavior.  I was wondering if we
wanted to give an example of server behavior without mandating it, e.g.,
"such resource limitations might, for example, cause a server to return a
preview that is the empty string for a message that otherwise would have
had a nonempty preview".

But it's not very important in the grand scheme of things and I won't push
further for it.

Thanks for the updates and explanations,

Ben