You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rocketmq.apache.org by ji...@apache.org on 2023/02/07 01:14:38 UTC
[rocketmq] 12/14: fix(controller): fix some bug about ignoring new-add event type
This is an automated email from the ASF dual-hosted git repository.
jinrongtong pushed a commit to branch dledger-controller-brokerId
in repository https://gitbox.apache.org/repos/asf/rocketmq.git
commit 563e91d38514c84efde8d9d83569b966cb6fbaa4
Author: TheR1sing3un <th...@163.com>
AuthorDate: Mon Feb 6 13:40:48 2023 +0800
fix(controller): fix some bug about ignoring new-add event type
1. fix some bug about ignoring new-add event type
---
broker/src/main/java/org/apache/rocketmq/broker/out/BrokerOuterAPI.java | 1 +
.../java/org/apache/rocketmq/controller/impl/event/EventSerializer.java | 2 ++
.../main/java/org/apache/rocketmq/controller/impl/event/EventType.java | 2 ++
.../org/apache/rocketmq/test/autoswitchrole/AutoSwitchRoleBase.java | 2 ++
4 files changed, 7 insertions(+)
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 5f8c670a8..9c44f5df4 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
@@ -1306,6 +1306,7 @@ public class BrokerOuterAPI {
requestHeader.setConfirmOffset(confirmOffset);
requestHeader.setHeartbeatTimeoutMills(controllerHeartBeatTimeoutMills);
requestHeader.setElectionPriority(electionPriority);
+ requestHeader.setBrokerId(brokerId);
brokerOuterExecutor.execute(new AbstractBrokerRunnable(new BrokerIdentity(clusterName, brokerName, brokerId, isInBrokerContainer)) {
@Override
public void run0() {
diff --git a/controller/src/main/java/org/apache/rocketmq/controller/impl/event/EventSerializer.java b/controller/src/main/java/org/apache/rocketmq/controller/impl/event/EventSerializer.java
index d49616f2d..b5358c7c3 100644
--- a/controller/src/main/java/org/apache/rocketmq/controller/impl/event/EventSerializer.java
+++ b/controller/src/main/java/org/apache/rocketmq/controller/impl/event/EventSerializer.java
@@ -69,6 +69,8 @@ public class EventSerializer {
return this.serializer.deserialize(data, ElectMasterEvent.class);
case CLEAN_BROKER_DATA_EVENT:
return this.serializer.deserialize(data, CleanBrokerDataEvent.class);
+ case UPDATE_BROKER_ADDRESS:
+ return this.serializer.deserialize(data, UpdateBrokerAddressEvent.class);
default:
break;
}
diff --git a/controller/src/main/java/org/apache/rocketmq/controller/impl/event/EventType.java b/controller/src/main/java/org/apache/rocketmq/controller/impl/event/EventType.java
index 29aacf7a6..2b4cefb1d 100644
--- a/controller/src/main/java/org/apache/rocketmq/controller/impl/event/EventType.java
+++ b/controller/src/main/java/org/apache/rocketmq/controller/impl/event/EventType.java
@@ -48,6 +48,8 @@ public enum EventType {
return READ_EVENT;
case 5:
return CLEAN_BROKER_DATA_EVENT;
+ case 6:
+ return UPDATE_BROKER_ADDRESS;
}
return null;
}
diff --git a/test/src/test/java/org/apache/rocketmq/test/autoswitchrole/AutoSwitchRoleBase.java b/test/src/test/java/org/apache/rocketmq/test/autoswitchrole/AutoSwitchRoleBase.java
index 5e5d84c8b..b7480577b 100644
--- a/test/src/test/java/org/apache/rocketmq/test/autoswitchrole/AutoSwitchRoleBase.java
+++ b/test/src/test/java/org/apache/rocketmq/test/autoswitchrole/AutoSwitchRoleBase.java
@@ -131,6 +131,8 @@ public class AutoSwitchRoleBase {
storeConfig.setStorePathRootDir(STORE_PATH_ROOT_DIR + File.separator + brokerDir);
storeConfig.setStorePathCommitLog(STORE_PATH_ROOT_DIR + File.separator + brokerDir + File.separator + "commitlog");
storeConfig.setStorePathEpochFile(STORE_PATH_ROOT_DIR + File.separator + brokerDir + File.separator + "EpochFileCache");
+ storeConfig.setStorePathMetadata(STORE_PATH_ROOT_DIR + File.separator + brokerDir + File.separator + "metadata");
+ storeConfig.setStorePathTempMetadata(STORE_PATH_ROOT_DIR + File.separator + brokerDir + File.separator + "tempMetadata");
storeConfig.setTotalReplicas(3);
storeConfig.setInSyncReplicas(2);