> This test has been observed failing intermittently in the CI, either in JTreg > timeout, where the test passes successfully after the timeout has fired but > while the failure handlers are still executing, or with an > `SSLHandshakeException` caused by `"An established connection was aborted by > the software in your host machine"`. > > This test creates 500 clients and relies on the GC to close them (by design), > because it wants to catch bugs where clients would be GC'ed too early. > However, relying on the GC to close the clients can put pressure on resource > allocation on the machine, which we suspect is the cause for the slow down > and the test failures. @Michael-Mc-Mahon suggested we could try to relieve > the pressure by making explicit calls to `System.gc()`, in the hope to > reclaim the abandonned clients earlier. > > This changes implements the suggestion by making calls to `System.gc()` at > random interval from a separate thread, and converts the test to JUnit, > making it stop at the first failure (which otherwise has a frustrating > tendency to disappear in the JTreg Output Overflow). > > With that change, I have not been able to observe the test failing again.
Daniel Fuchs has updated the pull request incrementally with one additional commit since the last revision: Review feedback ------------- Changes: - all: https://git.openjdk.org/jdk/pull/29366/files - new: https://git.openjdk.org/jdk/pull/29366/files/0f4d4141..9524b9f1 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=29366&range=03 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=29366&range=02-03 Stats: 11 lines in 1 file changed: 9 ins; 0 del; 2 mod Patch: https://git.openjdk.org/jdk/pull/29366.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/29366/head:pull/29366 PR: https://git.openjdk.org/jdk/pull/29366
