HADOOP-8816. HTTP Error 413 full HEAD if using kerberos authentication. (moritzmoeller via tucu)
git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/branches/branch-2@1433568 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
238a985dd0
commit
2a7658d519
|
@ -236,6 +236,9 @@ Release 2.0.3-alpha - Unreleased
|
||||||
HADOOP-9178. src/main/conf is missing hadoop-policy.xml.
|
HADOOP-9178. src/main/conf is missing hadoop-policy.xml.
|
||||||
(Sandy Ryza via eli)
|
(Sandy Ryza via eli)
|
||||||
|
|
||||||
|
HADOOP-8816. HTTP Error 413 full HEAD if using kerberos authentication.
|
||||||
|
(moritzmoeller via tucu)
|
||||||
|
|
||||||
Release 2.0.2-alpha - 2012-09-07
|
Release 2.0.2-alpha - 2012-09-07
|
||||||
|
|
||||||
INCOMPATIBLE CHANGES
|
INCOMPATIBLE CHANGES
|
||||||
|
|
|
@ -304,6 +304,7 @@ public class HttpServer implements FilterContainer {
|
||||||
ret.setAcceptQueueSize(128);
|
ret.setAcceptQueueSize(128);
|
||||||
ret.setResolveNames(false);
|
ret.setResolveNames(false);
|
||||||
ret.setUseDirectBuffers(false);
|
ret.setUseDirectBuffers(false);
|
||||||
|
ret.setHeaderBufferSize(1024*64);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -119,6 +119,18 @@ public class TestHttpServer extends HttpServerFunctionalTest {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("serial")
|
||||||
|
public static class LongHeaderServlet extends HttpServlet {
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
|
@Override
|
||||||
|
public void doGet(HttpServletRequest request,
|
||||||
|
HttpServletResponse response
|
||||||
|
) throws ServletException, IOException {
|
||||||
|
Assert.assertEquals(63 * 1024, request.getHeader("longheader").length());
|
||||||
|
response.setStatus(HttpServletResponse.SC_OK);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@SuppressWarnings("serial")
|
@SuppressWarnings("serial")
|
||||||
public static class HtmlContentServlet extends HttpServlet {
|
public static class HtmlContentServlet extends HttpServlet {
|
||||||
@Override
|
@Override
|
||||||
|
@ -139,6 +151,7 @@ public class TestHttpServer extends HttpServerFunctionalTest {
|
||||||
server.addServlet("echo", "/echo", EchoServlet.class);
|
server.addServlet("echo", "/echo", EchoServlet.class);
|
||||||
server.addServlet("echomap", "/echomap", EchoMapServlet.class);
|
server.addServlet("echomap", "/echomap", EchoMapServlet.class);
|
||||||
server.addServlet("htmlcontent", "/htmlcontent", HtmlContentServlet.class);
|
server.addServlet("htmlcontent", "/htmlcontent", HtmlContentServlet.class);
|
||||||
|
server.addServlet("longheader", "/longheader", LongHeaderServlet.class);
|
||||||
server.addJerseyResourcePackage(
|
server.addJerseyResourcePackage(
|
||||||
JerseyResource.class.getPackage().getName(), "/jersey/*");
|
JerseyResource.class.getPackage().getName(), "/jersey/*");
|
||||||
server.start();
|
server.start();
|
||||||
|
@ -197,6 +210,22 @@ public class TestHttpServer extends HttpServerFunctionalTest {
|
||||||
readOutput(new URL(baseUrl, "/echomap?a=b&c<=d&a=>")));
|
readOutput(new URL(baseUrl, "/echomap?a=b&c<=d&a=>")));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Test that verifies headers can be up to 64K long.
|
||||||
|
* The test adds a 63K header leaving 1K for other headers.
|
||||||
|
* This is because the header buffer setting is for ALL headers,
|
||||||
|
* names and values included. */
|
||||||
|
@Test public void testLongHeader() throws Exception {
|
||||||
|
URL url = new URL(baseUrl, "/longheader");
|
||||||
|
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
|
||||||
|
StringBuilder sb = new StringBuilder();
|
||||||
|
for (int i = 0 ; i < 63 * 1024; i++) {
|
||||||
|
sb.append("a");
|
||||||
|
}
|
||||||
|
conn.setRequestProperty("longheader", sb.toString());
|
||||||
|
assertEquals(HttpURLConnection.HTTP_OK, conn.getResponseCode());
|
||||||
|
}
|
||||||
|
|
||||||
@Test public void testContentTypes() throws Exception {
|
@Test public void testContentTypes() throws Exception {
|
||||||
// Static CSS files should have text/css
|
// Static CSS files should have text/css
|
||||||
URL cssUrl = new URL(baseUrl, "/static/test.css");
|
URL cssUrl = new URL(baseUrl, "/static/test.css");
|
||||||
|
|
Loading…
Reference in New Issue