← Back to all sparks
R

RabbitMQ

INFRA · APIS
Velocity5.0

Message broker supporting AMQP, MQTT and STOMP protocols

Two parallel release trains, one message: get off Erlang 26 and off Mnesia.

message-brokerquorum-queueskhepriraftmaintenance-releaseerlang-27
Current state
RabbitMQ is maintaining 4.2.x and 4.3.x side by side, cutting matching patches into both on the same day. The window is almost entirely correctness work in the Raft-backed subsystems — quorum queues losing metrics after a restart, leaders committing log entries too optimistically, classic queue index paths accumulating slashes, topic bindings with empty routing keys matching everything. Both trains simultaneously raised their floor to Erlang/OTP 27.
Where it's heading
The bug pattern is the tell: nearly every fix is in quorum queues, Khepri or Raft, which is where RabbitMQ moved its metadata and durability story. The 4.3.0 feature release removed Mnesia and partition-handling strategies outright and disabled deprecated features by default. What looks like a quiet maintenance stretch is the shakedown period of that migration, with 4.2.x kept alive as the escape route.
Prediction
Expect the 4.2.x train to slow toward end-of-life while 4.3.x patches keep concentrating on quorum queue and Khepri edge cases uncovered by clusters completing the Mnesia migration.

Recent moves

  1. 9d ago

    Quorum queues stop dropping metrics after node restart

    Fixes quorum queues in clusters that came through the 3.13 to 4.2 to 4.3 upgrade path silently ceasing to emit metrics and take snapshots after a restart. A migration-path bug, exactly the class of issue the Khepri transition keeps surfacing.

    View source ↗
  2. 12d ago

    Erlang 27 now the minimum; Raft commit fix

    Raises the minimum Erlang to 27.0 now that OTP 26 is end-of-life — nodes on older releases will not start. Also fixes Raft leaders committing log entries optimistically, another correctness fix in the consensus layer.

    View source ↗
  3. 12d ago

    Erlang 27 floor lands on the 4.2 line too

    The same Erlang 27 requirement and a classic queue index path fix, cut into the older train on the same day as 4.3.3. The synchronized dual-train releases show 4.2.x is still a supported destination, not an abandoned one.

    View source ↗
  4. 1mo ago

    Feature-flag and credential-storage fixes

    Rare-case failures enabling a binding feature flag, plus correct storage of passwordless users created over the HTTP API. Narrow fixes with no change to how the broker behaves for most operators.

    View source ↗
  5. 1mo ago

    Passwordless HTTP API users stored correctly

    The 4.2 counterpart to the same certificate-auth user storage fix. Paired maintenance, no behavioural change beyond the bug itself.

    View source ↗
  6. 2mo ago

    Empty-key topic bindings no longer swallow all messages

    A queue bound to a topic exchange with an empty binding key was receiving every message published with an empty routing key. The fix ships behind a new feature flag, which means operators have to opt in — a reminder that RabbitMQ now gates even correctness changes on the flag mechanism.

    View source ↗