HDFS-7108. Fix unit test failures in SimulatedFsDataset. (Arpit Agarwal)
Conflicts:
hadoop-hdfs-project/hadoop-hdfs/CHANGES-HDFS-6581.txt
Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/f6903ca9
Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/f6903ca9
Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/f6903ca9
Branch: refs/heads/branch-2
Commit: f6903ca9457af07e24b982a22ddd9fa33a2026eb
Parents: a973b2f
Author: arp <[email protected]>
Authored: Sat Sep 20 16:12:17 2014 -0700
Committer: Jitendra Pandey <[email protected]>
Committed: Fri Oct 17 13:42:02 2014 -0700
----------------------------------------------------------------------
.../server/datanode/SimulatedFSDataset.java | 60 +++++++++++++++++++-
1 file changed, 59 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hadoop/blob/f6903ca9/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/SimulatedFSDataset.java
----------------------------------------------------------------------
diff --git
a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/SimulatedFSDataset.java
b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/SimulatedFSDataset.java
index 312da1f..d1284fe 100644
---
a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/SimulatedFSDataset.java
+++
b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/SimulatedFSDataset.java
@@ -420,9 +420,66 @@ public class SimulatedFSDataset implements
FsDatasetSpi<FsVolumeSpi> {
}
}
+ static class SimulatedVolume implements FsVolumeSpi {
+ private final SimulatedStorage storage;
+
+ SimulatedVolume(final SimulatedStorage storage) {
+ this.storage = storage;
+ }
+
+ @Override
+ public String getStorageID() {
+ return storage.getStorageUuid();
+ }
+
+ @Override
+ public String[] getBlockPoolList() {
+ return new String[0];
+ }
+
+ @Override
+ public long getAvailable() throws IOException {
+ return storage.getCapacity() - storage.getUsed();
+ }
+
+ @Override
+ public String getBasePath() {
+ return null;
+ }
+
+ @Override
+ public String getPath(String bpid) throws IOException {
+ return null;
+ }
+
+ @Override
+ public File getFinalizedDir(String bpid) throws IOException {
+ return null;
+ }
+
+ @Override
+ public StorageType getStorageType() {
+ return null;
+ }
+
+ @Override
+ public boolean isTransientStorage() {
+ return false;
+ }
+
+ @Override
+ public void reserveSpaceForRbw(long bytesToReserve) {
+ }
+
+ @Override
+ public void releaseReservedSpace(long bytesToRelease) {
+ }
+ }
+
private final Map<String, Map<Block, BInfo>> blockMap
= new HashMap<String, Map<Block,BInfo>>();
private final SimulatedStorage storage;
+ private final SimulatedVolume volume;
private final String datanodeUuid;
public SimulatedFSDataset(DataStorage storage, Configuration conf) {
@@ -439,6 +496,7 @@ public class SimulatedFSDataset implements
FsDatasetSpi<FsVolumeSpi> {
this.storage = new SimulatedStorage(
conf.getLong(CONFIG_PROPERTY_CAPACITY, DEFAULT_CAPACITY),
conf.getEnum(CONFIG_PROPERTY_STATE, DEFAULT_STATE));
+ this.volume = new SimulatedVolume(this.storage);
}
public synchronized void injectBlocks(String bpid,
@@ -1138,7 +1196,7 @@ public class SimulatedFSDataset implements
FsDatasetSpi<FsVolumeSpi> {
@Override
public FsVolumeSpi getVolume(ExtendedBlock b) {
- throw new UnsupportedOperationException();
+ return volume;
}
@Override