From 364e60b1691a4d7b2f745b8ebf78177f254a4287 Mon Sep 17 00:00:00 2001 From: arp Date: Thu, 25 Sep 2014 11:14:24 -0700 Subject: [PATCH] HDFS-7144. Fix findbugs warnings in RamDiskReplicaTracker. (Contributed by Tsz Wo Nicholas Sze) --- .../hadoop-hdfs/CHANGES-HDFS-6581.txt | 3 +++ .../impl/RamDiskReplicaLruTracker.java | 10 +++++++++ .../fsdataset/impl/RamDiskReplicaTracker.java | 22 +++++++++++-------- 3 files changed, 26 insertions(+), 9 deletions(-) diff --git a/hadoop-hdfs-project/hadoop-hdfs/CHANGES-HDFS-6581.txt b/hadoop-hdfs-project/hadoop-hdfs/CHANGES-HDFS-6581.txt index 7693981a73..e23808de48 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/CHANGES-HDFS-6581.txt +++ b/hadoop-hdfs-project/hadoop-hdfs/CHANGES-HDFS-6581.txt @@ -77,4 +77,7 @@ HDFS-6932. Balancer and Mover tools should ignore replicas on RAM_DISK. (Xiaoyu Yao via Arpit Agarwal) + HDFS-7144. Fix findbugs warnings in RamDiskReplicaTracker. (szetszwo via + Arpit Agarwal) + diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/fsdataset/impl/RamDiskReplicaLruTracker.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/fsdataset/impl/RamDiskReplicaLruTracker.java index 0899e703a9..78080034ae 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/fsdataset/impl/RamDiskReplicaLruTracker.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/fsdataset/impl/RamDiskReplicaLruTracker.java @@ -40,6 +40,16 @@ private class RamDiskReplicaLru extends RamDiskReplica { private RamDiskReplicaLru(String bpid, long blockId, FsVolumeImpl ramDiskVolume) { super(bpid, blockId, ramDiskVolume); } + + @Override + public int hashCode() { + return super.hashCode(); + } + + @Override + public boolean equals(Object other) { + return super.equals(other); + } } /** diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/fsdataset/impl/RamDiskReplicaTracker.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/fsdataset/impl/RamDiskReplicaTracker.java index 03fc068027..2401424737 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/fsdataset/impl/RamDiskReplicaTracker.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/fsdataset/impl/RamDiskReplicaTracker.java @@ -19,6 +19,9 @@ package org.apache.hadoop.hdfs.server.datanode.fsdataset.impl; import com.google.common.base.Preconditions; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; import org.apache.hadoop.classification.InterfaceAudience; import org.apache.hadoop.classification.InterfaceStability; import org.apache.hadoop.conf.Configuration; @@ -31,6 +34,7 @@ @InterfaceAudience.Private @InterfaceStability.Unstable public abstract class RamDiskReplicaTracker { + static final Log LOG = LogFactory.getLog(RamDiskReplicaTracker.class); FsDatasetImpl fsDataset; @@ -117,18 +121,18 @@ public boolean equals(Object other) { // Delete the saved meta and block files. Failure to delete can be // ignored, the directory scanner will retry the deletion later. void deleteSavedFiles() { - try { - if (savedBlockFile != null) { - savedBlockFile.delete(); - savedBlockFile = null; + if (savedBlockFile != null) { + if (!savedBlockFile.delete()) { + LOG.warn("Failed to delete block file " + savedBlockFile); } + savedBlockFile = null; + } - if (savedMetaFile != null) { - savedMetaFile.delete(); - savedMetaFile = null; + if (savedMetaFile != null) { + if (!savedMetaFile.delete()) { + LOG.warn("Failed to delete meta file " + savedMetaFile); } - } catch (Throwable t) { - // Ignore any exceptions. + savedMetaFile = null; } }