Repository: hadoop
Updated Branches:
  refs/heads/branch-2.7 577466c1f -> 5a3fed060


HDFS-9905. WebHdfsFileSystem#runWithRetry should display original stack trace 
on error. (Wei-Chiu Chuang via iwasakims)

    cherry-picked from 6fcde2e38da04cae3aad6b13cf442af211f71506


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

Branch: refs/heads/branch-2.7
Commit: 5a3fed060264596ecdce294b33770faa4d4b51b0
Parents: 577466c
Author: Masatake Iwasaki <iwasak...@apache.org>
Authored: Sat Apr 23 23:37:56 2016 +0900
Committer: Eric Payne <epa...@apache.org>
Committed: Thu Jun 9 20:48:58 2016 +0000

----------------------------------------------------------------------
 .../hadoop/hdfs/web/WebHdfsFileSystem.java      |  6 +++--
 .../hadoop/hdfs/web/TestWebHdfsTimeouts.java    | 25 +++++++++++++-------
 2 files changed, 20 insertions(+), 11 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hadoop/blob/5a3fed06/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/web/WebHdfsFileSystem.java
----------------------------------------------------------------------
diff --git 
a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/web/WebHdfsFileSystem.java
 
b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/web/WebHdfsFileSystem.java
index a72fa27..ccfed0b 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/web/WebHdfsFileSystem.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/web/WebHdfsFileSystem.java
@@ -641,8 +641,10 @@ public class WebHdfsFileSystem extends FileSystem
             node = url.getAuthority();
           }
           try {
-              ioe = ioe.getClass().getConstructor(String.class)
-                    .newInstance(node + ": " + ioe.getMessage());
+            IOException newIoe = ioe.getClass().getConstructor(String.class)
+                .newInstance(node + ": " + ioe.getMessage());
+            newIoe.setStackTrace(ioe.getStackTrace());
+            ioe = newIoe;
           } catch (NoSuchMethodException | SecurityException 
                    | InstantiationException | IllegalAccessException
                    | IllegalArgumentException | InvocationTargetException e) {

http://git-wip-us.apache.org/repos/asf/hadoop/blob/5a3fed06/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/web/TestWebHdfsTimeouts.java
----------------------------------------------------------------------
diff --git 
a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/web/TestWebHdfsTimeouts.java
 
b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/web/TestWebHdfsTimeouts.java
index 5419093..ee97d73 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/web/TestWebHdfsTimeouts.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/web/TestWebHdfsTimeouts.java
@@ -18,7 +18,6 @@
 
 package org.apache.hadoop.hdfs.web;
 
-import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.fail;
 
 import java.io.BufferedReader;
@@ -43,6 +42,7 @@ import org.apache.hadoop.hdfs.DFSConfigKeys;
 import org.apache.hadoop.io.IOUtils;
 import org.apache.hadoop.net.NetUtils;
 import org.apache.hadoop.security.authentication.client.ConnectionConfigurator;
+import org.apache.hadoop.test.GenericTestUtils;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
@@ -115,7 +115,8 @@ public class TestWebHdfsTimeouts {
       fs.listFiles(new Path("/"), false);
       fail("expected timeout");
     } catch (SocketTimeoutException e) {
-      assertEquals(fs.getUri().getAuthority() + ": connect timed out", 
e.getMessage());
+      GenericTestUtils.assertExceptionContains(fs.getUri().getAuthority()
+          + ": connect timed out",e);
     }
   }
 
@@ -128,7 +129,8 @@ public class TestWebHdfsTimeouts {
       fs.listFiles(new Path("/"), false);
       fail("expected timeout");
     } catch (SocketTimeoutException e) {
-      assertEquals(fs.getUri().getAuthority() + ": Read timed out", 
e.getMessage());
+      GenericTestUtils.assertExceptionContains(fs.getUri().getAuthority() +
+          ": Read timed out", e);
     }
   }
 
@@ -143,7 +145,8 @@ public class TestWebHdfsTimeouts {
       fs.getDelegationToken("renewer");
       fail("expected timeout");
     } catch (SocketTimeoutException e) {
-      assertEquals(fs.getUri().getAuthority() + ": connect timed out", 
e.getMessage());
+      GenericTestUtils.assertExceptionContains(fs.getUri().getAuthority() +
+          ": connect timed out", e);
     }
   }
 
@@ -157,7 +160,8 @@ public class TestWebHdfsTimeouts {
       fs.getDelegationToken("renewer");
       fail("expected timeout");
     } catch (SocketTimeoutException e) {
-      assertEquals(fs.getUri().getAuthority() + ": Read timed out", 
e.getMessage());
+      GenericTestUtils.assertExceptionContains(
+          fs.getUri().getAuthority() + ": Read timed out", e);
     }
   }
 
@@ -172,7 +176,8 @@ public class TestWebHdfsTimeouts {
       fs.getFileChecksum(new Path("/file"));
       fail("expected timeout");
     } catch (SocketTimeoutException e) {
-      assertEquals(fs.getUri().getAuthority() + ": connect timed out", 
e.getMessage());
+      GenericTestUtils.assertExceptionContains(
+          fs.getUri().getAuthority() + ": connect timed out", e);
     }
   }
 
@@ -187,7 +192,8 @@ public class TestWebHdfsTimeouts {
       fs.getFileChecksum(new Path("/file"));
       fail("expected timeout");
     } catch (SocketTimeoutException e) {
-      assertEquals(fs.getUri().getAuthority() + ": Read timed out", 
e.getMessage());
+      GenericTestUtils.assertExceptionContains(
+          fs.getUri().getAuthority() + ": Read timed out", e);
     }
   }
 
@@ -203,7 +209,8 @@ public class TestWebHdfsTimeouts {
       os = fs.create(new Path("/file"));
       fail("expected timeout");
     } catch (SocketTimeoutException e) {
-      assertEquals(fs.getUri().getAuthority() + ": connect timed out", 
e.getMessage());
+      GenericTestUtils.assertExceptionContains(
+          fs.getUri().getAuthority() + ": connect timed out", e);
     } finally {
       IOUtils.cleanup(LOG, os);
     }
@@ -223,7 +230,7 @@ public class TestWebHdfsTimeouts {
       os = null;
       fail("expected timeout");
     } catch (SocketTimeoutException e) {
-      assertEquals("Read timed out", e.getMessage());
+      GenericTestUtils.assertExceptionContains("Read timed out", e);
     } finally {
       IOUtils.cleanup(LOG, os);
     }


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

Reply via email to