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 2022/03/10 07:46:58 UTC

[GitHub] [rocketmq] shuangchengsun opened a new issue #3953: Change Retry-Queue Num Will Cause Retry-Message Loss

shuangchengsun opened a new issue #3953:
URL: https://github.com/apache/rocketmq/issues/3953


   When we change the num of retry-queue to 2 while the default is 1 by the command : ./mqadmin updateSubGroup -c xxx -g xxx -q 2 -n xxx.
   Then we found that the retried messages were exactly half consumed. If we fetch the retry-topic route at this time , the thing will be found that the retry-queue count is still 1.


-- 
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.

To unsubscribe, e-mail: dev-unsubscribe@rocketmq.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [rocketmq] shuangchengsun commented on issue #3953: Change Retry-Queue Num Will Cause Retry-Message Loss

Posted by GitBox <gi...@apache.org>.
shuangchengsun commented on issue #3953:
URL: https://github.com/apache/rocketmq/issues/3953#issuecomment-1064719127


   > 
   
   this command dose change the queue number in 「TopicConfig」data structure. however, the queue number in 「SubscriptionGroupConfig」is still the old number, the 「SubscriptionGroupConfig」is the key to deciding which queue to deliver the message to. In my view, The key is to ensure the consistency of these two data structures.
   The code in org.apache.rocketmq.broker.processor.SendMessageProcessor#asyncConsumerSendMsgBack
   <img width="952" alt="image" src="https://user-images.githubusercontent.com/33629004/157792268-468cafa0-3f9f-4edc-a29d-641e2a1edf2d.png">
   <img width="1146" alt="image" src="https://user-images.githubusercontent.com/33629004/157792316-63305cd7-48d3-4e85-8718-b3c191e65964.png">
   


-- 
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.

To unsubscribe, e-mail: dev-unsubscribe@rocketmq.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [rocketmq] ni-ze commented on issue #3953: Change Retry-Queue Num Will Cause Retry-Message Loss

Posted by GitBox <gi...@apache.org>.
ni-ze commented on issue #3953:
URL: https://github.com/apache/rocketmq/issues/3953#issuecomment-1064708984


   use updateTopic command to change read queue num or write queue num of topic, such as fellow:
   ```java
   sh bin/mqadmin updateTopic -n 1xxx -c xxx -t  %RETRY%xxxx -r 2 -w 2
   ```
   
   updateSubGroup command also effective, but this command is against group. It need you delete retry-topic firstly and wait created by heat beat.
   


-- 
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.

To unsubscribe, e-mail: dev-unsubscribe@rocketmq.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [rocketmq] ni-ze edited a comment on issue #3953: Change Retry-Queue Num Will Cause Retry-Message Loss

Posted by GitBox <gi...@apache.org>.
ni-ze edited a comment on issue #3953:
URL: https://github.com/apache/rocketmq/issues/3953#issuecomment-1064708984


   use updateTopic command to change read queue num or write queue num of topic, such as fellow:
   ```java
   sh bin/mqadmin updateTopic -n 1xxx -c xxx -t  %RETRY%xxxx -r 2 -w 2
   ```
   
   updateSubGroup command also effective, but this command is against group. It need you delete retry-topic firstly and wait created by consumer heat beat.
   


-- 
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.

To unsubscribe, e-mail: dev-unsubscribe@rocketmq.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [rocketmq] shuangchengsun commented on issue #3953: Change Retry-Queue Num Will Cause Retry-Message Loss

Posted by GitBox <gi...@apache.org>.
shuangchengsun commented on issue #3953:
URL: https://github.com/apache/rocketmq/issues/3953#issuecomment-1066717912


   > Given that only the retry topic has this problem, using SubscriptionGroupConfig to decide which queue to send, and another way can also solve this problem, such as, updateTopic update read and write queue num first then use updateSubGroup change retry queue num in SubscriptionGroupConfig, so no modification is recommended.
   
   ok, it looks a way to change retry-queue, but it's looks complex and unconventional, so maybe it's better to add this rule to best-practice?


-- 
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.

To unsubscribe, e-mail: dev-unsubscribe@rocketmq.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [rocketmq] shuangchengsun commented on issue #3953: Change Retry-Queue Num Will Cause Retry-Message Loss

Posted by GitBox <gi...@apache.org>.
shuangchengsun commented on issue #3953:
URL: https://github.com/apache/rocketmq/issues/3953#issuecomment-1064770789


   > use updateTopic command to change read queue num or write queue num of topic, such as fellow:
   > 
   > ```java
   > sh bin/mqadmin updateTopic -n 1xxx -c xxx -t  %RETRY%xxxx -r 2 -w 2
   > ```
   > 
   > updateSubGroup command also effective, but this command is against group. It need you delete retry-topic firstly and wait created by consumer heat beat.
   
   「updateTopic」 command can only change the queue num in TopicConfig, but what is the key to deciding which queue to deliver the message to is the 「SubscriptionGroupConfig」. 


-- 
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.

To unsubscribe, e-mail: dev-unsubscribe@rocketmq.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [rocketmq] ni-ze commented on issue #3953: Change Retry-Queue Num Will Cause Retry-Message Loss

Posted by GitBox <gi...@apache.org>.
ni-ze commented on issue #3953:
URL: https://github.com/apache/rocketmq/issues/3953#issuecomment-1066290110


   Given that only the retry topic has this problem, using SubscriptionGroupConfig to decide which queue to send, and another way can also solve this problem,  such as, updateTopic update read and write queue num first then use updateSubGroup change retry queue num in SubscriptionGroupConfig, so no modification is recommended.
   
   


-- 
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.

To unsubscribe, e-mail: dev-unsubscribe@rocketmq.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org