On 22. Jänner 2014 at 12:42:03, Robert Samuel Newson ([email protected]) 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 <
> >>> [email protected]>wrote:
> >>>>
> >>>>> Definitely need to preserve R14 compatibility, that’s  
> still the most
> >>>>> stable recent series (as long as you don’t use R14B02)…  
> >>>>>
> >>>>
> >>>>
> >>>> 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).
> …

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 after 
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’s finish that first. Unless 
I’ve missed something, all current code in the tree (rcouch + bigcouch + couch 
couch)
is still R14B* compatible.

## OTP Compatibility & support

2. R14 is going to hold both the project & users like Cloudant back sooner 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.

3. R15* & at least R16B01 and under are still prone to scheduler collapse. I am 
not sure if the
“+st <msecs> " hack in R16B02+ eases the pain or not, nor how badly this 
impacts heavy
CouchDB users. This is the “wake up all schedulers every <milliseconds> to 
prevent collapse"
issue. Read Scott Fritchie’s threads in Erlang-Questions [1] for details & erl 
man[2].

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’re done.
To me this feels like a release notes issue, not one we should be using as 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?

[1]: http://erlang.org/pipermail/erlang-questions/2013-April/073491.html
[2]: http://www.erlang.org/doc/man/erl.html

A+
Dave


Reply via email to