You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rocketmq.apache.org by "RongtongJin (via GitHub)" <gi...@apache.org> on 2023/03/26 02:45:35 UTC

[GitHub] [rocketmq] RongtongJin commented on issue #6468: The HA switch is not triggered when the broker disk I/O load is continuously high.

RongtongJin commented on issue #6468:
URL: https://github.com/apache/rocketmq/issues/6468#issuecomment-1483978256

   > I think it's a good idea to implement a health check endpoint on the broker side. Then the brokerIsActive is no longer check the heartbeat,but invoke the endpoint. the endpoint is as simple as the heartbeat, just return the status health or not. When elect the broker from the syncStateSet, it should also invoke it to check whether the broker is health before can be elelct as Master.
   > 
   > > At this point, the broker may reconnect quickly. Is it necessary to do a HA switching?
   > 
   > IMO, it't not neccssary. what more, The current controller has three places to trigger the election:
   > 
   > 1. The broker channel closed.
   > 2. The BrokerHeartbeatManager scanNotActiveBroker
   > 3. The DLedgerController scanInactiveMasterAndTriggerReelect.
   > 
   > I think just the scanInactiveMasterAndTriggerReelect is enough, In the current implementation, it is easy to have a concurrent election problem.
   
   Good suggestion. I also believe that disconnecting the channel should not immediately trigger the election.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@rocketmq.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org