HDFS-8607. TestFileCorruption doesn't work as expected. (Contributed by Walter Su)
This commit is contained in:
parent
4c5da9bd94
commit
32ffda1266
@ -889,6 +889,9 @@ Release 2.8.0 - UNRELEASED
|
||||
HDFS-8593. Calculation of effective layout version mishandles comparison to
|
||||
current layout version in storage. (cnauroth)
|
||||
|
||||
HDFS-8607. TestFileCorruption doesn't work as expected. (Walter Su via
|
||||
Arpit Agarwal)
|
||||
|
||||
Release 2.7.1 - UNRELEASED
|
||||
|
||||
INCOMPATIBLE CHANGES
|
||||
|
@ -27,8 +27,12 @@
|
||||
import java.io.File;
|
||||
import java.io.FileOutputStream;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.commons.io.FileUtils;
|
||||
import org.apache.commons.io.filefilter.DirectoryFileFilter;
|
||||
import org.apache.commons.io.filefilter.PrefixFileFilter;
|
||||
import org.apache.hadoop.conf.Configuration;
|
||||
import org.apache.hadoop.fs.ChecksumException;
|
||||
import org.apache.hadoop.fs.FileSystem;
|
||||
@ -74,14 +78,13 @@ public void testFileCorruption() throws Exception {
|
||||
String bpid = cluster.getNamesystem().getBlockPoolId();
|
||||
File data_dir = MiniDFSCluster.getFinalizedDir(storageDir, bpid);
|
||||
assertTrue("data directory does not exist", data_dir.exists());
|
||||
File[] blocks = data_dir.listFiles();
|
||||
assertTrue("Blocks do not exist in data-dir", (blocks != null) && (blocks.length > 0));
|
||||
for (int idx = 0; idx < blocks.length; idx++) {
|
||||
if (!blocks[idx].getName().startsWith(Block.BLOCK_FILE_PREFIX)) {
|
||||
continue;
|
||||
}
|
||||
System.out.println("Deliberately removing file "+blocks[idx].getName());
|
||||
assertTrue("Cannot remove file.", blocks[idx].delete());
|
||||
Collection<File> blocks = FileUtils.listFiles(data_dir,
|
||||
new PrefixFileFilter(Block.BLOCK_FILE_PREFIX),
|
||||
DirectoryFileFilter.DIRECTORY);
|
||||
assertTrue("Blocks do not exist in data-dir", blocks.size() > 0);
|
||||
for (File block : blocks) {
|
||||
System.out.println("Deliberately removing file " + block.getName());
|
||||
assertTrue("Cannot remove file.", block.delete());
|
||||
}
|
||||
assertTrue("Corrupted replicas not handled properly.",
|
||||
util.checkFiles(fs, "/srcdat"));
|
||||
|
Loading…
Reference in New Issue
Block a user