Details
-
Bug
-
Status: Patch Available
-
Major
-
Resolution: Unresolved
-
2.5.0
-
None
-
None
-
None
Description
When the configuration file is corrupted, reading BUFFER_SIZE from corrupted conf can return 0.
The "for" loop in BenchmarkThroughput.writeLocalFile function hangs endlessly.
Here is the code snippet.
BUFFER_SIZE = conf.getInt("dfsthroughput.buffer.size", 4 * 1024); private Path writeFile(FileSystem fs, String name, Configuration conf, long total ) throws IOException { Path f = dir.getLocalPathForWrite(name, total, conf); System.out.print("Writing " + name); resetMeasurements(); OutputStream out = fs.create(f); byte[] data = new byte[BUFFER_SIZE]; for(long size = 0; size < total; size += BUFFER_SIZE) { //Bug! out.write(data); } out.close(); printMeasurements(); return f; }
This configuration error also affects HDFS-13513, HDFS-13514,