Uploaded image for project: 'Hadoop HDFS'
  1. Hadoop HDFS
  2. HDFS-14501

BenchmarkThroughput.writeFile hangs with misconfigured BUFFER_SIZE

    XMLWordPrintableJSON

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-13513HDFS-13514

      Attachments

        1. HDFS-14501.001.patch
          1 kB
          Hemanth Boyina

        Activity

          People

            hemanthboyina Hemanth Boyina
            dustinday John Doe
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated: