On Wed, 12 Jan 2022, at 18:39, Adam Kocoloski wrote:
> Hi,
>
> Our convenience binaries are using Erlang 20, and we are now seeing 
> users file bug reports for issues that have been fixed by the Erlang 
> team more than 3 years ago :( In recent years the Erlang/OTP team has 
> accelerated their release cycles, and we are now _way_ behind the 
> current Erlang 24.2 release.

Overall I agree we should fix this. Since switching ~ 2-3 years ago
to tracking very latest OTP releases, I've reported a couple of severe
core-dumping bugs upstream and they have been dealt with promptly. Even
on my admittedly obscure setup, on the bleeding pre-release edge of OTP.

I don't think we take major risks from tracking at N-1 (i.e. OTP 23 & 24)
in general. I think most of the wider BEAM community tracks latest OTP
since the JIT anyway. It is absolutely a major change, and it's worth us
switching to that by default everywhere if we can.

> I took a peek at the RabbitMQ official image history, and it seems the 
> Docker folks are rebuilding and publishing images for supported 
> RabbitMQ versions to use the newest Erlang/OTP on the day it’s 
> released. That’s aggressive! But I am thinking that we might want to 
> head toward that general direction and give users a CouchDB install 
> that packages the current Erlang version by default.

On FreeBSD, we do pretty much the same, not *quite* as fast as those
mad hatter bunnies though.

OTP updates land in FreeBSD typically less than a fortnight after
publication, and 2-5 days later that is in our CouchDB packages too.

I have kept a close eye out on the errata patches (tag releases, every
few weeks), and gut feel says it's a win to keep up to date.

FreeBSD is shipping latest OTP24 for CouchDB, and nobody has thrown
anything at me yet.

> One question I had in my head was whether to publish packages / images 
> for multiple major Erlang versions, but it doesn’t seem to be a common 
> practice.

No. The number of people who are shipping CouchDB+custom OTP code must
be vanishingly small, and those people should be capable of raising
questions here for assistance. It also makes more work for packagers.

> I also wondered whether to pin a given CouchDB release to an Erlang 
> release series, e.g. CouchDB 3.2.0 packages are built against the 
> latest Erlang 20 patch release, while 3.2.1 could jump to Erlang 24. I 
> think the cognitive load for debugging support tickets might be lower 
> in that approach. What do you think?

I can't speak for elsewhere, but generally sticking to latest OTP is
the least work in general from my perspective.

A+
Dave

Reply via email to