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%)