john1337 commented on issue #9860:
URL: https://github.com/apache/rocketmq/issues/9860#issuecomment-3550905241

       protected void mergeAndRevive(ConsumeReviveObj consumeReviveObj) throws 
Throwable {
           ArrayList<PopCheckPoint> sortList = consumeReviveObj.genSortList();
           POP_LOGGER.info("reviveQueueId={}, ck listSize={}", queueId, 
sortList.size());
           if (sortList.size() != 0) {
               POP_LOGGER.info("reviveQueueId={}, 1st ck, startOffset={}, 
reviveOffset={}; last ck, startOffset={}, reviveOffset={}", queueId, 
sortList.get(0).getStartOffset(),
                   sortList.get(0).getReviveOffset(), 
sortList.get(sortList.size() - 1).getStartOffset(), 
sortList.get(sortList.size() - 1).getReviveOffset());
           }  
应该是一些漏网之鱼,该类好多方法都增加了this.brokerController.getBrokerConfig().isEnablePopLog()条件判断
    protected List<MessageExt> getReviveMessage(long offset, int queueId) {
           PullResult pullResult = getMessage(PopAckConstants.REVIVE_GROUP, 
reviveTopic, queueId, offset, 32, true);
           if (pullResult == null) {
               return null;
           }
           if (reachTail(pullResult, offset)) {
               if (this.brokerController.getBrokerConfig().isEnablePopLog()) {
                   POP_LOGGER.info("reviveQueueId={}, reach tail,offset {}", 
queueId, offset);
               }
           } else if (pullResult.getPullStatus() == PullStatus.OFFSET_ILLEGAL 
|| pullResult.getPullStatus() == PullStatus.NO_MATCHED_MSG) {
               POP_LOGGER.error("reviveQueueId={}, OFFSET_ILLEGAL {}, result is 
{}", queueId, offset, pullResult);
               if (!shouldRunPopRevive) {
                   POP_LOGGER.info("slave skip offset correct topic={}, 
reviveQueueId={}", reviveTopic, queueId);
                   return null;
               }
               
this.brokerController.getConsumerOffsetManager().commitOffset(PopAckConstants.LOCAL_HOST,
 PopAckConstants.REVIVE_GROUP, reviveTopic, queueId, 
pullResult.getNextBeginOffset() - 1);
           }
           return pullResult.getMsgFoundList();
       }


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to