Eli Collins created HDFS-4058: --------------------------------- Summary: DirectoryScanner may fail with IOOB if the directory scanning threads return out of volume order Key: HDFS-4058 URL: https://issues.apache.org/jira/browse/HDFS-4058 Project: Hadoop HDFS Issue Type: Improvement Components: data-node Affects Versions: 2.0.0-alpha Reporter: Eli Collins Assignee: Eli Collins Attachments: hdfs-4058.txt
The DirectoryScanner may fail with an IOOB if the directory scanning threads return out of volume order (ie volume scanner #3 returns before volume scanner #2). This is because it's using an ArrayList and ArrayList#add(index, element) throws IOOB if idx >= size, and size is only increased as elements are added, therefore adds have to be done in index order. Since we know the size when we create the ArrayList let's just use an array (perhaps an ArrayList was used originally because someone thought array creation called the default constructor?). -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira