https://bz.apache.org/bugzilla/show_bug.cgi?id=61740
Bug ID: 61740 Summary: Intermittent NIO HTTP/2 errors Product: Tomcat 9 Version: 9.0.1 Hardware: PC Status: NEW Severity: normal Priority: P2 Component: Connectors Assignee: dev@tomcat.apache.org Reporter: david.frank...@infinitecampus.com Target Milestone: ----- Created attachment 35509 --> https://bz.apache.org/bugzilla/attachment.cgi?id=35509&action=edit screenshot of bug, code to reproduce (hopefully) I’m trying to troubleshoot an intermittent response error using Tomcat 8.5.23 or 9.0.1 when using HTTP/2. Basically we noticed that when running in HTTP/2 random css, js or html pages would error out causing small bugs that would go away on refresh. We were finally able to isolate it to a test case that "usually" reproduces the error. The test case uses 100 iframes to draw 10 table cells that each get colored green by a seperate css file so in total it makes 1101 requests. If some of those requests don't make it and then it displays red on that cell. (See attached image in the zip of the error in action). I reproduced it using the latest version of Firefox with caching disabled so that it makes every request independently. It is very hard to reproduce in Chrome since it tends to ignore no-caching settings. I've also found it easier to reproduce using a client that has Windows 10 and a powerful computer. A less powerful client running Windows 7 had difficulty reproducing the error but still could after enough tries. So Tomcat running on Windows x64 and fresh download of either 9.0.1 or 8.5.23 with stock configuration I enable HTTP/2 with: <Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol" maxThreads="150" SSLEnabled="true" > <UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol" /> <SSLHostConfig> <Certificate certificateKeystoreFile="xxx.pfx" certificateKeystorePassword="xxx" certificateKeystoreType="PKCS12" type="RSA" /> </SSLHostConfig> </Connector> And put the test files in the ROOT app and then hit https://localhost:8443/newtest.html until the error happens. As you can see in the image, some of the responses have 0 bytes and they will display in red, some of the responses have response bodies but no HTTP status code, some have HTTP 200 but no response body. When there is no http status returned the access log records these as 500 errors. I can't find any meaningful exception with catalina debug logging turned on. -- You are receiving this mail because: You are the assignee for the bug. --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org