Return-Path: X-Original-To: apmail-couchdb-dev-archive@www.apache.org Delivered-To: apmail-couchdb-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id F072B10929 for ; Wed, 22 Jan 2014 13:54:54 +0000 (UTC) Received: (qmail 35509 invoked by uid 500); 22 Jan 2014 13:54:53 -0000 Delivered-To: apmail-couchdb-dev-archive@couchdb.apache.org Received: (qmail 35472 invoked by uid 500); 22 Jan 2014 13:54:53 -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 35464 invoked by uid 99); 22 Jan 2014 13:54:52 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 22 Jan 2014 13:54:52 +0000 X-ASF-Spam-Status: No, hits=1.5 required=5.0 tests=HTML_MESSAGE,RCVD_IN_DNSWL_LOW,SPF_PASS,T_FRT_BELOW2 X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of bchesneau@gmail.com designates 209.85.216.53 as permitted sender) Received: from [209.85.216.53] (HELO mail-qa0-f53.google.com) (209.85.216.53) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 22 Jan 2014 13:54:48 +0000 Received: by mail-qa0-f53.google.com with SMTP id cm18so422538qab.26 for ; Wed, 22 Jan 2014 05:54:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :content-type; bh=pfpjqJT7V46yB+cgq/zs4rQ5ZVx9NOE5BRm8nciefgQ=; b=q0J03skmPqgbIuxHpuTxAYsKgorW5b2infb2islafRlzd6GgNws8lXkbpnx/PpKqcu /5DjE+WsSzm80fuhtikxgpGJt4QjrAOCDYDzyetD9h0f6Ci69TRzF72oxvQVkioPhz1D dFhd5zi7Bw915DJsQqNEPjkgxW4m0wkD3xG+Y8696WG2EoFWDj5AYccnky9lM/nJvLPK t/bSKLDzNqNbX5IZKR52yzretTBy5Dl4DfTWT04PnMLA68M/HLTPxRAXcgftrrj81s4h +FKcRjGlPpGRY69VJZ1tERP+MbU02H0n5wPIUfvizOAk/rlyJrw7txojocwoWZGpME7t Omxg== X-Received: by 10.140.90.80 with SMTP id w74mr2363507qgd.96.1390398867366; Wed, 22 Jan 2014 05:54:27 -0800 (PST) MIME-Version: 1.0 Received: by 10.96.58.195 with HTTP; Wed, 22 Jan 2014 05:54:07 -0800 (PST) In-Reply-To: References: <06B0A74C-D886-481B-92CC-548B7A05E327@apache.org> From: Benoit Chesneau Date: Wed, 22 Jan 2014 14:54:07 +0100 Message-ID: Subject: Re: Migration Strategy [was Re: Git Repository Creation] To: "dev@couchdb.apache.org" Content-Type: multipart/alternative; boundary=001a11c137e495e91704f08f7647 X-Virus-Checked: Checked by ClamAV on apache.org --001a11c137e495e91704f08f7647 Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable I am +1 in the order of priorities. Some comments bellow. On Wed, Jan 22, 2014 at 2:13 PM, Dave Cottlehuber wrote= : > On 22. J=E4nner 2014 at 12:42:03, Robert Samuel Newson (rnewson@apache.or= g) > wrote: > > > > Benoit, > > > > Cloudant requires R14 support, it would mean our contribution > > to couchdb becomes useless to us and we could not contribute further. > > > > B. > > ... > > >>> wrote: > > >>>> On Tue, Jan 21, 2014 at 3:25 PM, Robert Samuel Newson < > > >>> rnewson@apache.org>wrote: > > >>>> > > >>>>> Definitely need to preserve R14 compatibility, that=92s > > still the most > > >>>>> stable recent series (as long as you don=92t use R14B02)=85 > > >>>>> > > >>>> > > >>>> > > >>>> I disagree. R14 hasn't been updated since more than 2 years, > > and isn't a > > >>>> supported version by the Erlang community, R17 will be out > > sometimes > > >>> during > > >>>> the spring. Latest versions added many fixes to SSL, improved > > the > > >>>> scheduling and memory usage, the NIF support and added a > > lot of > > >>>> improvements to the binary API. Also latest stables version > > of different > > >>>> distributions don't have any R14 any more (even RHEL). > > =85 > > Hopefully I captured all the key points here; > > TL;DR I suggest we: > > - finish merges as a priority > - ship a merged release that still supports R14B* > - track things that need newer OTP in a JIRA ticket & deal with them afte= r > merge release > - resolve aged distro problems with ESL packages & OTP releases in future > > There are alternatives, obviously to this, such as running 2 separate > branches > (2.x cluster, and 1.x feature non-clustered) for a while but that feels > too heavy > for the project to me. > > Have I missed anything, does this work for everybody? Any better > approaches? > > ## Project Priorities > > 1. We are in the middle of major merging. Let=92s finish that first. Unle= ss > I=92ve missed something, all current code in the tree (rcouch + bigcouch = + > couch couch) > is still R14B* compatible. > > I am unsure about R14 compatibility of anything I wrote recently and it probably isn't for some stuff, we had to raise the requirements last year due to incompatibilities issues in rcouch. I will try to check. need to find an R14 release somewhere first. > ## OTP Compatibility & support > > 2. R14 is going to hold both the project & users like Cloudant back soone= r > or later > via dependencies e.g. mochiweb > via functionality in core OTP e.g. SSL improvements, native JSON > parsing & maps > via bug fixes (lots wrt to Windows in R15+, or unix TCP socket > support) > > Specifically for mochiweb (and websocket support as the interesting > feature) I suspect > this could be patchable to work on R14B04. > Sure we can patch anything. But that imply to maintain a fork, The question is not as innocent as it seems and should be answered. I personally dislike having to maintain a fork. How do we keep updated the fork? How do we maintain the versioning against upstream? Also is maintaining a fork the real solution compared to adapt our code to work with latest releases and keep the stability? > > 3. R15* & at least R16B01 and under are still prone to scheduler collapse= . > I am not sure if the > =93+st " hack in R16B02+ eases the pain or not, nor how badly thi= s > impacts heavy > CouchDB users. This is the =93wake up all schedulers every = to > prevent collapse" > issue. Read Scott Fritchie=92s threads in Erlang-Questions [1] for detail= s & > erl man[2]. > > Mmm the link you refer say it is still better than in R14. Anyway this is the right path to follow, we should collect any issues we have in mind in using latest supported versions of Erlang and see how it impact us. > 4. Distros range from bleeding (arch, gentoo etc) to decaying (LTS Ubuntu= , > Centos etc). I > think the general feeling (not quite a consensus) is that you can work > around this by > installing a current Erlang/OTP for most systems from Erlang Solutions, > and you=92re done. > To me this feels like a release notes issue, not one we should be using a= s > a reason to > hold back progress. IMO post merges this will also be resolved as erlang > releases can > be generated. > > Are there any other points to be considered? > How long do we want to support R14? How to decide to stop its support? We need a check-list. How to support coming R17? Do we want it? In a world where we have couchdb spitted in multiple repository and embeddable in other Erlang applications, do we really want to force users to use our own forked repository? How to make sure they can eventually switch to the upstream one? - benoit --001a11c137e495e91704f08f7647--