On Jan 22, 2014, at 8:13 AM, Dave Cottlehuber <d...@jsonified.com> wrote:
> On 22. Jänner 2014 at 12:42:03, Robert Samuel Newson (rnew...@apache.org) > 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 < >>>>> rnew...@apache.org>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 Hey Dave, nice writeup and I agree with the priorities. Cloudant will be evaluating R16B03 at some point to see if it's suitable for our production needs. Adam