← Back to all sparks
A

Apache RocketMQ

COMMS
Velocity2.5

Distributed messaging and streaming platform

The RocksDB migration reaches native code as the legacy DLedger broker mode is marked for removal

message-brokerrocksdblite-modedledgerdeprecationapache
Current state
The 5.x line continues to replace storage internals with RocksDB and to retire the mechanisms it supersedes. 5.5.1, the first release since April, swaps the pure-Java ConsumeQueue compaction filter for a native RocksDB CqCompactionFilter behind a cross-platform JNI shim, drops the shaded rocketmq-rocksdb dependency, and deprecates the legacy Broker DLedger mode. Lite Mode, introduced in 5.5.0, received stability work rather than the client-side adoption path it still needs. Alongside this sit fastjson 1.x removal and a long list of Proxy, Pop and Remoting fixes.
Where it's heading
The storage convergence is now deep enough to cross the JNI boundary — RocksDB is no longer an alternate index but the substrate, and the project is willing to take on native build complexity across platforms to get its performance. In parallel, deprecating legacy Broker DLedger narrows the replication story toward the jRaft controller, cutting a maintenance branch rather than carrying both. Lite Mode remains the open bet: it is being maintained but not yet extended outward to clients.
Prediction
With legacy DLedger deprecated rather than removed, a following release that deletes it outright is the natural next step. Whether Lite Mode gains the client and proxy support it needs is still unresolved — 5.5.1 fixed it without broadening it.

Recent moves

  1. 27d ago

    5.5.1: native RocksDB compaction filter, legacy DLedger mode deprecated

    The RocksDB arc that has run since 5.2.0 moves into native code here: a JNI-backed ConsumeQueue compaction filter replaces the Java implementation and the shaded rocketmq-rocksdb dependency goes away. Deprecating the legacy Broker DLedger mode narrows replication toward the jRaft controller. The rest is fastjson 1.x removal and a broad stability pass over tiered storage, Proxy, Pop and Remoting.

    View source ↗
  2. 5mo ago

    5.5.0 adds Lite Mode, a lightweight subscription path for AI workloads

    ⚡ SPARK

    Lite Mode is the directional move of this window — a second subscription mechanism sitting beside the existing consumer rather than a tuning option within it. 5.5.1 has since maintained it without extending it to clients, so the bet is placed but not yet cashed.

    View source ↗
  3. 8mo ago

    5.4.0: priority messages and RocksDB-backed timer, transaction and index

    Two RIPs land together — priority messages, and moving timer messages, transaction messages and indexes onto RocksDB. The latter is the clearest single step in the storage convergence that 5.5.1 later pushes into native code.

    View source ↗
  4. 8mo ago

    5.3.4: TimerWheel snapshots and Netty, OpenTelemetry upgrades

    A stability release whose TimerWheel snapshot mechanism addresses recovery correctness rather than throughput. It reads as consolidation between the larger storage moves either side of it.

    View source ↗
  5. 1y ago

    5.3.3 drops ACL 1.0 in favour of ACL 2.0

    Removing ACL 1.0 outright is the same pattern 5.5.1 applies to legacy DLedger — the project retires superseded subsystems instead of carrying them. Breaking for operators still on the old model, but narrow in scope.

    View source ↗
  6. 1y ago

    5.3.2: RocksDB-based Pop consumption enters alpha

    Pop consumption on RocksDB arrives in alpha with a stated migration plan, an early marker of the storage convergence. Cancelling scheduled messages and graceful online/offline handling round it out.

    View source ↗