@@ -167,12 +167,13 @@ private RemotingCommand processRequest(final Channel channel, RemotingCommand re
167
167
requestHeader .getQueueId (), requestHeader .getOffset (),
168
168
ExtraInfoUtil .getPopTime (extraInfo ));
169
169
if (nextOffset > -1 ) {
170
- this .brokerController .getConsumerOffsetManager ().commitOffset (channel .remoteAddress ().toString (),
171
- requestHeader .getConsumerGroup (), requestHeader .getTopic (),
172
- requestHeader .getQueueId (),
173
- nextOffset );
174
- this .brokerController .getPopMessageProcessor ().notifyMessageArriving (requestHeader .getTopic (), requestHeader .getConsumerGroup (),
175
- requestHeader .getQueueId ());
170
+ if (!this .brokerController .getConsumerOffsetManager ().hasOffsetReset (
171
+ requestHeader .getTopic (), requestHeader .getConsumerGroup (), requestHeader .getQueueId ())) {
172
+ this .brokerController .getConsumerOffsetManager ().commitOffset (channel .remoteAddress ().toString (),
173
+ requestHeader .getConsumerGroup (), requestHeader .getTopic (), requestHeader .getQueueId (), nextOffset );
174
+ this .brokerController .getPopMessageProcessor ().notifyMessageArriving (
175
+ requestHeader .getTopic (), requestHeader .getConsumerGroup (), requestHeader .getQueueId ());
176
+ }
176
177
} else if (nextOffset == -1 ) {
177
178
String errorInfo = String .format ("offset is illegal, key:%s, old:%d, commit:%d, next:%d, %s" ,
178
179
lockKey , oldOffset , requestHeader .getOffset (), nextOffset , channel .remoteAddress ());
0 commit comments