From dev-return-48831-archive-asf-public=cust-asf.ponee.io@couchdb.apache.org Mon Oct 7 17:17:48 2019 Return-Path: X-Original-To: archive-asf-public@cust-asf.ponee.io Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [207.244.88.153]) by mx-eu-01.ponee.io (Postfix) with SMTP id 890091804BB for ; Mon, 7 Oct 2019 19:17:48 +0200 (CEST) Received: (qmail 30812 invoked by uid 500); 7 Oct 2019 17:17:47 -0000 Mailing-List: contact dev-help@couchdb.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@couchdb.apache.org Delivered-To: mailing list dev@couchdb.apache.org Received: (qmail 30801 invoked by uid 99); 7 Oct 2019 17:17:47 -0000 Received: from Unknown (HELO mailrelay1-lw-us.apache.org) (10.10.3.42) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 07 Oct 2019 17:17:47 +0000 Received: from [192.168.1.42] (69-196-165-48.dsl.teksavvy.com [69.196.165.48]) by mailrelay1-lw-us.apache.org (ASF Mail Server at mailrelay1-lw-us.apache.org) with ESMTPSA id 4AB3F5A6D for ; Mon, 7 Oct 2019 17:17:47 +0000 (UTC) Subject: Re: [DISCUSS] FoundationDB read versions and CouchDB requests To: dev@couchdb.apache.org References: <2F0B69C9-D0B9-44D2-9930-CDCEB8E475E3@apache.org> <2c793519-6c61-e66e-72d0-95101b00d150@apache.org> <06f41da4-9cb3-2194-c0b5-334a964f81d3@apache.org> <219AADBB-6B50-4FBA-BDE4-EEBA7AC5F128@apache.org> <783270c3-3e36-44a8-9429-50a178a3ce77@www.fastmail.com> From: Joan Touzet Organization: Apache Software Foundation Message-ID: <9c94d048-f95d-bee4-89a0-957768d34c0b@apache.org> Date: Mon, 7 Oct 2019 13:17:46 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.9.0 MIME-Version: 1.0 In-Reply-To: <783270c3-3e36-44a8-9429-50a178a3ce77@www.fastmail.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Thanks, Mike. I know Jan has something to say on this topic, but please note he is on vacation through this week and may need to be nudged to post here once he returns ;) -Joan On 2019-10-07 5:34 a.m., Mike Rhodes wrote: > All, > > I think my email wasn't my clearest missive ever, so likely pretty easy to get lost in it :) > > I think my idea to include the read version in the document rev ID is likely a bad one. But, if we are already including it in the database seq value, and we've done the work to make that number transfer cleanly across FDB instances, there's probably some interesting API directions post 4.0 where we make more use of that value towards more efficient RYW at a database level. > > I'm beginning to get the feeling of what this API might look like and avoid being painful/confusing. For example, given the more advanced nature of these APIs, I'd see them operating at the HTTP header level, where we can provide request and response headers with the same name to support sending/receiving database seq values across ~all read/write requests. > > Taking Joan and Adam's points on board, my view is that we semi-shelve this discussion to enable focus on getting 4.0 out the door. But, I think we can start to introduce useful functionality based on this during the 4.x series if we're careful (i.e., avoiding breaking changes). Of course, we should probably step back to user pain points first as Joan implies, otherwise we're building for the sake of building and the opportunity cost is not negligible. > > I think we might also want to hash out the "interchangable backend" question a bit more. As Adam says, FDB gives us a number of features that would be hard to replicate on different backends -- at least in the clustered case -- so nailing down a position there sounds important. >