Skip to main content

Release Notes - Apache RocketMQ - Version 4.7.1

· 3 min read

Below is a summary of the issues addressed in the 4.7.1 release of RocketMQ. For full documentation of the release, a guide to get started, please refer to Quick Start.


  • [ISSUE-2088] - Optimize RocketMQ client's stats of RT to make sense.
  • [ISSUE-2085] - Support graceful shutdown for push consumer.
  • [ISSUE-2082] - Use StringBuilder instead of StringBuffer.
  • [ISSUE-2065] - Upgrade fastjson version to prevent RCE problem.
  • [ISSUE-2007] - Upgrade fastjson version to prevent serious security problem.
  • [ISSUE-1992] - Optimize the log output in Broker2Client class.
  • [ISSUE-1988] - Update messageDelay property incorrectly with updateBrokerConfig command.
  • [ISSUE-1976] - Improve the security of the system topic operation.
  • [ISSUE-1912] - Polish the consumer offset commit logic for lite pull consumer.
  • [ISSUE-1895] - Expose the flush disk timeout error to user when sending messages.
  • [ISSUE-1689] - Add interfaces to remove unused statsItem in BrokerStatsManager class.


  • [ISSUE-2118] - Fix AdminBrokerProcessorTest can not pass when machine's hostname contains illegal characters.
  • [ISSUE-2078] - HmacSHA1 not available when use openjdk.
  • [ISSUE-1901] - Create reply message fail when using request/reply mode.
  • [ISSUE-1906] - BooleanConstantExpression might lead to class loading deadlock.
  • [ISSUE-2044] - DefaultLitePullConsumerImpl may throw null pointer exception.
  • [ISSUE-2042] - Client still connect to the old name server even it is removed from namesrvAddr list.
  • [ISSUE-2036] - Encode null value caused incorrect encoding result.
  • [ISSUE-1978] - The getBornHostString method may throw null pointer exception.
  • [ISSUE-1950] - Residual threads still exist after producer calls shutdown.
  • [ISSUE-1931] - The doAfterRpcHooks method is called twice in processRequestCommand method.
  • [ISSUE-1879] - GroupTransferService may be blocked by ResponseCallback in SYNC_MASTER mode.
  • [ISSUE-1400] - Disk space detection may be blocked when deleting a lot of files.
  • [ISSUE-729] - The wipeWritePermOfBroker method may throw null pointer exception.
  • [ISSUE-705] - The content of waitingThreadTable is not updated in time.
  • [ISSUE-1807] - Fix statistical error about hashSlotCount in index file.


Document and code style improvement

  • [ISSUE-2054] - Typo fix in
  • [ISSUE-2053] - Add @Override annotation for RMQOrderListener.
  • [ISSUE-2035] - Typo fix in DefaultMQProducerImpl class.
  • [ISSUE-2034] - Polish the java doc for MessageListenerOrderly class.
  • [ISSUE-2020] - Replace notify code blocks with existing method wakeup in ServiceThread.
  • [ISSUE-2025] - Refactor the code in processSendResponse method.
  • [ISSUE-2011] - Add english document.
  • [ISSUE-2006] - Add request-reply document.
  • [ISSUE-2003] - Remove useless code in MQClientInstance.
  • [ISSUE-1971] - Polish the comment in ConsumerFilterManager.
  • [ISSUE-1964] - Fix document error about admin tool.
  • [ISSUE-1883] - Fix document error about wipeWritePermSubCommand.
  • [ISSUE-1866] - Fix document error about transaction message.
  • [ISSUE-1857] - Refactor the code in DefaultMQProducerImpl class.
  • [ISSUE-1741] - Typo fix in ConsumeMessageOrderlyService.
  • [ISSUE-1574] - Typo fix in request code.
  • [ISSUE-1505] - Fix document error about batch sample.