From e5a6c415e5de00bab27d808da74f3a94a2ec4473 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=9F=B3=E6=B5=A9?= Date: Thu, 10 Jul 2025 16:11:04 +0800 Subject: [PATCH 1/3] =?UTF-8?q?chore(pom.xml):=20=E6=9B=B4=E6=96=B0=20Rock?= =?UTF-8?q?sDB=20=E4=BE=9D=E8=B5=96=E7=89=88=E6=9C=AC=E8=87=B3=201.0.3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 003e29e0ffd..b3e7ba8ccdc 100644 --- a/pom.xml +++ b/pom.xml @@ -138,7 +138,7 @@ 1.29.0-alpha 2.0.6 2.20.29 - 1.0.2 + 1.0.3 2.13.4.2 1.3.14 From 07267a7f6fba961f895a6ca5c1b6877df90db07d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=9F=B3=E6=B5=A9?= Date: Thu, 17 Jul 2025 10:20:48 +0800 Subject: [PATCH 2/3] =?UTF-8?q?refactor(controller):=20=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E6=B3=A8=E9=87=8A=E4=BB=A5=E6=8F=90=E9=AB=98=E4=BB=A3=E7=A0=81?= =?UTF-8?q?=E5=8F=AF=E8=AF=BB=E6=80=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 更新了多个文件中的注释,以便更清晰地解释变量和方法的作用。 --- .../apache/rocketmq/broker/controller/ReplicasManager.java | 2 +- .../rocketmq/controller/impl/manager/BrokerReplicaInfo.java | 2 +- .../rocketmq/controller/impl/manager/SyncStateInfo.java | 4 +++- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/broker/src/main/java/org/apache/rocketmq/broker/controller/ReplicasManager.java b/broker/src/main/java/org/apache/rocketmq/broker/controller/ReplicasManager.java index f22f22a12bd..bc9130087bd 100644 --- a/broker/src/main/java/org/apache/rocketmq/broker/controller/ReplicasManager.java +++ b/broker/src/main/java/org/apache/rocketmq/broker/controller/ReplicasManager.java @@ -206,7 +206,7 @@ private boolean startBasicService() { return false; } } - + // 同步controller的元数据 schedulingSyncBrokerMetadata(); // Register syncStateSet changed listener. diff --git a/controller/src/main/java/org/apache/rocketmq/controller/impl/manager/BrokerReplicaInfo.java b/controller/src/main/java/org/apache/rocketmq/controller/impl/manager/BrokerReplicaInfo.java index 1623a05908d..49d265dcbec 100644 --- a/controller/src/main/java/org/apache/rocketmq/controller/impl/manager/BrokerReplicaInfo.java +++ b/controller/src/main/java/org/apache/rocketmq/controller/impl/manager/BrokerReplicaInfo.java @@ -37,7 +37,7 @@ public class BrokerReplicaInfo implements Serializable { // Start from 1 private final AtomicLong nextAssignBrokerId; - + //registerCheckCode值:this.brokerAddress + ";" + System.currentTimeMillis(),作用后续ApplyBrokerId动作的身份校验 private final Map> brokerIdInfo; public BrokerReplicaInfo(String clusterName, String brokerName) { diff --git a/controller/src/main/java/org/apache/rocketmq/controller/impl/manager/SyncStateInfo.java b/controller/src/main/java/org/apache/rocketmq/controller/impl/manager/SyncStateInfo.java index 0b2bc1385b0..70e1a1bca77 100644 --- a/controller/src/main/java/org/apache/rocketmq/controller/impl/manager/SyncStateInfo.java +++ b/controller/src/main/java/org/apache/rocketmq/controller/impl/manager/SyncStateInfo.java @@ -28,9 +28,11 @@ public class SyncStateInfo implements Serializable { private final String clusterName; private final String brokerName; + //master版本号(任期号) private final AtomicInteger masterEpoch; + //同步副本数集合的版本(任期号) private final AtomicInteger syncStateSetEpoch; - + //同步副本数集合包含master private Set syncStateSet; private Long masterBrokerId; From 146eefdc30797f935aa7cd1743a8b67d002c1949 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=9F=B3=E6=B5=A9?= Date: Tue, 3 Feb 2026 13:36:59 +0800 Subject: [PATCH 3/3] =?UTF-8?q?fix(JRaftController):=20=E5=A4=84=E7=90=86p?= =?UTF-8?q?eerId=E4=B8=AD=E7=9A=84/lender=E5=90=8E=E7=BC=80=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 修复了在解析peerId时遇到"/learner"后缀导致解析失败的问题 Co-developed-by: Aone Copilot --- .../rocketmq/controller/impl/JRaftController.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/controller/src/main/java/org/apache/rocketmq/controller/impl/JRaftController.java b/controller/src/main/java/org/apache/rocketmq/controller/impl/JRaftController.java index e40a6349450..98620654773 100644 --- a/controller/src/main/java/org/apache/rocketmq/controller/impl/JRaftController.java +++ b/controller/src/main/java/org/apache/rocketmq/controller/impl/JRaftController.java @@ -116,9 +116,15 @@ private void initPeerIdMap() { String[] peers = this.controllerConfig.getJraftConfig().getjRaftInitConf().split(","); String[] rpcAddrs = this.controllerConfig.getJraftConfig().getjRaftControllerRPCAddr().split(","); for (int i = 0; i < peers.length; i++) { + String peerStr = peers[i]; + // Remove /learner suffix if present, as PeerId.parse() cannot handle it + int learnerIndex; + if ((learnerIndex = peerStr.indexOf("/learner")) > 0) { + peerStr = peerStr.substring(0, learnerIndex); + } PeerId peerId = new PeerId(); - if (!peerId.parse(peers[i])) { - throw new IllegalArgumentException("Fail to parse peerId:" + peers[i]); + if (!peerId.parse(peerStr)) { + throw new IllegalArgumentException("Fail to parse peerId:" + peerStr); } this.peerIdToAddr.put(peerId, rpcAddrs[i]); }