Skip to content
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

ThreadStarvation Testing #12214

Closed
gregw opened this issue Aug 30, 2024 · 1 comment · Fixed by #12395
Closed

ThreadStarvation Testing #12214

gregw opened this issue Aug 30, 2024 · 1 comment · Fixed by #12395

Comments

@gregw
Copy link
Contributor

gregw commented Aug 30, 2024

Jetty version(s)
12.0, 12.1

Enhancement Description
The ThreadStarvationTest in core, EE9, EE10 and EE11 is disable, flaky or commented out.
We need a reliable way to test thread starvation.

lorban added a commit that referenced this issue Oct 16, 2024
lorban added a commit that referenced this issue Oct 16, 2024
Signed-off-by: Ludovic Orban <[email protected]>
lorban added a commit that referenced this issue Oct 16, 2024
lorban added a commit that referenced this issue Oct 17, 2024
lorban added a commit that referenced this issue Oct 17, 2024
Signed-off-by: Ludovic Orban <[email protected]>
gregw added a commit that referenced this issue Oct 31, 2024
For #12214 restore ee9 and ee10 thread starvation tests

* Deprecated ContentSourceCompletableFuture and added protection to method to match invocation type
* more demand invocables with invocation type
* Deprecated the CF APIs and replaced with explicit getXxx onXxx methods
* replace FutureCallback and FuturePromise usages with Blocker.* instead
* Converted new API on FormFields to use Promise
* Modified SerializedInvoker to take into account the task InvocationType.
* Added ThreadStarvationTest for all transports, to check that also HTTP/2 and HTTP/3 do not starve in case of non-blocking reads.
* Improved Core ThreadStarvationTest
* Fixed AsyncServletLongPollTest in ee9 and ee10 to match the current behavior in case of close.
* Removed Invocable.InvocableCompletableFuture
* Fixed SerializedInvoker.
* Improved ThreadStarvationTest.
* refined more DemandTask implementations
* Added InvocableType.runWithoutBlocking (name is WIP)
* replace Thread.sleep() with awaitility

---------

Signed-off-by: Ludovic Orban <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
Co-authored-by: gregw <[email protected]>
Co-authored-by: Simone Bordet <[email protected]>
@lorban lorban linked a pull request Nov 4, 2024 that will close this issue
@lorban
Copy link
Contributor

lorban commented Nov 4, 2024

Test was restored, and some underlying issue discovered in the process was fixed.

@lorban lorban closed this as completed Nov 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: ✅ Done
Development

Successfully merging a pull request may close this issue.

2 participants