This is an automated email from the ASF dual-hosted git repository.
jinrongtong pushed a change to branch dledger-controller-brokerId
in repository https://gitbox.apache.org/repos/asf/rocketmq.git
from 90c147689 Resolve the conflict
new 88e00547f feat(controller): refactor broker's information recording
core from ip address to broker id
new 1e076179a feat(controller): add protocols about new register flow
new 7835d9523 refactor code in module: store/ha for persistence broker-id
new 468a5d85d feat(broker): implement the general register to controller
protocol
new c1bc01263 feat(controller): implement the general register to
controller protocol in controller side
new 56578f99f feat(controller): implement logic about dealing with
UpdateBrokerAddress event
new 5da292fba feat(controller): Improved logic and adaptation testing for
persistent broker id versions
new 36b3b4db7 feat(broker): perfect logic test in broker
new a9034ccb5 feat(broker): perfect ReplicaManagerTest.java
new 2a0819362 feat(broker): fix some bugs to successfully compile project
new e71139f18 fix(controller): fix some bug about wrong type comparison
new 563e91d38 fix(controller): fix some bug about ignoring new-add event
type
new 3951411ef fix(controller): fix some bug to pass
AutoSwitchRoleIntegrationTest
new 493a817dc style(controller): remove unused import
The 14 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.../apache/rocketmq/broker/BrokerController.java | 2 +-
.../broker/controller/ReplicasManager.java | 335 ++++++++++++++----
.../apache/rocketmq/broker/out/BrokerOuterAPI.java | 68 +++-
.../broker/processor/AdminBrokerProcessor.java | 2 +-
.../broker/controller/ReplicasManagerTest.java | 47 ++-
.../rocketmq/client/impl/MQClientAPIImpl.java | 14 +-
.../org/apache/rocketmq/common/BrokerAddrInfo.java | 43 +--
.../controller/BrokerHeartbeatManager.java | 7 +-
.../apache/rocketmq/controller/BrokerLiveInfo.java | 11 +-
.../org/apache/rocketmq/controller/Controller.java | 14 +-
.../rocketmq/controller/ControllerManager.java | 65 ++--
.../rocketmq/controller/elect/ElectPolicy.java | 9 +-
.../controller/elect/impl/DefaultElectPolicy.java | 62 ++--
.../controller/helper/BrokerLiveInfoGetter.java | 10 +-
.../controller/helper/BrokerValidPredicate.java | 6 +-
.../controller/impl/DLedgerController.java | 38 ++-
.../impl/DefaultBrokerHeartbeatManager.java | 26 +-
.../impl/event/AlterSyncStateSetEvent.java | 6 +-
.../controller/impl/event/ApplyBrokerIdEvent.java | 21 +-
.../impl/event/CleanBrokerDataEvent.java | 20 +-
.../controller/impl/event/ElectMasterEvent.java | 24 +-
.../controller/impl/event/EventSerializer.java | 2 +
.../rocketmq/controller/impl/event/EventType.java | 6 +-
.../impl/event/UpdateBrokerAddressEvent.java | 59 ++--
.../controller/impl/manager/BrokerReplicaInfo.java | 59 +++-
.../impl/manager/ReplicasInfoManager.java | 350 ++++++++++---------
.../controller/impl/manager/SyncStateInfo.java | 30 +-
.../processor/ControllerRequestProcessor.java | 70 ++--
.../impl/controller/ControllerManagerTest.java | 109 +++---
.../impl/controller/ControllerTestBase.java | 13 +-
.../controller/impl/DLedgerControllerTest.java | 196 +++++------
.../impl/DefaultBrokerHeartbeatManagerTest.java | 2 +-
.../impl/manager/ReplicasInfoManagerTest.java | 376 +++++++++++----------
.../namesrv/routeinfo/RouteInfoManager.java | 65 +++-
.../rocketmq/remoting/protocol/RequestCode.java | 6 +
.../rocketmq/remoting/protocol/ResponseCode.java | 2 +
.../remoting/protocol/body/BrokerReplicasInfo.java | 80 ++++-
.../protocol/body/RoleChangeNotifyEntry.java | 20 +-
.../remoting/protocol/body/SyncStateSet.java | 8 +-
.../NotifyBrokerRoleChangedRequestHeader.java | 37 +-
.../controller/AlterSyncStateSetRequestHeader.java | 28 +-
.../controller/ElectMasterRequestHeader.java | 34 +-
.../controller/ElectMasterResponseHeader.java | 45 +--
.../controller/GetReplicaInfoRequestHeader.java | 18 +-
.../controller/GetReplicaInfoResponseHeader.java | 26 +-
.../CleanControllerBrokerDataRequestHeader.java | 30 +-
.../register/ApplyBrokerIdRequestHeader.java} | 64 ++--
.../register/ApplyBrokerIdResponseHeader.java} | 46 ++-
.../register/GetNextBrokerIdRequestHeader.java} | 48 ++-
.../register/GetNextBrokerIdResponseHeader.java} | 61 ++--
.../RegisterBrokerToControllerRequestHeader.java | 14 +-
.../RegisterBrokerToControllerResponseHeader.java | 2 +-
.../register/RegisterSuccessRequestHeader.java} | 55 +--
.../RegisterSuccessResponseHeader.java} | 77 +++--
.../namesrv/BrokerHeartbeatRequestHeader.java | 2 +-
.../rocketmq/store/config/MessageStoreConfig.java | 20 ++
.../rocketmq/store/ha/GroupTransferService.java | 8 +-
.../store/ha/autoswitch/AutoSwitchHAClient.java | 35 +-
.../ha/autoswitch/AutoSwitchHAConnection.java | 38 +--
.../store/ha/autoswitch/AutoSwitchHAService.java | 77 ++---
.../store/ha/autoswitch/BrokerMetadata.java | 68 ++--
.../rocketmq/store/ha/autoswitch/MetadataFile.java | 43 ++-
.../store/ha/autoswitch/TempBrokerMetadata.java | 92 +++++
.../store/ha/autoswitch/AutoSwitchHATest.java | 56 +--
.../test/autoswitchrole/AutoSwitchRoleBase.java | 2 +
.../AutoSwitchRoleIntegrationTest.java | 2 -
.../rocketmq/tools/admin/DefaultMQAdminExt.java | 8 +-
.../tools/admin/DefaultMQAdminExtImpl.java | 8 +-
.../apache/rocketmq/tools/admin/MQAdminExt.java | 8 +-
.../controller/ReElectMasterSubCommand.java | 10 +-
70 files changed, 2021 insertions(+), 1324 deletions(-)
copy common/src/main/java/org/apache/rocketmq/common/hook/FilterCheckHook.java
=>
controller/src/main/java/org/apache/rocketmq/controller/helper/BrokerLiveInfoGetter.java
(78%)
copy acl/src/main/java/org/apache/rocketmq/acl/PermissionChecker.java =>
controller/src/main/java/org/apache/rocketmq/controller/helper/BrokerValidPredicate.java
(83%)
copy
remoting/src/main/java/org/apache/rocketmq/remoting/protocol/header/namesrv/QueryDataVersionRequestHeader.java
=>
controller/src/main/java/org/apache/rocketmq/controller/impl/event/UpdateBrokerAddressEvent.java
(61%)
copy test/src/test/resources/schema/api/client.producer.SendStatus.schema =>
controller/src/test/java/org/apache/rocketmq/controller/impl/controller/ControllerTestBase.java
(74%)
rename
remoting/src/main/java/org/apache/rocketmq/remoting/protocol/header/controller/{
=> admin}/CleanControllerBrokerDataRequestHeader.java (75%)
copy
remoting/src/main/java/org/apache/rocketmq/remoting/protocol/header/{GetBrokerAclConfigResponseHeader.java
=> controller/register/ApplyBrokerIdRequestHeader.java} (61%)
copy
remoting/src/main/java/org/apache/rocketmq/remoting/protocol/header/{namesrv/QueryDataVersionRequestHeader.java
=> controller/register/ApplyBrokerIdResponseHeader.java} (70%)
copy
remoting/src/main/java/org/apache/rocketmq/remoting/protocol/header/{namesrv/QueryDataVersionRequestHeader.java
=> controller/register/GetNextBrokerIdRequestHeader.java} (70%)
copy
remoting/src/main/java/org/apache/rocketmq/remoting/protocol/header/{GetBrokerAclConfigResponseHeader.java
=> controller/register/GetNextBrokerIdResponseHeader.java} (59%)
rename
remoting/src/main/java/org/apache/rocketmq/remoting/protocol/header/controller/{
=> register}/RegisterBrokerToControllerRequestHeader.java (88%)
rename
remoting/src/main/java/org/apache/rocketmq/remoting/protocol/header/controller/{
=> register}/RegisterBrokerToControllerResponseHeader.java (96%)
copy
remoting/src/main/java/org/apache/rocketmq/remoting/protocol/header/{namesrv/QueryDataVersionRequestHeader.java
=> controller/register/RegisterSuccessRequestHeader.java} (70%)
copy
remoting/src/main/java/org/apache/rocketmq/remoting/protocol/header/controller/{AlterSyncStateSetRequestHeader.java
=> register/RegisterSuccessResponseHeader.java} (58%)
copy
remoting/src/main/java/org/apache/rocketmq/remoting/protocol/header/namesrv/QueryDataVersionRequestHeader.java
=>
store/src/main/java/org/apache/rocketmq/store/ha/autoswitch/BrokerMetadata.java
(52%)
copy tools/src/main/java/org/apache/rocketmq/tools/monitor/MonitorConfig.java
=>
store/src/main/java/org/apache/rocketmq/store/ha/autoswitch/MetadataFile.java
(50%)
create mode 100644
store/src/main/java/org/apache/rocketmq/store/ha/autoswitch/TempBrokerMetadata.java