paul-rogers commented on a change in pull request #2000: DRILL-7607: support dynamic credit based flow control URL: https://github.com/apache/drill/pull/2000#discussion_r385997373
########## File path: exec/java-exec/src/main/java/org/apache/drill/exec/work/batch/UnlimitedRawBatchBuffer.java ########## @@ -32,12 +32,22 @@ private final int softlimit; private final int startlimit; + private int runtimeSoftLimit = -1; Review comment: These would greatly benefit from an explanation: either per-variable, or as a class comment to explain the algorithm. As I read the code, the idea is: * Something sets a memory limit per receiver. * The goal is to fill that memory up to 40% by adjusting the number of batches buffered on the receiver side, which is the same as the number of batches the sender can send before receiving an ACK. * After seeing the first `sampleTimes` batches, use the average of those batches to determine how many batches can fit in the available receiver memory. Is this roughly right? ---------------------------------------------------------------- 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: us...@infra.apache.org With regards, Apache Git Services