Author: stevel Date: Wed Dec 23 21:03:18 2009 New Revision: 893628 URL: http://svn.apache.org/viewvc?rev=893628&view=rev Log: HDFS-775 FSDataset calls getCapacity() twice Modified: hadoop/hdfs/trunk/src/java/org/apache/hadoop/hdfs/server/datanode/FSDataset.java Modified: hadoop/hdfs/trunk/src/java/org/apache/hadoop/hdfs/server/datanode/FSDataset.java URL: http://svn.apache.org/viewvc/hadoop/hdfs/trunk/src/java/org/apache/hadoop/hdfs/server/datanode/FSDataset.java?rev=893628&r1=893627&r2=893628&view=diff ============================================================================== --- hadoop/hdfs/trunk/src/java/org/apache/hadoop/hdfs/server/datanode/FSDataset.java (original) +++ hadoop/hdfs/trunk/src/java/org/apache/hadoop/hdfs/server/datanode/FSDataset.java Wed Dec 23 21:03:18 2009 @@ -355,12 +355,14 @@ return dfsUsage.getUsed(); } + /** + * Calculate the capacity of the filesystem, after removing any + * reserved capacity. + * @return the unreserved number of bytes left in this filesystem. May be zero. + */ long getCapacity() throws IOException { - if (reserved > usage.getCapacity()) { - return 0; - } - - return usage.getCapacity()-reserved; + long remaining = usage.getCapacity() - reserved; + return remaining > 0 ? remaining : 0; } long getAvailable() throws IOException {