-
Notifications
You must be signed in to change notification settings - Fork 3.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Erlang/OTP 21 Compatibility #1616
Comments
Per discussion with @dumbbell. This helped us find out the root cause of test suite failures on OTP 21. References rabbitmq/rabbitmq-server#1616. [#157964874]
OTP 21 has a new logging subsystem and extra logging added to the kernel app to accompany the asynchronous automatic node connection feature. This breaks this eval command that asks the node for some of its effective paths (e.g. the plugin dir). Since we know the set of lines we are interested in, we can filter out everything else. Pair: @dumbbell. Part of #1616. [#157964874]
Per discussion with @dumbbell. This helped us find out the root cause of test suite failures on OTP 21. References rabbitmq/rabbitmq-server#1616. [#157964874] (cherry picked from commit f525ad1)
Per discussion with @dumbbell. This helped us find out the root cause of test suite failures on OTP 21. References rabbitmq/rabbitmq-server#1616. [#157964874] (cherry picked from commit f525ad1)
OTP 21 has a new logging subsystem and extra logging added to the kernel app to accompany the asynchronous automatic node connection feature. This breaks this eval command that asks the node for some of its effective paths (e.g. the plugin dir). Since we know the set of lines we are interested in, we can filter out everything else. Pair: @dumbbell. Part of #1616. [#157964874]
OTP 21 has a new logging subsystem and extra logging added to the kernel app to accompany the asynchronous automatic node connection feature. This breaks this eval command that asks the node for some of its effective paths (e.g. the plugin dir). Since we know the set of lines we are interested in, we can filter out everything else. Pair: @dumbbell. Part of #1616. [#157964874]
Part of rabbitmq/rabbitmq-server#1616. [#157964874]
Part of rabbitmq/rabbitmq-server#1616. [#157964874]
OTP 21 has a new logging subsystem and extra logging added to the kernel app to accompany the asynchronous automatic node connection feature. This breaks this eval command that asks the node for some of its effective paths (e.g. the plugin dir). Since we know the set of lines we are interested in, we can filter out everything else. Pair: @dumbbell. Part of #1616. [#157964874] (cherry picked from commit dae785a)
Part of rabbitmq/rabbitmq-server#1616. [#157964874] (cherry picked from commit 7583f6f)
Part of rabbitmq/rabbitmq-server#1616. [#157964874] (cherry picked from commit 7bdcb20)
Elixir v1.6.6 is out and fully supports Erlang/OTP 21. |
@josevalim thank you for the update! |
Why do we need pinning in the installation routine? (https://www.rabbitmq.com/install-debian.html)
*so like my six-step ansible script can install a stable server, or containers that get rebuild often... pinning a version there just looks overly complicated and locks that down to break later just my 2 cents |
@croensch this is not a discussion forum. There can be plenty of reasons for pinning that have nothing to do with OTP 21. In fact the pinning section long predates this issue or OTP 21 RCs. |
All discussions, questions, opinions, suggestions, ideas belong to the mailing list. This issue is about making RabbitMQ compatible with OTP 21 and getting OTP 21 test coverage to the same level as other supported series. |
Worth keeping an eye on this: Node not responding to init:stop() - Erlang/OTP 21 |
There will be a couple of additional OTP 21 compatibility improvements in 3.7.8 but they hopefully don't affect more than a low single digit % of users. |
Overview
Erlang/OTP 21 has plenty of breaking changes, some of which affect RabbitMQ, our build system and dependencies. This issue is a publicly available "umbrella issue" that can be used to monitor progress on the OTP 21 compatibility track.
UPD: RabbitMQ 3.7.7 is the first release to support Erlang/OTP 21. Earlier RabbitMQ versions will start on Erlang 21.0 but won't accept client connections and CLI tools will fail with exceptions.
Notable Changes and Regressions
Note that Elixir is only OTP 21-compatible starting with 1.6.6, although 1.6.5 was "compatible enough" for us to make progress with it.
Known incompatibilities and other new features that affect us discovered so far:
os:getenv/1
on Windows: ERL-644 addressed in21.0.1
(republished as21.0
)OTP_RELEASE
macro) can be potentially helpfulTasks
Specific contained tasks:
gmake ct-fast
in core server passes3.6.3
)Things that may not be functionally important but still would be nice to have for us:
The text was updated successfully, but these errors were encountered: