Re: [Jmap] Best vs Good enough - adoption of JMAP

Ned Freed <ned.freed@mrochek.com> Wed, 26 April 2017 19:22 UTC

Return-Path: <ned.freed@mrochek.com>
X-Original-To: jmap@ietfa.amsl.com
Delivered-To: jmap@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id F0417126CE8 for <jmap@ietfa.amsl.com>; Wed, 26 Apr 2017 12:22:28 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.003
X-Spam-Level:
X-Spam-Status: No, score=-2.003 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RP_MATCHES_RCVD=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=mrochek.com
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 yeG1l_daE6na for <jmap@ietfa.amsl.com>; Wed, 26 Apr 2017 12:22:28 -0700 (PDT)
Received: from mauve.mrochek.com (mauve.mrochek.com [68.183.62.69]) (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 F04531201FA for <jmap@ietf.org>; Wed, 26 Apr 2017 12:22:27 -0700 (PDT)
Received: from dkim-sign.mauve.mrochek.com by mauve.mrochek.com (PMDF V6.1-1 #35243) id <01QDMNWNTXDS009N7F@mauve.mrochek.com> for jmap@ietf.org; Wed, 26 Apr 2017 10:24:22 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=mrochek.com; s=mauve; t=1493227461; bh=qA+gbDitxIqFf1HzdYt0T9C2J/bmxO7IsRMSGhePi1U=; h=Cc:Date:From:Subject:In-reply-to:References:To; b=GWR5vt2CDWeYr8wOcRc7VyiI/xRuruSmIBcM4rTPmmN0OIIsu0IZSVE9b+WPP3RIz OcHQ3z5b/7eB5DkyGx82xcT1eKItltDlnbde4yEGlbGXBHqbOJ4d4Cp0LFZ5JXFtFE fOsO9vqJ9YUb+9PQZ9P8TXvwZDLSHmGhHrf1at5w=
MIME-version: 1.0
Content-transfer-encoding: 7bit
Content-type: TEXT/PLAIN; CHARSET="us-ascii"
Received: from mauve.mrochek.com by mauve.mrochek.com (PMDF V6.1-1 #35243) id <01QDLR9E01A800008D@mauve.mrochek.com>; Wed, 26 Apr 2017 10:24:19 -0700 (PDT)
Cc: Ned Freed <ned.freed@mrochek.com>, Chris Newman <chris.newman@oracle.com>, Neil Jenkins <neilj@fastmail.com>, jmap@ietf.org
Message-id: <01QDMNWLS3IG00008D@mauve.mrochek.com>
Date: Wed, 26 Apr 2017 10:09:03 -0700
From: Ned Freed <ned.freed@mrochek.com>
In-reply-to: "Your message dated Wed, 26 Apr 2017 10:56:17 -0400" <15F2FFD3-2789-49A1-A527-DBE717CF6733@fugue.com>
References: <em8b177018-4769-44ea-b033-90bd8155d11b@bodybag> <46F700A6-C2B1-488B-A8B4-6ACD45B03C31@oracle.com> <CFC38D13-0CB2-4ABF-9403-DF0F773314B7@fugue.com> <D35A79C2-3918-4BB7-B97D-D56CA7548DCD@oracle.com> <1493099769.3023399.955193288.6D0312CC@webmail.messagingengine.com> <33553450-82F4-4CB4-8679-C9F52D8A8839@oracle.com> <1493163974.4122214.956244160.6735E49C@webmail.messagingengine.com> <EDCC6149-9222-468E-A17B-DDBA88A52D95@oracle.com> <01QDMH1QNOUK00008D@mauve.mrochek.com> <4488B4E2-53A0-44E4-911A-3A67B7EF67FC@fugue.com> <01QDMIL0HUYS00008D@mauve.mrochek.com> <15F2FFD3-2789-49A1-A527-DBE717CF6733@fugue.com>
To: Ted Lemon <mellon@fugue.com>
Archived-At: <https://mailarchive.ietf.org/arch/msg/jmap/w2qonjzWjuYKVPSVwF9URuHbHBM>
Subject: Re: [Jmap] Best vs Good enough - adoption of JMAP
X-BeenThere: jmap@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: JSON Message Access Protocol <jmap.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/jmap>, <mailto:jmap-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/jmap/>
List-Post: <mailto:jmap@ietf.org>
List-Help: <mailto:jmap-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/jmap>, <mailto:jmap-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 26 Apr 2017 19:22:29 -0000

> On Apr 26, 2017, at 10:41 AM, Ned Freed <ned.freed@mrochek.com> wrote:
> > Actually, it offers no utility whatsoever. If you provide the ability to answer
> > such queries at high scale, you do it based on trasactional information
> > produced by the message transport infrastructure. This information is fed into
> > some kind of database that lets you lookup whatever you want for whatever
> > combination of sender, recipient, time window, etc. you want to support.
> >
> > You most certainly don't want to do it by accessing the mailstores. They
> > carry enough load as it is; using them to handle a problem that's easily
> > separable makes no sense.
> >
> > There's also a nontrivial security separation concern here. The access rights
> > associated with being able to look at transaction data are not the same as the
> > rights needed to look at message content.

> These are all good points, but from this perspective then it doesn't really
> matter where the transaction happens as long as the database can be updated.

First, it most certainly does matter where the transaction happens, and the
fact that it isn't at all clear where submission to the transport
infrastructure occurs is a big problems with these magic folder proposals.

Second, just as it makes no sense to use the store as a means of tracking
transactions - and in that regard I'll note that transactions have to be
trackable even if the associated messages have been deleted - it also makes no
sense to use the transaction log as a queue management facility. For one thing,
general-purpose databases tend to suck at implementing anything but the
simplest of queues, and mail queues are anything but simple.

The operational constraints are also very different. The transaction log is
almost always a lower priority thing than getting mail processed. So you can
take some liberties with coherence, update speed, and even reliability and save
some $$$. This is important when you realize that it's often necessary
to retain transacton records for long periods of time. 

In contrast, the queue manager database needs to be up to date at all times,
and in the event of failure it needs to be possible to sync it up to reality
in fairly short order.

				Ned