You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
rabbit_node_monitor: Use rabbit_mnesia in partition handling-specific code
[Why]
The partition detection code defines a partitioned node as an Erlang
node running RabbitMQ but which is not among the Mnesia running nodes.
Since #7058, `rabbit_node_monitor` uses the list functions exported by
`rabbit_nodes` for everything, except the partition detection code which
is Mnesia-specific and relies on `rabbit_mnesia:cluster_nodes/1`.
Unfortunately, we saw regressions in the Jepsen testsuite during the
3.12.0 release cycle only because that testsuite is not executed on
`main`.
It happens that the partition detection code is using `rabbit_nodes`
list functions in two places where it should have continued to use
`rabbit_mnesia`.
[How]
The fix bug fix simply consists of reverting the two calls to
`rabbit_nodes` back to calls to `rabbit_mnesia` as it used to do. This
seems to improve the situation a lot in the manual testing.
This code will go away with our use of Mnesia in the future, so it's not
a problem to call `rabbit_mnesia` here.
0 commit comments