You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ratis.apache.org by "adoroszlai (via GitHub)" <gi...@apache.org> on 2023/04/13 15:55:13 UTC

[GitHub] [ratis] adoroszlai commented on a diff in pull request #872: RATIS-1831. GrpcLogAppender spinning idle between heartbeats

adoroszlai commented on code in PR #872:
URL: https://github.com/apache/ratis/pull/872#discussion_r1165736568


##########
ratis-grpc/src/main/java/org/apache/ratis/grpc/server/GrpcLogAppender.java:
##########
@@ -177,7 +177,7 @@ public long getWaitTimeMs() {
       // For normal nodes, new entries should be sent ASAP
       // however for slow followers (especially when the follower is down),
       // keep sending without any wait time only ends up in high CPU load
-      return Math.max(getMinWaitTimeMs(), 0L);
+      return Math.max(getTimeToWaitUntilNextSend(), 0L);
     }
     return Math.min(getMinWaitTimeMs(), getHeartbeatWaitTimeMs());

Review Comment:
   Thanks @szetszwo for the suggestion, I think this will also work.  Counts with this change:
   
   ```
   [s2@group-F8FAB959D329->s2-GrpcLogAppender-LogAppenderDaemon] - loops: 123, appends: 64
   [s1@group-F8FAB959D329->s0-GrpcLogAppender-LogAppenderDaemon] - loops: 122, appends: 63
   [s3@group-1E6858E6BEE2->s4-GrpcLogAppender-LogAppenderDaemon] - loops: 37, appends: 21
   [s3@group-1E6858E6BEE2->s5-GrpcLogAppender-LogAppenderDaemon] - loops: 35, appends: 23
   [s0@group-6D3C124B49BF->s1-GrpcLogAppender-LogAppenderDaemon] - loops: 37, appends: 25
   [s0@group-6D3C124B49BF->s2-GrpcLogAppender-LogAppenderDaemon] - loops: 36, appends: 22
   [s2@group-94A34C37A647->s0-GrpcLogAppender-LogAppenderDaemon] - loops: 24, appends: 18
   [s2@group-94A34C37A647->s1-GrpcLogAppender-LogAppenderDaemon] - loops: 25, appends: 17
   [s1@group-94A34C37A647->s2-GrpcLogAppender-LogAppenderDaemon] - loops: 117, appends: 59
   [s1@group-94A34C37A647->s0-GrpcLogAppender-LogAppenderDaemon] - loops: 117, appends: 61
   [s1@group-F9F7394FB05A->s2-GrpcLogAppender-LogAppenderDaemon] - loops: 120, appends: 61
   [s1@group-F9F7394FB05A->s0-GrpcLogAppender-LogAppenderDaemon] - loops: 121, appends: 63
   [s3@group-B7E5BC575823->s5-GrpcLogAppender-LogAppenderDaemon] - loops: 37, appends: 23
   [s3@group-B7E5BC575823->s4-GrpcLogAppender-LogAppenderDaemon] - loops: 41, appends: 28
   [s0@group-8D067B36BF3B->s2-GrpcLogAppender-LogAppenderDaemon] - loops: 33, appends: 21
   [s0@group-8D067B36BF3B->s1-GrpcLogAppender-LogAppenderDaemon] - loops: 37, appends: 24
   [s0@group-2EC9A438CF0C->s1-GrpcLogAppender-LogAppenderDaemon] - loops: 21, appends: 16
   [s0@group-2EC9A438CF0C->s2-GrpcLogAppender-LogAppenderDaemon] - loops: 24, appends: 16
   [s2@group-2EC9A438CF0C->s0-GrpcLogAppender-LogAppenderDaemon] - loops: 121, appends: 61
   [s2@group-2EC9A438CF0C->s1-GrpcLogAppender-LogAppenderDaemon] - loops: 120, appends: 63
   ```



-- 
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: issues-unsubscribe@ratis.apache.org

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