You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@rocketmq.apache.org by GitBox <gi...@apache.org> on 2021/04/09 07:06:03 UTC

[GitHub] [rocketmq] felayman commented on issue #2777: pull request will not stop after topic being deleted

felayman commented on issue #2777:
URL: https://github.com/apache/rocketmq/issues/2777#issuecomment-816463544


   > > 这种操作属于非标操作,既然有消费者在线,那么就应该知道执行的后果。因此我觉得这不是bug。
   > > 负载均衡这里是正常的,因为 mqSet和cidSet 是一直没有变的。
   > > 获取topic路由哪里,如果找不到topic的话,会抛出异常,并不会更新路由信息,那么mqSet也就不会变。
   > > cidSet是根据ConsumerId来决定的。
   > 
   > topic不可读, 或者topic被删除了, mqSet会变, 消费者更新topicSubscribeInfoTable前会筛选只读的队列更新到map, 下次rebalance时拿到的mqSet就是空的, 所以才抛出了异常导致没有执行后续的逻辑
   
   我看了代码,如果mqSet是空的,不会执行截图中红线圈的地方,执行这段逻辑的分支条件是:mqSet != null && cidAll != null


-- 
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:
users@infra.apache.org