Lin Yiqun created HDFS-9756: ------------------------------- Summary: Hard-Code value in DataTransferThrottler Key: HDFS-9756 URL: https://issues.apache.org/jira/browse/HDFS-9756 Project: Hadoop HDFS Issue Type: Bug Affects Versions: 2.7.1 Reporter: Lin Yiqun Assignee: Lin Yiqun
In DataTransferThrottler, the period time is hard-code for 500 ms. Even though it has other construction method, {code} /** * Constructor * @param period in milliseconds. Bandwidth is enforced over this * period. * @param bandwidthPerSec bandwidth allowed in bytes per second. */ public DataTransferThrottler(long period, long bandwidthPerSec) { this.curPeriodStart = monotonicNow(); this.period = period; this.curReserve = this.bytesPerPeriod = bandwidthPerSec*period/1000; this.periodExtension = period*3; } {code} but it was only invoked by this method {code} public DataTransferThrottler(long bandwidthPerSec) { this(500, bandwidthPerSec); // by default throttling period is 500ms } {code} So the period is a hard-code. This value can also influence the data-transfering. If period time value set small, the number of times to waitting for next period will be increased and the total waitting-time also be increased. So the average bandwidth will be decreased. -- This message was sent by Atlassian JIRA (v6.3.4#6332)