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

Flaky test org.eclipse.jetty.http2.tests.StreamResetTes#testClientResetConsumesQueuedData #10611

Closed
olamy opened this issue Sep 28, 2023 · 1 comment · Fixed by #10655
Closed
Labels
Bug For general bugs on Jetty side flaky-test

Comments

@olamy
Copy link
Member

olamy commented Sep 28, 2023

the test looks to fail often org.eclipse.jetty.http2.tests.StreamResetTest.testClientResetConsumesQueuedData

org.awaitility.core.ConditionTimeoutException: org.eclipse.jetty.http2.tests.StreamResetTest$$Lambda/0x00007f5be4260cc8 expected a value greater than <0> but <0> was equal to <0> within 10 seconds.
@olamy olamy added Bug For general bugs on Jetty side flaky-test labels Sep 28, 2023
sbordet added a commit that referenced this issue Oct 3, 2023
Fixed test case that was racy.
When the DATA frames arrived at the server before the call to consumeAvailable(), they were read and the client flow control window re-opened.
If it happened that the DATA frames arrived at the server after the call to consumeAvailable(), the client flow control window was not re-opened, making the test flaky.

Fixed by avoiding the race in the test.

Also reviewed the places that required re-opening of the flow control window in case the DATA frames are not read.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
@sbordet sbordet moved this to 🏗 In progress in Jetty 12.0.2 FROZEN Oct 3, 2023
sbordet added a commit that referenced this issue Oct 4, 2023
…a() (#10655)

Fixed test case that was racy.
When the DATA frames arrived at the server before the call to consumeAvailable(), they were read and the client flow control window re-opened.
If it happened that the DATA frames arrived at the server after the call to consumeAvailable(), the client flow control window was not re-opened, making the test flaky.
Fixed by avoiding the race in the test.

Added over-release buffer tracking, add leak tracking to H2 tests, fix client leaks in tests.

Also reviewed the places that required re-opening of the flow control window in case the DATA frames are not read.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
Co-authored-by: Ludovic Orban <lorban@bitronix.be>
@sbordet
Copy link
Contributor

sbordet commented Oct 4, 2023

Fixed by #10655.

@sbordet sbordet closed this as completed Oct 4, 2023
@github-project-automation github-project-automation bot moved this from 🏗 In progress to ✅ Done in Jetty 12.0.2 FROZEN Oct 4, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug For general bugs on Jetty side flaky-test
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants