Am 17.01.26 um 19:50 schrieb Mark Thomas:
On 17/01/2026 17:18, Rémy Maucherat wrote:
On Sat, Jan 17, 2026 at 2:23 PM Mark Thomas <[email protected]> wrote:

On 17/01/2026 10:16, Mark Thomas wrote:
On 16/01/2026 18:53, Mark Thomas wrote:
On 16/01/2026 16:36, Mark Thomas wrote:
These seem to be resolved now.

Next on my list of things to worry about is test stability. I was
seeing quite a high crash rate yesterday. I need to get back to
investigating that now the other test/CI issues appear to be addressed.

I'm not sure the root cause of this is in Tomcat.

I see the crashes locally on Ubuntu but not on MacOS (with a different
OpenSSL version).

I'm going to keep an eye on this for now. We might need to
(temporarily) disable some tests if it starts to cause issues with CI.

I had an idea overnight.

The failures (somewhere around 1 in 4 runs) occurred with Tomcat Native
1.3.5 built with OpenSSL 3.0.18. I ran the exact same test with 2.0.12
built with OpenSSL 3.5.4 and did not see a single failure in 60 tests runs.

That suggests either a bug in OpenSSL 3.0.18 or (more likely) Tomcat
Native 1.3.5.

I am going to try a test run with Tomcat Native 1.3.5 and OpenSSL 3.5.4.

Scratch that. I'm seeing failures with 2.0.12 and 3.5.4 now. Those 60
runs without fail must have been luck :(

I repeatedly ran the tests (using test.silent makes things faster)
using 9.0 and 1.3.5, so that I can run APR, NIO and NIO2.
I got twice a crash for TestOcspEnabled.NIO2, never NIO (so far) or
APR and I don't see any further info. Then some more NIO2 and APR
tests fail because of the leftover OCSP responder.

I see the same. The original crash has always been in NIO2 for me so far.

If I comment out the clean-up in OpenSSLState it seems to stop the crashes but I need to test more to be sure. And I can't figure out what could be going wrong if that does fix it.

Anything interesting in the native stacks of a core dump from the crash?

The "normal" (non-OCSP-related and long-standing) crashes I occasionally get are always in the APR pool cleanup. I guess if NIO(2) uses tcnative, it also uses its APR pool code. Not APR in the sense of APR connector, but APR as a library used by tcnative.

Best regards,

Rainer


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to