apache / apache/rocketmq-mqtt

项目升级rocketmq-client 5.1.4版本后,org.apache.rocketmq.mqtt.ds.store.LmqQueueStoreManager#maxOffset 方法,报throw new MQClientException("The broker[" + queue.getBrokerName() + "] not exist", null);

Open
#228 4 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
209
Forks
72
PR merge metrics
No merged PRs in 30d

Description

原因如下:
![image](https://github.com/apache/rocketmq-mqtt/assets/24490175/42f8170f-4720-4e6b-926c-8f62b02e95cd)
如上图,获取不到brokerAddr,导致报The broker[" + queue.getBrokerName() + "] not exist
更近一步的原因是:
![image](https://github.com/apache/rocketmq-mqtt/assets/24490175/3f02e10f-941c-4f3d-b484-de3773e4e713)

![image](https://github.com/apache/rocketmq-mqtt/assets/24490175/d16929b4-c37b-40ef-bd78-01d6a8e844dc)
如上图,DefaultMQPullConsumer,没有topic,不会调用this.updateTopicRouteInfoFromNameServer(topic);导致this.brokerAddrTable为空,获取失败

this.updateTopicRouteInfoFromNameServer() 方法在rocketmq-client 4.9.3版本中的写法如下图:
![image](https://github.com/apache/rocketmq-mqtt/assets/24490175/9af18777-197b-4e10-9679-878af4e6e322)
可以正常调用。

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.