You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2021/10/13 08:32:19 UTC
[tomcat] branch main updated: Add some debug logging as there are
still some unexplained CI failures
This is an automated email from the ASF dual-hosted git repository.
markt pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tomcat.git
The following commit(s) were added to refs/heads/main by this push:
new afa370c Add some debug logging as there are still some unexplained CI failures
afa370c is described below
commit afa370c47dd0642ea41151e7499e2195fcf111c9
Author: Mark Thomas <ma...@apache.org>
AuthorDate: Wed Oct 13 09:32:04 2021 +0100
Add some debug logging as there are still some unexplained CI failures
---
.../servlet/http/TestHttpServletDoHead.java | 84 ++++++++++++----------
1 file changed, 47 insertions(+), 37 deletions(-)
diff --git a/test/jakarta/servlet/http/TestHttpServletDoHead.java b/test/jakarta/servlet/http/TestHttpServletDoHead.java
index 811ee8e..90fc2cf 100644
--- a/test/jakarta/servlet/http/TestHttpServletDoHead.java
+++ b/test/jakarta/servlet/http/TestHttpServletDoHead.java
@@ -135,50 +135,60 @@ public class TestHttpServletDoHead extends Http2TestBase {
@Test
public void testDoHeadHttp2() throws Exception {
- http2Connect();
+ StringBuilder debug = new StringBuilder();
+ try {
+ http2Connect();
- // Get request
- byte[] frameHeaderGet = new byte[9];
- ByteBuffer headersPayloadGet = ByteBuffer.allocate(128);
- buildGetRequest(frameHeaderGet, headersPayloadGet, null, 3, "/test");
- writeFrame(frameHeaderGet, headersPayloadGet);
+ // Get request
+ byte[] frameHeaderGet = new byte[9];
+ ByteBuffer headersPayloadGet = ByteBuffer.allocate(128);
+ buildGetRequest(frameHeaderGet, headersPayloadGet, null, 3, "/test");
+ writeFrame(frameHeaderGet, headersPayloadGet);
- // Want the headers frame for stream 3
- parser.readFrame(true);
- while (!output.getTrace().startsWith("3-HeadersStart\n")) {
- output.clearTrace();
+ // Want the headers frame for stream 3
parser.readFrame(true);
- }
- String traceGet = output.getTrace();
- output.clearTrace();
-
- // Head request
- byte[] frameHeaderHead = new byte[9];
- ByteBuffer headersPayloadHead = ByteBuffer.allocate(128);
- buildHeadRequest(frameHeaderHead, headersPayloadHead, 5, "/test");
- writeFrame(frameHeaderHead, headersPayloadHead);
-
- // Want the headers frame for stream 5
- parser.readFrame(true);
- while (!output.getTrace().startsWith("5-HeadersStart\n")) {
+ while (!output.getTrace().startsWith("3-HeadersStart\n")) {
+ debug.append(output.getTrace());
+ output.clearTrace();
+ parser.readFrame(true);
+ }
+ String traceGet = output.getTrace();
+ debug.append(output.getTrace());
output.clearTrace();
- parser.readFrame(true);
- }
- String traceHead = output.getTrace();
- String[] getHeaders = traceGet.split("\n");
- String[] headHeaders = traceHead.split("\n");
+ // Head request
+ byte[] frameHeaderHead = new byte[9];
+ ByteBuffer headersPayloadHead = ByteBuffer.allocate(128);
+ buildHeadRequest(frameHeaderHead, headersPayloadHead, 5, "/test");
+ writeFrame(frameHeaderHead, headersPayloadHead);
- int i = 0;
- for (; i < getHeaders.length; i++) {
- // Headers should be the same, ignoring the first character which is the steam ID
- Assert.assertEquals(getHeaders[i] + "\n" + traceGet + traceHead, '3', getHeaders[i].charAt(0));
- Assert.assertEquals(headHeaders[i] + "\n" + traceGet + traceHead, '5', headHeaders[i].charAt(0));
- Assert.assertEquals(traceGet + traceHead, getHeaders[i].substring(1), headHeaders[i].substring(1));
- }
+ // Want the headers frame for stream 5
+ parser.readFrame(true);
+ while (!output.getTrace().startsWith("5-HeadersStart\n")) {
+ debug.append(output.getTrace());
+ output.clearTrace();
+ parser.readFrame(true);
+ }
+ String traceHead = output.getTrace();
+ debug.append(output.getTrace());
+
+ String[] getHeaders = traceGet.split("\n");
+ String[] headHeaders = traceHead.split("\n");
+
+ int i = 0;
+ for (; i < getHeaders.length; i++) {
+ // Headers should be the same, ignoring the first character which is the steam ID
+ Assert.assertEquals(getHeaders[i] + "\n" + traceGet + traceHead, '3', getHeaders[i].charAt(0));
+ Assert.assertEquals(headHeaders[i] + "\n" + traceGet + traceHead, '5', headHeaders[i].charAt(0));
+ Assert.assertEquals(traceGet + traceHead, getHeaders[i].substring(1), headHeaders[i].substring(1));
+ }
- // Stream 5 should have one more trace entry
- Assert.assertEquals("5-EndOfStream", headHeaders[i]);
+ // Stream 5 should have one more trace entry
+ Assert.assertEquals("5-EndOfStream", headHeaders[i]);
+ } catch (Exception t) {
+ System.out.println(debug.toString());
+ throw t;
+ }
}
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org