HDFS-11696. Fix warnings from Spotbugs in hadoop-hdfs. Contributed by Yiqun Lin.

This commit is contained in:
Akira Ajisaka 2017-05-16 12:41:59 -04:00
parent 9b90e52f1e
commit 89a8edc014
No known key found for this signature in database
GPG Key ID: C1EDBB9CA400FD50
9 changed files with 62 additions and 33 deletions

View File

@ -2857,9 +2857,12 @@ private void initThreadsNumForStripedReads(int numThreads) {
} }
synchronized (DFSClient.class) { synchronized (DFSClient.class) {
if (STRIPED_READ_THREAD_POOL == null) { if (STRIPED_READ_THREAD_POOL == null) {
STRIPED_READ_THREAD_POOL = DFSUtilClient.getThreadPoolExecutor(1, // Only after thread pool is fully constructed then save it to
// volatile field.
ThreadPoolExecutor threadPool = DFSUtilClient.getThreadPoolExecutor(1,
numThreads, 60, "StripedRead-", true); numThreads, 60, "StripedRead-", true);
STRIPED_READ_THREAD_POOL.allowCoreThreadTimeOut(true); threadPool.allowCoreThreadTimeOut(true);
STRIPED_READ_THREAD_POOL = threadPool;
} }
} }
} }

View File

@ -101,8 +101,9 @@ public boolean equals(Object o) {
} }
boolean areEqual; boolean areEqual;
for (String disk : this.slowDisks.keySet()) { for (Map.Entry<String, Map<DiskOp, Double>> entry : this.slowDisks
if (!this.slowDisks.get(disk).equals(that.slowDisks.get(disk))) { .entrySet()) {
if (!entry.getValue().equals(that.slowDisks.get(entry.getKey()))) {
return false; return false;
} }
} }

View File

@ -252,4 +252,9 @@
<Class name="org.apache.hadoop.hdfs.server.datanode.checker.AbstractFuture" /> <Class name="org.apache.hadoop.hdfs.server.datanode.checker.AbstractFuture" />
<Bug pattern="NS_DANGEROUS_NON_SHORT_CIRCUIT" /> <Bug pattern="NS_DANGEROUS_NON_SHORT_CIRCUIT" />
</Match> </Match>
<Match>
<Class name="org.apache.hadoop.hdfs.server.namenode.NNUpgradeUtil$1" />
<Method name="visitFile" />
<Bug pattern="NP_NULL_ON_SOME_PATH_FROM_RETURN_VALUE" />
</Match>
</FindBugsFilter> </FindBugsFilter>

View File

@ -297,6 +297,8 @@ public boolean accept(File file) {
return file.isDirectory(); return file.isDirectory();
} }
}); });
if (journalDirs != null) {
for (File journalDir : journalDirs) { for (File journalDir : journalDirs) {
String jid = journalDir.getName(); String jid = journalDir.getName();
if (!status.containsKey(jid)) { if (!status.containsKey(jid)) {
@ -305,6 +307,8 @@ public boolean accept(File file) {
status.put(jid, jMap); status.put(jid, jMap);
} }
} }
}
return JSON.toString(status); return JSON.toString(status);
} }

View File

@ -190,6 +190,8 @@ public NamenodeRole toNodeRole() {
} }
public void setClusterId(String cid) { public void setClusterId(String cid) {
Preconditions.checkState(this == UPGRADE || this == UPGRADEONLY
|| this == FORMAT);
clusterId = cid; clusterId = cid;
} }
@ -214,6 +216,7 @@ public MetaRecoveryContext createRecoveryContext() {
} }
public void setForce(int force) { public void setForce(int force) {
Preconditions.checkState(this == RECOVER);
this.force = force; this.force = force;
} }
@ -226,6 +229,7 @@ public boolean getForceFormat() {
} }
public void setForceFormat(boolean force) { public void setForceFormat(boolean force) {
Preconditions.checkState(this == FORMAT);
isForceFormat = force; isForceFormat = force;
} }
@ -234,6 +238,7 @@ public boolean getInteractiveFormat() {
} }
public void setInteractiveFormat(boolean interactive) { public void setInteractiveFormat(boolean interactive) {
Preconditions.checkState(this == FORMAT);
isInteractiveFormat = interactive; isInteractiveFormat = interactive;
} }

View File

