[ https://issues.apache.org/jira/browse/ROCKETMQ-102?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15875326#comment-15875326 ]
ASF GitHub Bot commented on ROCKETMQ-102: ----------------------------------------- Github user zhouxinyu commented on a diff in the pull request: https://github.com/apache/incubator-rocketmq/pull/64#discussion_r102128193 --- Diff: client/src/main/java/org/apache/rocketmq/client/consumer/DefaultMQPushConsumer.java --- @@ -461,7 +461,11 @@ public void start() throws MQClientException { */ @Override public void shutdown() { - this.defaultMQPushConsumerImpl.shutdown(); + shutdown(0); + } + + public void shutdown(long awaitTerminateMillis) { --- End diff -- Good idea, it's ok for me. > When shutdown(), the persisted offet is not the latest consumed message, > which may cause repeated messages > ---------------------------------------------------------------------------------------------------------- > > Key: ROCKETMQ-102 > URL: https://issues.apache.org/jira/browse/ROCKETMQ-102 > Project: Apache RocketMQ > Issue Type: Improvement > Components: rocketmq-client > Reporter: Jaskey Lam > Assignee: Xiaorui Wang > > When shutdown push consumer, push consumer will shutdwon thread pool then > persist offset. > While shutdown thread pool is only stop submiting message to consume, which > does not stop consuming message which exists in the the thread queue or is > already being consumed. > Which will cause repeated message very easily though user are shutdown > gracefully according to the provided interface. > A way to solve this problem is needed. Such as accpet a param that how long > to wait for thread pool to terminated. -- This message was sent by Atlassian JIRA (v6.3.15#6346)