You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by xk...@apache.org on 2018/09/24 18:45:56 UTC

[32/50] [abbrv] hadoop git commit: HADOOP-15744. AbstractContractAppendTest fails against HDFS on HADOOP-15407 branch. Contributed by Steve Loughran.

HADOOP-15744. AbstractContractAppendTest fails against HDFS on HADOOP-15407 branch.
Contributed by Steve Loughran.


Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/1cf38a38
Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/1cf38a38
Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/1cf38a38

Branch: refs/heads/HDFS-12943
Commit: 1cf38a38da060ed06377099057a31f17d570c3c1
Parents: b4c2304
Author: Steve Loughran <st...@apache.org>
Authored: Tue Sep 18 10:56:56 2018 +0100
Committer: Steve Loughran <st...@apache.org>
Committed: Tue Sep 18 10:56:56 2018 +0100

----------------------------------------------------------------------
 .../apache/hadoop/fs/RawLocalFileSystem.java    |  2 +-
 .../fs/contract/AbstractContractAppendTest.java | 57 +++++++-------------
 .../ITestAzureNativeContractAppend.java         | 23 --------
 3 files changed, 19 insertions(+), 63 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hadoop/blob/1cf38a38/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/RawLocalFileSystem.java
----------------------------------------------------------------------
diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/RawLocalFileSystem.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/RawLocalFileSystem.java
index 6e9d433..bd003ae 100644
--- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/RawLocalFileSystem.java
+++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/RawLocalFileSystem.java
@@ -291,7 +291,7 @@ public class RawLocalFileSystem extends FileSystem {
       Progressable progress) throws IOException {
     FileStatus status = getFileStatus(f);
     if (status.isDirectory()) {
-      throw new FileAlreadyExistsException("Cannot append to a directory: " + f);
+      throw new IOException("Cannot append to a diretory (=" + f + " )");
     }
     return new FSDataOutputStream(new BufferedOutputStream(
         createOutputStreamWithMode(f, true, null), bufferSize), statistics,

http://git-wip-us.apache.org/repos/asf/hadoop/blob/1cf38a38/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/fs/contract/AbstractContractAppendTest.java
----------------------------------------------------------------------
diff --git a/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/fs/contract/AbstractContractAppendTest.java b/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/fs/contract/AbstractContractAppendTest.java
index 0be220e..d61b635 100644
--- a/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/fs/contract/AbstractContractAppendTest.java
+++ b/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/fs/contract/AbstractContractAppendTest.java
@@ -18,12 +18,7 @@
 
 package org.apache.hadoop.fs.contract;
 
-import java.io.FileNotFoundException;
-import java.io.IOException;
-
 import org.apache.hadoop.fs.FSDataOutputStream;
-import org.apache.hadoop.fs.FileAlreadyExistsException;
-import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
 import org.junit.Test;
 import org.slf4j.Logger;
@@ -32,7 +27,6 @@ import org.slf4j.LoggerFactory;
 import static org.apache.hadoop.fs.contract.ContractTestUtils.createFile;
 import static org.apache.hadoop.fs.contract.ContractTestUtils.dataset;
 import static org.apache.hadoop.fs.contract.ContractTestUtils.touch;
-import static org.apache.hadoop.test.LambdaTestUtils.intercept;
 
 /**
  * Test append -if supported
@@ -81,10 +75,15 @@ public abstract class AbstractContractAppendTest extends AbstractFSContractTestB
 
   @Test
   public void testAppendNonexistentFile() throws Throwable {
-    //expected
-    handleExpectedException(
-        intercept(Exception.class,
-            () -> getFileSystem().append(target).close()));
+    try {
+      FSDataOutputStream out = getFileSystem().append(target);
+      //got here: trouble
+      out.close();
+      fail("expected a failure");
+    } catch (Exception e) {
+      //expected
+      handleExpectedException(e);
+    }
   }
 
   @Test
@@ -117,9 +116,15 @@ public abstract class AbstractContractAppendTest extends AbstractFSContractTestB
 
   @Test
   public void testAppendMissingTarget() throws Throwable {
-    handleExpectedException(
-        intercept(Exception.class,
-            () -> getFileSystem().append(target).close()));
+    try {
+      FSDataOutputStream out = getFileSystem().append(target);
+      //got here: trouble
+      out.close();
+      fail("expected a failure");
+    } catch (Exception e) {
+      //expected
+      handleExpectedException(e);
+    }
   }
 
   @Test
@@ -144,30 +149,4 @@ public abstract class AbstractContractAppendTest extends AbstractFSContractTestB
                                                  dataset.length);
     ContractTestUtils.compareByteArrays(dataset, bytes, dataset.length);
   }
-
-  @Test
-  public void testAppendFileAfterDelete() throws Exception {
-    final FileSystem fs = getFileSystem();
-    final Path filePath = target;
-    fs.create(filePath);
-    fs.delete(filePath, false);
-    intercept(FileNotFoundException.class,
-        () -> fs.append(filePath));
-  }
-
-  @Test
-  public void testAppendDirectory() throws Exception {
-    final FileSystem fs = getFileSystem();
-
-    final Path folderPath = target;
-    fs.mkdirs(folderPath);
-    IOException ex = intercept(IOException.class,
-        () -> fs.append(folderPath));
-    if (ex instanceof FileAlreadyExistsException) {
-      handleExpectedException(ex);
-    } else {
-      handleRelaxedException("Append to a directory",
-          "FileAlreadyExistsException", ex);
-    }
-  }
 }

http://git-wip-us.apache.org/repos/asf/hadoop/blob/1cf38a38/hadoop-tools/hadoop-azure/src/test/java/org/apache/hadoop/fs/azure/contract/ITestAzureNativeContractAppend.java
----------------------------------------------------------------------
diff --git a/hadoop-tools/hadoop-azure/src/test/java/org/apache/hadoop/fs/azure/contract/ITestAzureNativeContractAppend.java b/hadoop-tools/hadoop-azure/src/test/java/org/apache/hadoop/fs/azure/contract/ITestAzureNativeContractAppend.java
index db4a843..fd21bd2 100644
--- a/hadoop-tools/hadoop-azure/src/test/java/org/apache/hadoop/fs/azure/contract/ITestAzureNativeContractAppend.java
+++ b/hadoop-tools/hadoop-azure/src/test/java/org/apache/hadoop/fs/azure/contract/ITestAzureNativeContractAppend.java
@@ -18,19 +18,10 @@
 
 package org.apache.hadoop.fs.azure.contract;
 
-import java.io.FileNotFoundException;
-import java.io.IOException;
-
-import org.junit.Test;
-
 import org.apache.hadoop.conf.Configuration;
-import org.apache.hadoop.fs.FileAlreadyExistsException;
-import org.apache.hadoop.fs.FileSystem;
-import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.fs.contract.AbstractContractAppendTest;
 import org.apache.hadoop.fs.contract.AbstractFSContract;
 import static org.apache.hadoop.fs.contract.ContractTestUtils.skip;
-import static org.apache.hadoop.test.LambdaTestUtils.intercept;
 
 /**
  * Append test, skipping one of them.
@@ -47,18 +38,4 @@ public class ITestAzureNativeContractAppend extends AbstractContractAppendTest {
   public void testRenameFileBeingAppended() throws Throwable {
     skip("Skipping as renaming an opened file is not supported");
   }
-
-  /**
-   * Wasb returns a different exception, so change the intercept logic here.
-   */
-  @Override
-  @Test
-  public void testAppendDirectory() throws Exception {
-    final FileSystem fs = getFileSystem();
-
-    final Path folderPath = path("testAppendDirectory");
-    fs.mkdirs(folderPath);
-    intercept(FileNotFoundException.class,
-        () -> fs.append(folderPath));
-  }
 }


---------------------------------------------------------------------
To unsubscribe, e-mail: common-commits-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-commits-help@hadoop.apache.org