You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rocketmq.apache.org by du...@apache.org on 2019/10/24 08:57:56 UTC

[rocketmq] branch develop updated: fix(broker):fix the issue that master node route info is lost when some node join the group in dledger mode

This is an automated email from the ASF dual-hosted git repository.

duhengforever pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/rocketmq.git


The following commit(s) were added to refs/heads/develop by this push:
     new 21511da  fix(broker):fix the issue that master node route info is lost when some node join the group in dledger mode
     new cf55690  Merge pull request #1471 from RongtongJin/apache_develop
21511da is described below

commit 21511da384dea69b734ca1d5a3bd5c84267ecea2
Author: rongtongjin <79...@qq.com>
AuthorDate: Fri Sep 20 13:43:53 2019 +0800

    fix(broker):fix the issue that master node route info is lost when some node join the group in dledger mode
    
    Since brokerId defaults to 0, it will register with nameserver before brokerId is changed when broker restart, causing the route info of master to be overwritten.
    Set brokerId defaults to -1 in dledger mode and do not register wtih nameserver until brokerId is changed.
    
    Close #1464
---
 .../src/main/java/org/apache/rocketmq/broker/BrokerController.java   | 5 +----
 broker/src/main/java/org/apache/rocketmq/broker/BrokerStartup.java   | 4 ++++
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/broker/src/main/java/org/apache/rocketmq/broker/BrokerController.java b/broker/src/main/java/org/apache/rocketmq/broker/BrokerController.java
index a885cd0..9bc154f 100644
--- a/broker/src/main/java/org/apache/rocketmq/broker/BrokerController.java
+++ b/broker/src/main/java/org/apache/rocketmq/broker/BrokerController.java
@@ -857,12 +857,9 @@ public class BrokerController {
         if (!messageStoreConfig.isEnableDLegerCommitLog()) {
             startProcessorByHa(messageStoreConfig.getBrokerRole());
             handleSlaveSynchronize(messageStoreConfig.getBrokerRole());
+            this.registerBrokerAll(true, false, true);
         }
 
-
-
-        this.registerBrokerAll(true, false, true);
-
         this.scheduledExecutorService.scheduleAtFixedRate(new Runnable() {
 
             @Override
diff --git a/broker/src/main/java/org/apache/rocketmq/broker/BrokerStartup.java b/broker/src/main/java/org/apache/rocketmq/broker/BrokerStartup.java
index 4b986c0..960b848 100644
--- a/broker/src/main/java/org/apache/rocketmq/broker/BrokerStartup.java
+++ b/broker/src/main/java/org/apache/rocketmq/broker/BrokerStartup.java
@@ -178,6 +178,10 @@ public class BrokerStartup {
                     break;
             }
 
+            if (messageStoreConfig.isEnableDLegerCommitLog()) {
+                brokerConfig.setBrokerId(-1);
+            }
+
             messageStoreConfig.setHaListenPort(nettyServerConfig.getListenPort() + 1);
             LoggerContext lc = (LoggerContext) LoggerFactory.getILoggerFactory();
             JoranConfigurator configurator = new JoranConfigurator();