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 ji...@apache.org on 2013/12/23 19:23:43 UTC
svn commit: r1553167 - in
/hadoop/common/trunk/hadoop-common-project/hadoop-common/src:
main/java/org/apache/hadoop/http/HttpServer.java
test/java/org/apache/hadoop/http/TestHttpServer.java
Author: jing9
Date: Mon Dec 23 18:23:43 2013
New Revision: 1553167
URL: http://svn.apache.org/r1553167
Log:
HDFS-5690. DataNode fails to start in secure mode when dfs.http.policy equals to HTTP_ONLY. Contributed by Haohui Mai.
Modified:
hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/http/HttpServer.java
hadoop/common/trunk/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/http/TestHttpServer.java
Modified: hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/http/HttpServer.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/http/HttpServer.java?rev=1553167&r1=1553166&r2=1553167&view=diff
==============================================================================
--- hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/http/HttpServer.java (original)
+++ hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/http/HttpServer.java Mon Dec 23 18:23:43 2013
@@ -305,12 +305,13 @@ public class HttpServer implements Filte
}
}
- if (endpoints.size() == 0) {
+ if (endpoints.size() == 0 && connector == null) {
throw new HadoopIllegalArgumentException("No endpoints specified");
}
if (hostName == null) {
- hostName = endpoints.get(0).getHost();
+ hostName = endpoints.size() == 0 ? connector.getHost() : endpoints.get(
+ 0).getHost();
}
if (this.conf == null) {
Modified: hadoop/common/trunk/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/http/TestHttpServer.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/http/TestHttpServer.java?rev=1553167&r1=1553166&r2=1553167&view=diff
==============================================================================
--- hadoop/common/trunk/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/http/TestHttpServer.java (original)
+++ hadoop/common/trunk/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/http/TestHttpServer.java Mon Dec 23 18:23:43 2013
@@ -66,6 +66,8 @@ import org.mockito.internal.util.reflect
import org.mortbay.jetty.Connector;
import org.mortbay.util.ajax.JSON;
+import static org.mockito.Mockito.*;
+
public class TestHttpServer extends HttpServerFunctionalTest {
static final Log LOG = LogFactory.getLog(TestHttpServer.class);
private static HttpServer server;
@@ -588,4 +590,15 @@ public class TestHttpServer extends Http
assertEquals(conn.getHeaderField("Expires"), conn.getHeaderField("Date"));
}
+ /**
+ * HTTPServer.Builder should proceed if a external connector is available.
+ */
+ @Test
+ public void testHttpServerBuilderWithExternalConnector() throws Exception {
+ Connector c = mock(Connector.class);
+ doReturn("localhost").when(c).getHost();
+ HttpServer s = new HttpServer.Builder().setName("test").setConnector(c)
+ .build();
+ s.stop();
+ }
}