diff --git a/broker/src/main/java/org/apache/rocketmq/broker/out/BrokerOuterAPI.java b/broker/src/main/java/org/apache/rocketmq/broker/out/BrokerOuterAPI.java index 2000ddb394..38cf16ee22 100644 --- a/broker/src/main/java/org/apache/rocketmq/broker/out/BrokerOuterAPI.java +++ b/broker/src/main/java/org/apache/rocketmq/broker/out/BrokerOuterAPI.java @@ -531,7 +531,7 @@ public class BrokerOuterAPI { this.unregisterBroker(namesrvAddr, clusterName, brokerAddr, brokerName, brokerId); LOGGER.info("unregisterBroker OK, NamesrvAddr: {}", namesrvAddr); } catch (Exception e) { - LOGGER.warn("unregisterBroker Exception, {}", namesrvAddr, e); + LOGGER.warn("unregisterBroker Exception, NamesrvAddr: {}", namesrvAddr, e); } } } @@ -557,6 +557,9 @@ public class BrokerOuterAPI { case ResponseCode.SUCCESS: { return; } + case ResponseCode.SYSTEM_ERROR: { + throw new MQBrokerException(response.getCode(), response.getRemark(), brokerAddr); + } default: break; } diff --git a/namesrv/src/main/java/org/apache/rocketmq/namesrv/processor/DefaultRequestProcessor.java b/namesrv/src/main/java/org/apache/rocketmq/namesrv/processor/DefaultRequestProcessor.java index 09069eaf8a..6767176895 100644 --- a/namesrv/src/main/java/org/apache/rocketmq/namesrv/processor/DefaultRequestProcessor.java +++ b/namesrv/src/main/java/org/apache/rocketmq/namesrv/processor/DefaultRequestProcessor.java @@ -349,8 +349,10 @@ public class DefaultRequestProcessor implements NettyRequestProcessor { if (!this.namesrvController.getRouteInfoManager().submitUnRegisterBrokerRequest(requestHeader)) { log.warn("Couldn't submit the unregister broker request to handler, broker info: {}", requestHeader); + response.setCode(ResponseCode.SYSTEM_ERROR); + response.setRemark(null); + return response; } - response.setCode(ResponseCode.SUCCESS); response.setRemark(null); return response; diff --git a/namesrv/src/main/java/org/apache/rocketmq/namesrv/routeinfo/RouteInfoManager.java b/namesrv/src/main/java/org/apache/rocketmq/namesrv/routeinfo/RouteInfoManager.java index 7a3bf18448..91f14a3721 100644 --- a/namesrv/src/main/java/org/apache/rocketmq/namesrv/routeinfo/RouteInfoManager.java +++ b/namesrv/src/main/java/org/apache/rocketmq/namesrv/routeinfo/RouteInfoManager.java @@ -489,7 +489,6 @@ public class RouteInfoManager { } private int operateWritePermOfBroker(final String brokerName, final int requestCode) { - Set changedTopics = new HashSet<>(); int topicCnt = 0; Iterator>> itTopic = this.topicQueueTable.entrySet().iterator();