[ 
https://issues.apache.org/jira/browse/ROCKETMQ-35?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15810610#comment-15810610
 ] 

ASF subversion and git services commented on ROCKETMQ-35:
---------------------------------------------------------

Commit 85467dfd34d8ff379d2ddfec0489d78dcba20c27 in incubator-rocketmq's branch 
refs/heads/master from [~qinliujie]
[ https://git-wip-us.apache.org/repos/asf?p=incubator-rocketmq.git;h=85467df ]

Fix-35 [ROCKETMQ-35] Reslove underlying NPE in ConsumeRequest, closes 
apache/incubator-rocketmq#32


> Consumer client can’t persist consume offset table to Broker
> ------------------------------------------------------------
>
>                 Key: ROCKETMQ-35
>                 URL: https://issues.apache.org/jira/browse/ROCKETMQ-35
>             Project: Apache RocketMQ
>          Issue Type: Bug
>          Components: rocketmq-client
>    Affects Versions: 4.0.0-incubating
>            Reporter: qinliujie
>            Assignee: Xiaorui Wang
>            Priority: Critical
>
> RocketMQ version:4.0.0-SNAPSHOT
> When I use the consumer which in example/quickstart and used 
> MessageListenerConcurrently MessageListener,I found that the consumer would 
> reconsume message when I restarted it everytime.That is no sense,So I printed 
> the log,found that when the consumer used RemoteBrokerOffsetStore to persist 
> the consume offset table which always be zero.
> I found that the inner class ConsumeRequest in 
> ConsumeMessageConcurrentlyService class has a bug in it.
> Let's have a see.
> ```java 
> consumeMessageContext.getProps().put(MixAll.CONSUME_CONTEXT_TYPE, 
> returnType.name());
> ```
> the consumeMessageContext not null only when 
> ConsumeMessageConcurrentlyService.this.defaultMQPushConsumerImpl.hasHook() be 
> TRUE.In the code,there is no IF clause,So,sometime will be cause NPE and 
> can't update the consume offset table.
> Solution:
> Just remove the code above.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to