[ISSUE #7400] Fix getBrokerEpochSubCommand NPE

Co-authored-by: 石臻臻 <shirenchuang.src@cainiao.com>
This commit is contained in:
石臻臻(Steven shi)
2023-09-27 01:59:58 +08:00
committed by GitHub
co-authored by 石臻臻
parent c3b86cd1e3
commit 959a98120c
@@ -2736,10 +2736,16 @@ public class AdminBrokerProcessor implements NettyRequestProcessor {
final ReplicasManager replicasManager = this.brokerController.getReplicasManager();
assert replicasManager != null;
final BrokerConfig brokerConfig = this.brokerController.getBrokerConfig();
final EpochEntryCache entryCache = new EpochEntryCache(brokerConfig.getBrokerClusterName(),
brokerConfig.getBrokerName(), brokerConfig.getBrokerId(), replicasManager.getEpochEntries(), this.brokerController.getMessageStore().getMaxPhyOffset());
final RemotingCommand response = RemotingCommand.createResponseCommand(null);
if (!brokerConfig.isEnableControllerMode()) {
response.setCode(ResponseCode.SYSTEM_ERROR);
response.setRemark("this request only for controllerMode ");
return response;
}
final EpochEntryCache entryCache = new EpochEntryCache(brokerConfig.getBrokerClusterName(),
brokerConfig.getBrokerName(), brokerConfig.getBrokerId(), replicasManager.getEpochEntries(), this.brokerController.getMessageStore().getMaxPhyOffset());
response.setBody(entryCache.encode());
response.setCode(ResponseCode.SUCCESS);
response.setRemark(null);