HDFS-13570. TestQuotaByStorageType,TestQuota,TestDFSOutputStream fail on Windows. Contributed by Anbang Hu.

(cherry picked from commit c0ec061e28)
This commit is contained in:
Inigo Goiri 2018-05-17 09:21:57 -07:00
parent 4f1ec6a515
commit b0c89690ed
3 changed files with 30 additions and 31 deletions

View File

@ -212,7 +212,7 @@ public class TestDFSOutputStream {
dfsCluster.waitActive();
final FSDataOutputStream os = dfsCluster.getFileSystem()
.create(new Path(baseDir.getAbsolutePath(), "testPreventOverflow"));
.create(new Path(baseDir.getPath(), "testPreventOverflow"));
final DFSOutputStream dos = (DFSOutputStream) Whitebox
.getInternalState(os, "wrappedStream");

View File

@ -188,7 +188,7 @@ public class TestQuota {
public void testQuotaCommands() throws Exception {
DFSAdmin admin = new DFSAdmin(conf);
final Path dir = new Path(
PathUtils.getTestPath(getClass()),
PathUtils.getTestDir(getClass()).getPath(),
GenericTestUtils.getMethodName());
assertTrue(dfs.mkdirs(dir));
@ -478,7 +478,7 @@ public class TestQuota {
@Test
public void testNamespaceCommands() throws Exception {
final Path parent = new Path(
PathUtils.getTestPath(getClass()),
PathUtils.getTestDir(getClass()).getPath(),
GenericTestUtils.getMethodName());
assertTrue(dfs.mkdirs(parent));
@ -659,7 +659,7 @@ public class TestQuota {
@Test
public void testSpaceCommands() throws Exception {
final Path parent = new Path(
PathUtils.getTestPath(getClass()),
PathUtils.getTestDir(getClass()).getPath(),
GenericTestUtils.getMethodName());
assertTrue(dfs.mkdirs(parent));
@ -916,7 +916,7 @@ public class TestQuota {
@Test
public void testQuotaByStorageType() throws Exception {
final Path parent = new Path(
PathUtils.getTestPath(getClass()),
PathUtils.getTestDir(getClass()).getPath(),
GenericTestUtils.getMethodName());
assertTrue(dfs.mkdirs(parent));
@ -961,7 +961,7 @@ public class TestQuota {
@Test
public void testMaxSpaceQuotas() throws Exception {
final Path parent = new Path(
PathUtils.getTestPath(getClass()),
PathUtils.getTestDir(getClass()).getPath(),
GenericTestUtils.getMethodName());
assertTrue(dfs.mkdirs(parent));
@ -1024,7 +1024,7 @@ public class TestQuota {
public void testBlockAllocationAdjustsUsageConservatively()
throws Exception {
final Path parent = new Path(
PathUtils.getTestPath(getClass()),
PathUtils.getTestDir(getClass()).getPath(),
GenericTestUtils.getMethodName());
assertTrue(dfs.mkdirs(parent));
@ -1074,7 +1074,7 @@ public class TestQuota {
@Test
public void testMultipleFilesSmallerThanOneBlock() throws Exception {
final Path parent = new Path(
PathUtils.getTestPath(getClass()),
PathUtils.getTestDir(getClass()).getPath(),
GenericTestUtils.getMethodName());
assertTrue(dfs.mkdirs(parent));
@ -1184,7 +1184,7 @@ public class TestQuota {
@Test
public void testHugeFileCount() throws IOException {
final Path parent = new Path(
PathUtils.getTestPath(getClass()),
PathUtils.getTestDir(getClass()).getPath(),
GenericTestUtils.getMethodName());
assertTrue(dfs.mkdirs(parent));
@ -1217,7 +1217,7 @@ public class TestQuota {
final DFSAdmin dfsAdmin = new DFSAdmin(conf);
final Path dir = new Path(
PathUtils.getTestPath(getClass()),
PathUtils.getTestDir(getClass()).getPath(),
GenericTestUtils.getMethodName());
assertTrue(dfs.mkdirs(dir));
@ -1248,7 +1248,7 @@ public class TestQuota {
public void testSetAndClearSpaceQuotaRegular() throws Exception {
final Path dir = new Path(
PathUtils.getTestPath(getClass()),
PathUtils.getTestDir(getClass()).getPath(),
GenericTestUtils.getMethodName());
assertTrue(dfs.mkdirs(dir));
@ -1320,7 +1320,7 @@ public class TestQuota {
public void testSetAndClearSpaceQuotaByStorageType() throws Exception {
final Path dir = new Path(
PathUtils.getTestPath(getClass()),
PathUtils.getTestDir(getClass()).getPath(),
GenericTestUtils.getMethodName());
assertTrue(dfs.mkdirs(dir));
@ -1373,27 +1373,27 @@ public class TestQuota {
* Test to set and clear space quote when directory doesn't exist.
*/
@Test(timeout = 30000)
public void testSetAndClearSpaceQuotaDirecotryNotExist() throws Exception {
public void testSetAndClearSpaceQuotaDirectoryNotExist() throws Exception {
final Path dir = new Path(
PathUtils.getTestPath(getClass()),
PathUtils.getTestDir(getClass()).getPath(),
GenericTestUtils.getMethodName());
/* set space quota */
testSetAndClearSpaceQuotaDirecotryNotExistInternal(
testSetAndClearSpaceQuotaDirectoryNotExistInternal(
new String[] {"-setSpaceQuota", "1024", dir.toString()},
dir,
-1,
"setSpaceQuota");
/* clear space quota */
testSetAndClearSpaceQuotaDirecotryNotExistInternal(
testSetAndClearSpaceQuotaDirectoryNotExistInternal(
new String[] {"-clrSpaceQuota", dir.toString()},
dir,
-1,
"clrSpaceQuota");
}
private void testSetAndClearSpaceQuotaDirecotryNotExistInternal(
private void testSetAndClearSpaceQuotaDirectoryNotExistInternal(
final String[] args,
final Path dir,
final int cmdRet,
@ -1423,7 +1423,7 @@ public class TestQuota {
public void testSetAndClearSpaceQuotaPathIsFile() throws Exception {
final Path parent = new Path(
PathUtils.getTestPath(getClass()),
PathUtils.getTestDir(getClass()).getPath(),
GenericTestUtils.getMethodName());
final Path file = new Path(parent, "path-is-file");
DFSTestUtil.createFile(dfs, file, 1024L, (short) 1L, 0);
@ -1474,7 +1474,7 @@ public class TestQuota {
public void testSetAndClearSpaceQuotaNoAccess() throws Exception {
final Path dir = new Path(
PathUtils.getTestPath(getClass()),
PathUtils.getTestDir(getClass()).getPath(),
GenericTestUtils.getMethodName());
assertTrue(dfs.mkdirs(dir));
@ -1496,7 +1496,8 @@ public class TestQuota {
GenericTestUtils.setLogLevel(DFSOutputStream.LOG, Level.TRACE);
GenericTestUtils.setLogLevel(DataStreamer.LOG, Level.TRACE);
final DFSAdmin dfsAdmin = new DFSAdmin(conf);
final Path dir = new Path(PathUtils.getTestPath(getClass()),
final Path dir = new Path(
PathUtils.getTestDir(getClass()).getPath(),
GenericTestUtils.getMethodName());
assertTrue(dfs.mkdirs(dir));
final String[] args = new String[] {"-setSpaceQuota", "1", dir.toString()};
@ -1520,7 +1521,8 @@ public class TestQuota {
GenericTestUtils.setLogLevel(DataStreamer.LOG, Level.TRACE);
GenericTestUtils.setLogLevel(DFSClient.LOG, Level.TRACE);
final DFSAdmin dfsAdmin = new DFSAdmin(conf);
final Path dir = new Path(PathUtils.getTestPath(getClass()),
final Path dir = new Path(
PathUtils.getTestDir(getClass()).getPath(),
GenericTestUtils.getMethodName());
assertTrue(dfs.mkdirs(dir));
final String[] args = new String[] {"-setSpaceQuota", "1", dir.toString()};
@ -1560,7 +1562,8 @@ public class TestQuota {
GenericTestUtils.setLogLevel(DFSOutputStream.LOG, Level.TRACE);
GenericTestUtils.setLogLevel(DataStreamer.LOG, Level.TRACE);
final DFSAdmin dfsAdmin = new DFSAdmin(conf);
final Path dir = new Path(PathUtils.getTestPath(getClass()),
final Path dir = new Path(
PathUtils.getTestDir(getClass()).getPath(),
GenericTestUtils.getMethodName());
dfs.delete(dir, true);
assertTrue(dfs.mkdirs(dir));
@ -1617,7 +1620,8 @@ public class TestQuota {
private static void scanIntoList(
final ByteArrayOutputStream baos,
final List<String> list) {
final Scanner scanner = new Scanner(baos.toString());
final Scanner scanner = new Scanner(
baos.toString().replaceAll("\r\r\n", System.lineSeparator()));
while (scanner.hasNextLine()) {
list.add(scanner.nextLine());
}

View File

@ -36,7 +36,6 @@ import org.apache.hadoop.hdfs.protocol.HdfsConstants;
import org.apache.hadoop.hdfs.protocol.QuotaByStorageTypeExceededException;
import org.apache.hadoop.hdfs.server.namenode.snapshot.SnapshotTestHelper;
import org.apache.hadoop.test.GenericTestUtils;
import org.apache.hadoop.test.PathUtils;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
@ -804,8 +803,7 @@ public class TestQuotaByStorageType {
*/
@Test
public void testStorageSpaceQuotaWithWarmPolicy() throws IOException {
final Path testDir = new Path(
PathUtils.getTestPath(getClass()),
final Path testDir = new Path(dir,
GenericTestUtils.getMethodName());
assertTrue(dfs.mkdirs(testDir));
@ -864,9 +862,7 @@ public class TestQuotaByStorageType {
*/
@Test(timeout = 30000)
public void testStorageSpaceQuotaWithRepFactor() throws IOException {
final Path testDir = new Path(
PathUtils.getTestPath(getClass()),
final Path testDir = new Path(dir,
GenericTestUtils.getMethodName());
assertTrue(dfs.mkdirs(testDir));
@ -911,8 +907,7 @@ public class TestQuotaByStorageType {
*/
@Test(timeout = 30000)
public void testStorageSpaceQuotaPerQuotaClear() throws IOException {
final Path testDir = new Path(
PathUtils.getTestPath(getClass()),
final Path testDir = new Path(dir,
GenericTestUtils.getMethodName());
assertTrue(dfs.mkdirs(testDir));