szetszwo commented on pull request #383:
URL: https://github.com/apache/incubator-ratis/pull/383#issuecomment-761949146


   @runzhiwang ,  thanks again for working on this.
   
   > 2. In current ratis implementation, leader sends log or heartbeat to 
follower every 75ms, if there is log, leader will not send heartbeat again. For 
example, at 0ms there is log and leader send log to follower, at 75ms there is 
log and leader send log to follower again, ..., at 750ms there is log and 
leader send log to follower again. So you can find from 0ms to 750ms, log 
always exist, leader always send log, never heartbeat. But if each log need 
more than 1000ms to: WriteDisk, applyTransaction, then leader will not receive 
any reply from 0-1000ms, then leader lease becomes invalid frequently.
   
   With the leader lease feature, the leader probably should send heartbeat 
separately since followers may take a long time to process log entires.  (The 
followers do not count the log processing time when counting heartbeat timeout. 
 However, it is impossible for the leader to do the same discount.)
   


----------------------------------------------------------------
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.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to