-
Notifications
You must be signed in to change notification settings - Fork 304
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bug Report: HTTP2 Protocol Errors when loading many static files #7203
Comments
Just a hunch, but since HTTP2 requests tend to come in for multiple files at the "exact" same time due to the multiplexing design, it may just be exposing some kind of thread safety issue in the file caching. I don't see many concurrent classes in that code nor any locks or synchronization. Happy to test more. |
Additional log content I missed the first time:
|
Here are a few more details:
It's possible that whether the issue is a caching thread safety bug (and possibly an enabled-state bug?) or something is overloaded connection-wise (I've tested this on different OSes so it's possible that some network stacks behave differently), when the connection unexpectedly drops in Glassfish, the browser shows it as this error? Unfortunately it happens organically just due to normal static content loads on a web app (js files, css files, etc.) so even though the extreme case makes it happen MORESO, it still happens enough that I cannot use HTTP2 in normal operation with default settings. Is anyone able to look at this? |
Brief Summary
When updating to recent versions of Payara 6.x and attempting HTTP2, I've observed HTTP2 protocol errors in one of our main applications, which uses HTML, static JS files, and plenty of XHR. I've seen existing tickets (#2625, #5268) deal with similar topics but not this one. It took me a while to get time to make a reproducer but I have made one now.
I believe this is tied to the file cache being turned on, from the trace, which is new to me to see, maybe in the micro environment it logs differently than in the full environment.
Expected Outcome
Page reloads without any issues loading static content when HTTP2 is enabled
Current Outcome
Periodic HTTP2 Protocol Errors, like in this screenshot:
I don't know the exact moment this stack trace came in but it's likely relevant:
Reproducer
You can reproduce this by building the war in this repo and deploying with the preboot file and commandline provided.
https://github.com/marcreichman-pfi/payara-http2-connection-trouble-repro
Instructions will also show up when you load the URL with the index.html
Operating System
Windows 10 Pro / WSL2 / Linux Docker / Windows Server 2022 (seen in several places over the years)
JDK Version
Oracle JDK 21.0.5
Payara Distribution
Payara Micro
The text was updated successfully, but these errors were encountered: