ANN RabbitMQ 3.6.x support timeline

5,701 views
Skip to first unread message

Michael Klishin

unread,
Oct 26, 2017, 9:30:01 AM10/26/17
to rabbitm...@googlegroups.com
Dear RabbitMQ community,

As we are getting closer to releasing 3.7.0 RC2, our team has been discussing
when is going to happen with 3.6.x releases after 3.7.0 ships some time next month.

3.6.x has been the longest running RabbitMQ release series to date and there's obviously
will be a lot of interest in keeping it around for a few more months.

Currently the plan is the following.

We will continue doing 3.6.x releases until May 1st, 2018.
That's between 5 and 6 months since 3.7.0. Not all changes in 3.7.x will be backported
and 3.6.x will likely focus entirely on bug fixes and minor operations-related usability improvements.

The frequency of 3.6.x releases will likely also go down but we are not looking to produce
a fixed number of releases, so whether the final one in the series will be 3.6.15 or 3.6.20,
only time will tell.

Another change coming to 3.6.x sooner, starting Dec 1st this year, is that we are going to
drop support for Erlang versions older than 19.3.0. We understand that it's uncommon to do
this in a point release but consider this. 3.6.0 was released in December 2015, close to 2 years ago.
By May 2018 it will be close to 2.5 years, which is 3-5 times longer than an average RabbitMQ
release series.

Currently RabbitMQ 3.6.x supports R16B03, 17.x 18.x, 19.x and 20.x. There were all kinds of
breaking changes in Erlang/OTP since R16B03:

 * Syntax changes
 * .beam (byte code) format changes
 * Library changes
 * Changes that affect RabbitMQ performance characteristics when it is compiled on R16B03

On top of that changes to operating systems such as the removal of OpenSSL in MacOS High Sierra affect Erlang and without additional patches, older releases simply cannot be built
in those environments (and they are not going to be updated by the OTP team).

Supporting 5 (potentially 6 by May) Erlang/OTP release series is a non-trivial effort for our small
team and we feel that time is better spent on actual issues instead of various compatibility scenarios.

In addition, obtaining Erlang/OTP 19.x and 20.x is a lot easier these days than 12-18 months ago:

 * Erlang Solutions package recent releases
 * Our team provides a zero dependency RPM
 * kerl has matured and can build Erlang releases going well before R16B03, including workarounds for High Sierra compatibility

So, starting with whatever release comes first after Dec 1st, 2017, RabbitMQ 3.6.x will
only support Erlang/OTP 19.3 or later. The same versions will be supported by 3.7.x.

If you have any questions about this plan, let us know in this thread.
--
MK

Staff Software Engineer, Pivotal/RabbitMQ

Michael Klishin

unread,
Nov 9, 2017, 5:05:27 PM11/9/17
to rabbitmq-users
We have seen a number of issue reports and support tickets that run into known bugs that are fixed
in releases 19.x through 19.3.6.3:

 * https://bugs.erlang.org/browse/ERL-430

Therefore 19.3 or later versions is what our team highly recommends anyway, and it makes sense to eventually
require them.
Reply all
Reply to author
Forward
0 new messages