Commit Graph
110 Commits
Author SHA1 Message Date
TheR1sing3un 1e2a301266 [ISSUE #6382] Periodically check for inactive masters (#6383)
* feat(controller): concurrent protect ReplicasInfoManager#replicaInfoTable and ReplicasInfoManager#syncStateSetInfoTable

1. concurrent protect ReplicasInfoManager#replicaInfoTable and
ReplicasInfoManager#syncStateSetInfoTable

* docs(controller): make statemachine thread-safe and support timed checking inactive master in each broker-set

1. make statemachine thread-safe
2. support timed checking inactive
master in each broker-set

* fix(controller): Add some logic when visit the BrokerReplicaInfo to avoid NPE

1. Add some logic when visit the BrokerReplicaInfo to avoid NPE

* test(controller): polish some test logic

1. polish some test logic

* fix(controller): Revise back the ControllerConfig#controllerStorePath to avoid the Incompatibility problems

1. Revise back the ControllerConfig#controllerStorePath to avoid the
Incompatibility problems
2023-03-21 13:59:53 +08:00
Ji Juntao f1e02e8947 [ISSUE #6392] GetSyncStateSet prints replica's alive status (#6393)
* print replica's alive status

* refactor

* rename getIsAlive-getAlive and setIsAlive-setAlive.
2023-03-20 13:53:07 +08:00
Ji Juntao 63a014b810 [ISSUE#6342] Local SyncStatSet sync to remote value when changeToMaster (#6352)
* fix ISSUE#6342

* refactor

* correct the syncStateSet in elect process.

* move syncStateSet into request/response's body.

* optimize the broker electing switch's branch.
2023-03-16 11:48:04 +08:00
TheR1sing3un 52c4c0cdf6 [ISSUE #6346] Support asynchronously notify brokers when their roles has been changed (#6348)
* feat(controller): support asynchronous notify brokers when roles changed

1. support asynchronous notify brokers when roles changed

* refactor(controller): move creating NotifyService instance logic to ControllerManager's constructor method

1. move creating NotifyService instance logic to ControllerManager's
constructor method
2023-03-15 13:50:06 +08:00
TheR1sing3un 483ba12cae test(controller): To pass ControllerManagerTest in Windows, we forbid the controller to notify the brokers when their roles have been changed.
1. To pass `ControllerManagerTest` in Windows,  we forbid the controller to notify the brokers when their roles have been changed.
2023-03-14 09:40:15 +08:00
TheR1sing3un 10147debf5 test(broker): optimize some test base store path
1. optimize some test base store path
2023-03-14 09:40:15 +08:00
TheR1sing3un 600d873fba test(controller): try to fix flaky test 2023-03-14 09:40:15 +08:00
TheR1sing3un e14158c7ff fix(controller): fix forgetting initialize BrokerHeartbeatManager
1. fix forgetting initialize BrokerHeartbeatManager
2023-03-14 09:40:15 +08:00
TheR1sing3un 19eafc80ff fix(broker): fix wrong test
1. fix wrong test
2023-03-14 09:40:15 +08:00
RongtongJin 28618e95ab Polish the code structure and code style 2023-03-14 09:40:15 +08:00
RongtongJin 3a141868b7 Fix some typos and log output 2023-03-14 09:40:15 +08:00
TheR1sing3un 358128c078 fix(controller): return failure when receive a heartbeat with empty brokerId
1. return failure when receive a heartbeat with empty brokerId
2023-03-14 09:40:15 +08:00
TheR1sing3un c494a43c52 refactor(controller): optimize some code suggested by reviewer
1. optimize some code suggested by reviewer
2023-03-14 09:40:15 +08:00
TheR1sing3un 46668b4eaf test(broker): add test to verify broker restart with changed address
1. add test to verify broker restart with changed address
2023-03-14 09:40:15 +08:00
TheR1sing3un 03d6ba23e4 style(controller): remove unused import
1. remove unused import
2023-03-14 09:40:15 +08:00
TheR1sing3un f843851788 fix(controller): fix some bug to pass AutoSwitchRoleIntegrationTest
1. fix some bug to pass AutoSwitchRoleIntegrationTest
2023-03-14 09:40:15 +08:00
TheR1sing3un ea71dc545a fix(controller): fix some bug about ignoring new-add event type
1. fix some bug about ignoring new-add event type
2023-03-14 09:40:15 +08:00
TheR1sing3un 01469030e4 fix(controller): fix some bug about wrong type comparison
1. fix some bug about wrong type comparison
2023-03-14 09:40:15 +08:00
TheR1sing3un 11b2cb84a6 feat(broker): fix some bugs to successfully compile project
1. fix some bugs to successfully compile project
2023-03-14 09:40:15 +08:00
TheR1sing3un 1293b74153 feat(broker): perfect ReplicaManagerTest.java
1. perfect ReplicaManagerTest.java
2023-03-14 09:40:15 +08:00
TheR1sing3un b97801c855 feat(controller): Improved logic and adaptation testing for persistent broker id versions
1. Improved logic and adaptation testing for persistent broker id versions
2023-03-14 09:40:15 +08:00
TheR1sing3un a808727768 feat(controller): implement logic about dealing with UpdateBrokerAddress event
1. implement logic about dealing with UpdateBrokerAddress event
2023-03-14 09:40:15 +08:00
TheR1sing3un d7cac1582e feat(controller): implement the general register to controller protocol in controller side
1. implement the general register to controller protocol in controller
side
2023-03-14 09:40:15 +08:00
TheR1sing3un cfdfa0ea51 feat(broker): implement the general register to controller protocol
1. implement the general register to controller protocol
2023-03-14 09:40:15 +08:00
TheR1sing3un 9577aacbc0 feat(controller): add protocols about new register flow
1. add protocols about new register flow
2023-03-14 09:40:15 +08:00
TheR1sing3un e38ea9510a feat(controller): refactor broker's information recording core from ip address to broker id
1. refactor broker's information recording core from ip address to broker id
2023-03-14 09:40:15 +08:00
RongtongJin 2c2db61e32 Resolve the conflict 2023-03-14 09:40:15 +08:00
TheR1sing3un a1de567e11 [ISSUE#5045] Refactor the register and elect-master process in controller mode (#5046)
* refactor(controller): refactor the register logic

1. refactor the register logic

* refactor(controller): remove unused field in ElectMasterEvent

1. remove unused field in ElectMasterEvent

* feat(controller): add a tryElectMaster request and process logic about it

1. add a tryElectMaster request and process logic about it

* feat(controller): refactor ReplicasInfoManagerTest

1. refactor ReplicasInfoManagerTest

* refactor(controller): refactor DLedgerControllerTest

1. refactor DLedgerControllerTest

* refactor(controller): refactor ControllerManagerTest

1. refactor ControllerManagerTest

* refactor(controller): refactor ReplicasInfoManagerTest

1. refactor ReplicasInfoManagerTest

* refactor(controller): refactor register process and pass the junit test

1. refactor ReplicasInfoManagerTest

* style(broker): rename a constant

1. rename a constant

* feat(controller): update the DLedger dependency from v0.27 to v0.30

1. update the DLedger dependency from v0.27 to v0.30

* style(controller): add a white-line just for trigger GitHub action again

1. add a white-line just for trigger GitHub action again

* feat(controller): combine electMaster api and brokerTryElectMaster api

1. combine electMaster api and brokerTryElectMaster api

* feat(controller): add a logic about verifying the broker id returned from registering

1. add a logic about verifying the broker id returned from registering

* fix(controller): remove unused code and add a warning log in ControllerManager

1. remove unused code and add a warning log in ControllerManager

* fix: resolve conflicts

1. resolve conflicts

* fix(controller): remove unused class

1. remove unused class

* fix(controller): Resolve conflicts after merging

1. Resolve conflicts after merging

* refactor(controller): Refactor ReplicasInfoManager#elect

1. Refactor ReplicasInfoManager#elect

* style(controller): remove unused imports

1. remove unused imports

* style(controller): remove unused imports

1. remove unused imports

* fix(controller): resolve conflicts after merging develop branch

1. resolve conflicts after merging develop branch

* rerun

* fix(controller): resolve conflicts in ReplicasInfoManagerTest#testRegisterNewBroker after merging develop branch

1. resolve conflicts in ReplicasInfoManagerTest#testRegisterNewBroker after merging develop branch

* style(controller): pass style check

1. pass style check
2023-03-14 09:40:15 +08:00
rongtong 244e8f9158 [ISSUE #6285] Polish the DLedgerControllerStateMachine log output to help troubleshoot 2023-03-09 11:44:13 +08:00
rongtong d5d5a637f6 [ISSUE #6226] Shutdown flowMonitor when connection disconnect (#6227)
* Shutdown flowMonitor when connection disconnect

* Whether the master is existed has more accurate judgment

* Shutdown flowMonitor when HAClient service end

* Pass the check style

* Modify according to comments
2023-03-03 22:28:15 +08:00
rongtong 260a21fa4f [ISSUE #6147] Detach RocketmqTraffic from controller_default log (#6148) 2023-02-21 15:06:10 +08:00
zhouxiang 0f878b5157 [maven-release-plugin] prepare for next development iteration 2023-02-16 12:35:58 +08:00
zhouxiang b8e9334d2a [maven-release-plugin] prepare release rocketmq-all-5.1.0 2023-02-16 12:35:58 +08:00
zhouxiang 83d6778747 [ISSUE #6030] Update version to 5.1.0-SNAPSHOT 2023-02-16 12:35:58 +08:00
agoodjuice 01d0b0ce10 [ISSUE #6085] Fix a typo 2023-02-16 08:47:34 +08:00
rongtong b0a454130e [ISSUE #5971] Make the internal logs related to the dledger in the controller print to a file separately (#5972)
* Make the internal logs related to the dledger in the controller print to a file separately

* Make the internal logs related to the dledger in the controller print to a file separately
2023-02-06 09:21:58 +08:00
Aaron Ai ff8c4c856d [ISSUE #5890] Fix dledger logging (#5959)
* Fix dledger logging

* Add bridge into store module
2023-02-03 14:12:23 +08:00
rongtong 0ea930182c GetSyncStateSetSubCommand can also print that the broker is not in syncStateSet (#5935) 2023-01-28 10:08:51 +08:00
Aaron Ai e048c0f987 Fix logback warning in rmq.controller.logback.xml 2023-01-20 11:52:11 +08:00
rongtong 646d04f425 [ISSUE #5712] Fix the invalid of heartbeat detection after controller switch (#5711)
* Fix the invalid of heartbeat detection after controller switch

* Pass the checkstyle

* Format ReplicasInfoManagerTest code style
2022-12-21 10:36:57 +08:00
mxsm c4e581cf9e [ISSUE #5686] Polish ReplicasInfoManager comment and static log attribute (#5687) 2022-12-12 09:27:04 +08:00
mxsm e197297d30 [ISSUE #5676] Support for dynamic Logging in proxy and controller modules (#5677) 2022-12-11 16:13:55 +08:00
mxsm e5c3f21277 [ISSUE #5631]optimize ReplicasInfoManager#registerBroker logic (#5633)
* [ISSUE #5631]optimize ReplicasInfoManager#registerBroker logic

* fix code style
2022-12-10 22:11:59 +08:00
Aaron Ai c5e8a8b808 Fix dleger logging issue (#5607) 2022-11-29 09:57:20 +08:00
hzh0425 93e82c8205 [ISSUE #5569]Support broker priority election for controller mode (#5548)
* Support broker priority election for controller mode

* fix comment of brokerElectionPriority

* Set "The lower the value of brokerElectionPriority, the higher the priority of the broker being selected as the master."
2022-11-24 12:59:34 +08:00
hzh0425 bfa02529cb [ISSUE #5572]Remove useless introduction in BrokerInfo 2022-11-23 10:53:13 +08:00
hzh0425 139dad04c7 [ISSUE #5558] Fix typos in DLedgerController 2022-11-22 11:39:09 +08:00
Aaron Ai 4469fb51dd Update group id of rocketmq logging (#5564) 2022-11-22 11:31:21 +08:00
Aaron Ai a68078fef8 [ISSUE #5484] Replace logging module with the shaded logback (#5540)
* Replace logging module with the shaded logback

* Add license header

* Fix bazel compile issue
2022-11-21 16:30:15 +08:00
rongtong d781271654 Move the header of the controller to the upper layer (#5550) 2022-11-20 21:51:32 +08:00