EZLippi opened a new issue #2738:
URL: https://github.com/apache/rocketmq/issues/2738


   
   1. Please describe the issue you observed:
   
   when use PushConsumer to subscribe message, if there is only one consumer 
instance for a consumer group, we will always see this warning logs
   `WARN [NettyClientPublicExecutor_5:RocketmqClient:130] execute the pull 
request exception
   org.apache.rocketmq.client.exception.MQBrokerException: CODE: 25  DESC: the 
consumer's subscription not latest BROKER: 192.168.80.19:10911
   For more information, please visit the url, 
http://rocketmq.apache.org/docs/faq/
        at 
org.apache.rocketmq.client.impl.MQClientAPIImpl.processPullResponse(MQClientAPIImpl.java:794)
 ~[rocketmq-client-4.8.0.jar:4.8.0]
        at 
org.apache.rocketmq.client.impl.MQClientAPIImpl.access$200(MQClientAPIImpl.java:167)
 ~[rocketmq-client-4.8.0.jar:4.8.0]
        at 
org.apache.rocketmq.client.impl.MQClientAPIImpl$2.operationComplete(MQClientAPIImpl.java:745)
 [rocketmq-client-4.8.0.jar:4.8.0]
        at 
org.apache.rocketmq.remoting.netty.ResponseFuture.executeInvokeCallback(ResponseFuture.java:54)
 [rocketmq-remoting-4.8.0.jar:4.8.0]
        at 
org.apache.rocketmq.remoting.netty.NettyRemotingAbstract$2.run(NettyRemotingAbstract.java:319)
 [rocketmq-remoting-4.8.0.jar:4.8.0]
        at `
   
   after a check the source code , i found why this may happen, if any consumer 
in a consumer group added or removed, rebalance will happen to allocate queues, 
pull request will got executed to pull message for new allocated message 
queues, but i found that every time queues changed the subscribe version form 
the client side will increment, if heart beat request is sent to broker before 
pull requests, then everything works fine, but  pull request is executed by 
other threads, the order between heartBeat request and pull request may differ 
all the time , so the subscribe version from client side may be bigger that the 
version at broker, may be we should send heart beat first before sending pull 
request.
   
   
![image](https://user-images.githubusercontent.com/5326814/111867478-2ea85d00-89af-11eb-9d08-04add48266fa.png)
   
![image](https://user-images.githubusercontent.com/5326814/111867481-3d8f0f80-89af-11eb-9034-559e4bc47fd5.png)
   
![image](https://user-images.githubusercontent.com/5326814/111867496-55669380-89af-11eb-9932-b4aa5233cf7d.png)
   
    
   2. Please tell us about your environment:
   rocketmq 4.8.0
   
   this warnning log has no side effect for consumer, but may confuse the 
developer 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to