@ -1336,11 +1336,15 @@ public boolean accept(File dir, String name) {
return name.startsWith(BLOCK_SUBDIR_PREFIX); return name.startsWith(BLOCK_SUBDIR_PREFIX);
} }
}); });
for(int i = 0; i < otherNames.length; i++)
if (otherNames != null) {
for (int i = 0; i < otherNames.length; i++) {
linkBlocksHelper(new File(from, otherNames[i]), linkBlocksHelper(new File(from, otherNames[i]),
new File(to, otherNames[i]), oldLV, hl, upgradeToIdBasedLayout, new File(to, otherNames[i]), oldLV, hl, upgradeToIdBasedLayout,
blockRoot, idBasedLayoutSingleLinks); blockRoot, idBasedLayoutSingleLinks);
} }
}
}
/** /**
* Get the BlockPoolSliceStorage from {@link bpStorageMap}. * Get the BlockPoolSliceStorage from {@link bpStorageMap}.

View File

@ -255,12 +255,14 @@ public boolean accept(File dir, String name) {
}); });
// Check whether there is any work to do. // Check whether there is any work to do.
if (filesInStorage.length <= numCheckpointsToRetain) { if (filesInStorage != null
&& filesInStorage.length <= numCheckpointsToRetain) {
return; return;
} }
// Create a sorted list of txids from the file names. // Create a sorted list of txids from the file names.
TreeSet<Long> sortedTxIds = new TreeSet<Long>(); TreeSet<Long> sortedTxIds = new TreeSet<Long>();
if (filesInStorage != null) {
for (String fName : filesInStorage) { for (String fName : filesInStorage) {
// Extract the transaction id from the file name. // Extract the transaction id from the file name.
long fTxId; long fTxId;
@ -274,6 +276,7 @@ public boolean accept(File dir, String name) {
} }
sortedTxIds.add(Long.valueOf(fTxId)); sortedTxIds.add(Long.valueOf(fTxId));
} }
}
int numFilesToDelete = sortedTxIds.size() - numCheckpointsToRetain; int numFilesToDelete = sortedTxIds.size() - numCheckpointsToRetain;
Iterator<Long> iter = sortedTxIds.iterator(); Iterator<Long> iter = sortedTxIds.iterator();

View File

@ -1917,7 +1917,7 @@ public int run(String[] argv) throws Exception {
return exitCode; return exitCode;
} }
} else if ("-report".equals(cmd)) { } else if ("-report".equals(cmd)) {
if (argv.length < 1) { if (argv.length > 4) {
printUsage(cmd); printUsage(cmd);
return exitCode; return exitCode;
} }
@ -1947,7 +1947,7 @@ public int run(String[] argv) throws Exception {
return exitCode; return exitCode;
} }
} else if (RollingUpgradeCommand.matches(cmd)) { } else if (RollingUpgradeCommand.matches(cmd)) {
if (argv.length < 1 || argv.length > 2) { if (argv.length > 2) {
printUsage(cmd); printUsage(cmd);
return exitCode; return exitCode;
} }
@ -2022,7 +2022,7 @@ public int run(String[] argv) throws Exception {
return exitCode; return exitCode;
} }
} else if ("-triggerBlockReport".equals(cmd)) { } else if ("-triggerBlockReport".equals(cmd)) {
if (argv.length < 1) { if ((argv.length != 2) && (argv.length != 3)) {
printUsage(cmd); printUsage(cmd);
return exitCode; return exitCode;
} }

View File

@ -722,9 +722,13 @@ private void processINode(DataInputStream in, ImageVisitor v,
if (supportSnapshot && supportInodeId) { if (supportSnapshot && supportInodeId) {
dirNodeMap.put(inodeId, pathName); dirNodeMap.put(inodeId, pathName);
} }
v.visit(ImageElement.NS_QUOTA, numBlocks == -1 ? in.readLong() : -1);
if (NameNodeLayoutVersion.supports(Feature.DISKSPACE_QUOTA, imageVersion)) v.visit(ImageElement.NS_QUOTA, in.readLong());
v.visit(ImageElement.DS_QUOTA, numBlocks == -1 ? in.readLong() : -1); if (NameNodeLayoutVersion.supports(Feature.DISKSPACE_QUOTA,
imageVersion)) {
v.visit(ImageElement.DS_QUOTA, in.readLong());
}
if (supportSnapshot) { if (supportSnapshot) {
boolean snapshottable = in.readBoolean(); boolean snapshottable = in.readBoolean();
if (!snapshottable) { if (!snapshottable) {