HADOOP-13288. Guard null stats key in FileSystemStorageStatistics (Mingliang Liu via Colin P. McCabe)

This commit is contained in:
Colin Patrick Mccabe 2016-06-20 14:25:07 -07:00
parent aa1b583cf9
commit 8c1f81d4bf

View File

@ -20,6 +20,7 @@
import java.util.Iterator;
import java.util.NoSuchElementException;
import com.google.common.base.Preconditions;
import org.apache.hadoop.classification.InterfaceAudience;
import org.apache.hadoop.classification.InterfaceStability;
import org.apache.hadoop.fs.FileSystem.Statistics.StatisticsData;
@ -81,6 +82,9 @@ public void remove() {
}
private static Long fetch(StatisticsData data, String key) {
Preconditions.checkArgument(key != null,
"The stat key of FileSystemStorageStatistics should not be null!");
switch (key) {
case "bytesRead":
return data.getBytesRead();
@ -107,6 +111,10 @@ private static Long fetch(StatisticsData data, String key) {
FileSystemStorageStatistics(String name, FileSystem.Statistics stats) {
super(name);
Preconditions.checkArgument(stats != null,
"FileSystem.Statistics can not be null");
Preconditions.checkArgument(stats.getData() != null,
"FileSystem.Statistics can not have null data");
this.stats = stats;
}