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/03/14 01:40:30 UTC
[rocketmq] branch develop updated (37ff93a27b -> fac699ea4d)
This is an automated email from the ASF dual-hosted git repository.
jinrongtong pushed a change to branch develop
in repository https://gitbox.apache.org/repos/asf/rocketmq.git
from 37ff93a27b [ISSUE #6331] Optimlize DefaultMQPushConsumerImpl#subscribe method (#6332)
add a1de567e11 [ISSUE#5045] Refactor the register and elect-master process in controller mode (#5046)
add 2c2db61e32 Resolve the conflict
add e38ea9510a feat(controller): refactor broker's information recording core from ip address to broker id
add 9577aacbc0 feat(controller): add protocols about new register flow
add f750dec0c7 refactor code in module: store/ha for persistence broker-id
add cfdfa0ea51 feat(broker): implement the general register to controller protocol
add d7cac1582e feat(controller): implement the general register to controller protocol in controller side
add a808727768 feat(controller): implement logic about dealing with UpdateBrokerAddress event
add b97801c855 feat(controller): Improved logic and adaptation testing for persistent broker id versions
add c9bf9d7899 feat(broker): perfect logic test in broker
add 1293b74153 feat(broker): perfect ReplicaManagerTest.java
add 11b2cb84a6 feat(broker): fix some bugs to successfully compile project
add 01469030e4 fix(controller): fix some bug about wrong type comparison
add ea71dc545a fix(controller): fix some bug about ignoring new-add event type
add f843851788 fix(controller): fix some bug to pass AutoSwitchRoleIntegrationTest
add 03d6ba23e4 style(controller): remove unused import
add 3a69aae701 [ISSUE #6023] Add a unit test to verify new register process in broker with controller mode (#6024)
add 0c2f480c3a fix(broker): mark unless attribute with @Deprecated
add 46668b4eaf test(broker): add test to verify broker restart with changed address
add c494a43c52 refactor(controller): optimize some code suggested by reviewer
add 5460c77622 test(test): add AutoSwitchRoleIntegration#testBasicWorkWhenControllerShutdown
add 358128c078 fix(controller): return failure when receive a heartbeat with empty brokerId
add 92fac4c10f fix(store): fix wrong value of MessageStoreConfig#storePathMetadata and storePathTempMetadata
add 2515ea5f98 fix(admin): print masterBrokerId when calling GetSyncStateSet
add 1ad1c4d825 docs(docs): add docs about how to update to BrokerId version
add 5a2aea7997 refactor(controller): remove meaningless attribute `MessageStoreConfig#storePathTempMetadata`
add 697e4e4264 feat(broker): check metadata if valid when register
add 3a141868b7 Fix some typos and log output
add b8f3de444a fix(broker): set isolate's value to false to normally register broker to name server
add bbf54f8a71 Modify StorePathMetadata to StorePathBrokerIdentity
add d145f36286 feat(broker): Random sleep within one second when broker register failed
add 3bad20c37a Make random an object variable
add 578a42803c Fix bug that state not match when handshake
add 28618e95ab Polish the code structure and code style
add c8bc4e84a0 Rename cleanBrokerData subCommand to cleanBrokerMetadata
add 498ffbb938 refactor(broker): rename registerSuccess to registerBrokerToController
add 935e6d573d test(broker): fix forgetting set the changed cluster name broker config back to default value
add ce418c907c feat(broker): add more logs when broker register to controller
add 175ec4b1ae fix(broker): fix wrong log
add 19eafc80ff fix(broker): fix wrong test
add c94c65b691 fix(admin): fix incompatible command: CleanBrokerMeta
add e14158c7ff fix(controller): fix forgetting initialize BrokerHeartbeatManager
add a240753951 Fix CleanControllerBrokerMetaSubCommand and ReElectMasterSubCommand parameter error
add 506a8a9037 test(controller): add more logs when register and refactor ReplicasManagerRegisterTest
add 600d873fba test(controller): try to fix flaky test
add 10147debf5 test(broker): optimize some test base store path
add d802231163 fix(store): fix conflicts after rebase
add dcf51d715c test(broker): fix conflicts in test after rebase
add 483ba12cae test(controller): To pass `ControllerManagerTest` in Windows, we forbid the controller to notify the brokers when their roles have been changed.
add fac699ea4d Fix some spelling problems
No new revisions were added by this update.
Summary of changes:
BUILD.bazel | 2 +
WORKSPACE | 3 +
.../apache/rocketmq/broker/BrokerController.java | 20 +-
.../broker/controller/ReplicasManager.java | 459 +++++++++++++++----
.../apache/rocketmq/broker/out/BrokerOuterAPI.java | 90 +++-
.../broker/processor/AdminBrokerProcessor.java | 2 +-
.../controller/ReplicasManagerRegisterTest.java | 344 ++++++++++++++
.../broker/controller/ReplicasManagerTest.java | 62 ++-
.../rocketmq/client/impl/MQClientAPIImpl.java | 18 +-
.../java/org/apache/rocketmq/common/MixAll.java | 2 +
.../controller/BrokerHeartbeatManager.java | 13 +-
.../org/apache/rocketmq/controller/Controller.java | 18 +-
.../rocketmq/controller/ControllerManager.java | 81 ++--
.../rocketmq/controller/elect/ElectPolicy.java | 9 +-
.../controller/elect/impl/DefaultElectPolicy.java | 64 ++-
.../controller/helper/BrokerLiveInfoGetter.java | 13 +-
.../controller/helper/BrokerValidPredicate.java | 8 +-
.../controller/impl/DLedgerController.java | 34 +-
.../impl/DLedgerControllerStateMachine.java | 6 +-
.../impl/event/AlterSyncStateSetEvent.java | 6 +-
.../controller/impl/event/ApplyBrokerIdEvent.java | 26 +-
.../impl/event/CleanBrokerDataEvent.java | 20 +-
.../controller/impl/event/ElectMasterEvent.java | 31 +-
.../controller/impl/event/EventSerializer.java | 2 +
.../rocketmq/controller/impl/event/EventType.java | 6 +-
.../impl/event/UpdateBrokerAddressEvent.java | 59 ++-
.../impl/heartbeat/BrokerIdentityInfo.java | 51 +--
.../{ => impl/heartbeat}/BrokerLiveInfo.java | 13 +-
.../DefaultBrokerHeartbeatManager.java | 56 +--
.../controller/impl/manager/BrokerInfo.java | 76 ----
.../controller/impl/manager/BrokerReplicaInfo.java | 103 +++++
.../impl/manager/ReplicasInfoManager.java | 498 +++++++++++----------
.../controller/impl/manager/SyncStateInfo.java | 44 +-
.../processor/ControllerRequestProcessor.java | 221 +++++----
.../impl/controller/ControllerManagerTest.java | 139 ++++--
.../impl/controller/ControllerTestBase.java | 13 +-
.../controller/impl/DLedgerControllerTest.java | 215 +++++----
.../impl/DefaultBrokerHeartbeatManagerTest.java | 5 +-
.../impl/manager/ReplicasInfoManagerTest.java | 395 ++++++++++------
docs/cn/controller/deploy.md | 26 ++
docs/en/controller/deploy.md | 27 ++
.../namesrv/routeinfo/RouteInfoManager.java | 65 ++-
pom.xml | 27 ++
.../rocketmq/remoting/protocol/RequestCode.java | 4 +
.../rocketmq/remoting/protocol/ResponseCode.java | 9 +-
.../remoting/protocol/body/BrokerReplicasInfo.java | 80 +++-
.../protocol/body/RoleChangeNotifyEntry.java | 74 +++
.../remoting/protocol/body/SyncStateSet.java | 8 +-
.../NotifyBrokerRoleChangedRequestHeader.java | 37 +-
.../controller/AlterSyncStateSetRequestHeader.java | 28 +-
.../controller/ElectMasterRequestHeader.java | 57 ++-
.../controller/ElectMasterResponseHeader.java | 51 ++-
.../controller/GetReplicaInfoRequestHeader.java | 18 +-
.../controller/GetReplicaInfoResponseHeader.java | 26 +-
.../RegisterBrokerToControllerRequestHeader.java | 142 ------
.../CleanControllerBrokerDataRequestHeader.java | 30 +-
.../ApplyBrokerIdRequestHeader.java} | 61 ++-
.../register/ApplyBrokerIdResponseHeader.java} | 46 +-
.../register/GetNextBrokerIdRequestHeader.java} | 48 +-
.../GetNextBrokerIdResponseHeader.java} | 56 ++-
.../RegisterBrokerToControllerRequestHeader.java} | 58 ++-
.../RegisterBrokerToControllerResponseHeader.java | 76 ++--
.../rocketmq/store/config/MessageStoreConfig.java | 16 +-
.../rocketmq/store/ha/GroupTransferService.java | 10 +-
.../store/ha/autoswitch/AutoSwitchHAClient.java | 52 +--
.../ha/autoswitch/AutoSwitchHAConnection.java | 38 +-
.../store/ha/autoswitch/AutoSwitchHAService.java | 93 ++--
.../store/ha/autoswitch/BrokerMetadata.java | 107 +++++
.../rocketmq/store/ha/autoswitch/MetadataFile.java | 59 +++
.../store/ha/autoswitch/TempBrokerMetadata.java | 95 ++++
.../store/ha/autoswitch/AutoSwitchHATest.java | 68 +--
test/pom.xml | 4 -
.../test/autoswitchrole/AutoSwitchRoleBase.java | 1 +
.../AutoSwitchRoleIntegrationTest.java | 83 +++-
.../rocketmq/tools/admin/DefaultMQAdminExt.java | 12 +-
.../tools/admin/DefaultMQAdminExtImpl.java | 12 +-
.../apache/rocketmq/tools/admin/MQAdminExt.java | 10 +-
.../rocketmq/tools/command/MQAdminStartup.java | 4 +-
...va => CleanControllerBrokerMetaSubCommand.java} | 31 +-
.../controller/ReElectMasterSubCommand.java | 16 +-
.../command/ha/GetSyncStateSetSubCommand.java | 16 +-
81 files changed, 3294 insertions(+), 1714 deletions(-)
create mode 100644 broker/src/test/java/org/apache/rocketmq/broker/controller/ReplicasManagerRegisterTest.java
copy remoting/src/main/java/org/apache/rocketmq/remoting/RemotingService.java => controller/src/main/java/org/apache/rocketmq/controller/helper/BrokerLiveInfoGetter.java (77%)
copy acl/src/main/java/org/apache/rocketmq/acl/common/SigningAlgorithm.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%)
rename common/src/main/java/org/apache/rocketmq/common/BrokerAddrInfo.java => controller/src/main/java/org/apache/rocketmq/controller/impl/heartbeat/BrokerIdentityInfo.java (57%)
rename controller/src/main/java/org/apache/rocketmq/controller/{ => impl/heartbeat}/BrokerLiveInfo.java (93%)
rename controller/src/main/java/org/apache/rocketmq/controller/impl/{ => heartbeat}/DefaultBrokerHeartbeatManager.java (76%)
delete mode 100644 controller/src/main/java/org/apache/rocketmq/controller/impl/manager/BrokerInfo.java
create mode 100644 controller/src/main/java/org/apache/rocketmq/controller/impl/manager/BrokerReplicaInfo.java
copy test/src/test/resources/schema/api/client.producer.SendStatus.schema => controller/src/test/java/org/apache/rocketmq/controller/impl/controller/ControllerTestBase.java (74%)
create mode 100644 remoting/src/main/java/org/apache/rocketmq/remoting/protocol/body/RoleChangeNotifyEntry.java
delete mode 100644 remoting/src/main/java/org/apache/rocketmq/remoting/protocol/header/controller/RegisterBrokerToControllerRequestHeader.java
rename remoting/src/main/java/org/apache/rocketmq/remoting/protocol/header/controller/{ => admin}/CleanControllerBrokerDataRequestHeader.java (73%)
copy remoting/src/main/java/org/apache/rocketmq/remoting/protocol/header/controller/{ElectMasterRequestHeader.java => 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/controller/{ElectMasterRequestHeader.java => register/GetNextBrokerIdResponseHeader.java} (62%)
copy remoting/src/main/java/org/apache/rocketmq/remoting/protocol/header/controller/{ElectMasterRequestHeader.java => register/RegisterBrokerToControllerRequestHeader.java} (70%)
rename remoting/src/main/java/org/apache/rocketmq/remoting/protocol/header/controller/{ => register}/RegisterBrokerToControllerResponseHeader.java (58%)
create mode 100644 store/src/main/java/org/apache/rocketmq/store/ha/autoswitch/BrokerMetadata.java
create mode 100644 store/src/main/java/org/apache/rocketmq/store/ha/autoswitch/MetadataFile.java
create mode 100644 store/src/main/java/org/apache/rocketmq/store/ha/autoswitch/TempBrokerMetadata.java
rename tools/src/main/java/org/apache/rocketmq/tools/command/controller/{CleanControllerBrokerDataSubCommand.java => CleanControllerBrokerMetaSubCommand.java} (68%)