SinBex commented on code in PR #21695: URL: https://github.com/apache/flink/pull/21695#discussion_r1081138221
########## flink-runtime/src/main/java/org/apache/flink/runtime/scheduler/slowtaskdetector/ExecutionTimeBasedSlowTaskDetector.java: ########## @@ -168,21 +168,34 @@ private double getFinishedRatio(final ExecutionJobVertex executionJobVertex) { return (double) finishedCount / executionJobVertex.getTaskVertices().length; } - private long getBaseline( + private ExecutionTimeWithInputNumBytes getBaseline( final ExecutionJobVertex executionJobVertex, final long currentTimeMillis) { - final long executionTimeMedian = + final ExecutionTimeWithInputNumBytes weightedExecutionTimeMedian = calculateFinishedTaskExecutionTimeMedian(executionJobVertex, currentTimeMillis); - return (long) Math.max(baselineLowerBoundMillis, executionTimeMedian * baselineMultiplier); + long multipliedBaseline = + (long) (weightedExecutionTimeMedian.getExecutionTime() * baselineMultiplier); + if (multipliedBaseline < baselineLowerBoundMillis) { + double inputNumBytesMultiplier = + baselineLowerBoundMillis * 1.0 / weightedExecutionTimeMedian.getExecutionTime(); + return new ExecutionTimeWithInputNumBytes( + baselineLowerBoundMillis, + (long) + (weightedExecutionTimeMedian.getInputNumBytes() + * inputNumBytesMultiplier)); Review Comment: Yes, I have modified the logic here, but moved the `baselineLowerBoundMillis` judgment to `findExecutionsExceedingBaseline`. Please help to see if this is appropriate. -- 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-unsubscr...@flink.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org