Am 18.06.26 um 01:44 schrieb Christopher Schultz:
The proposed Apache Tomcat 10.1.56 release is now available for
voting.

All committers and PMC members are kindly requested to provide a vote if possible. ANY TOMCAT USER MAY VOTE, though only PMC members votes are binding. We welcome non-committer votes or comments on release builds.

The notable changes compared to 10.1.55 are:

- Align the rewrite conditions ornext flag processing with
   mod_rewrite, which follows a purely sequential evaluation
   strategy.

- Ensure that malformed HTTP/2 messages that should trigger a
   stream reset do so, rather than triggered a connection close.

- Add replay protection to the EncryptInterceptor. This is a
   **breaking change** for the EncryptInterceptor. Please see the
   migration document for more information.

For full details, see the change log:
https://nightlies.apache.org/tomcat/tomcat-10.1.x/docs/changelog.html

Applications that run on Tomcat 9 and earlier will not run on Tomcat 10 without changes. Java EE applications designed for Tomcat 9 and earlier may be placed in the $CATALINA_BASE/webapps-javaee directory and Tomcat will automatically convert them to Jakarta EE and copy them to the webapps directory.

It can be obtained from:
https://dist.apache.org/repos/dist/dev/tomcat/tomcat-10/v10.1.56/

The Maven staging repo is:
https://repository.apache.org/content/repositories/orgapachetomcat-1595

The tag is:
https://github.com/apache/tomcat/tree/10.1.56
https://github.com/apache/tomcat/ commit/59f3f1ab4f905f94c9c99cad579d6afb3a935b66

Please reply with a +1 for release or +0/-0/-1 with an explanation.

+1 to release.

Reproducibility of the build checked (including the Windows installer) using "ant verify-release" on Linux Mint 22.3. OK after setting LANG.

Original Windows installer signature verified with osslsigncode 2.10.

Unit tests ran on platforms

- RHEL 7, 8, 9 and 10 and SLES 12 and 15

using

- recent patch versions of JDK 17, 21, 25, 26 and 27+28 (EA)
  - first time also tested with JDK 28 EA

from

- Eclipse Adoptium, Azul Zulu, Amazon Coretto, Oracle, RedHat and from OpenJDK for 27

where available.

Also tested with

- tcnative 1.3.8, 2.0.15 and panama

based on

- OpenSSL 3.0.21, 3.5.7, 3.6.3 and 4.0.1 (4.x only for tcnative 2 and panama)

Test observations:

- not all test runs are done yet, but by far most of them. Only JDK27+28 and some JDK26 combinations still need to run on RHEL.

  - IMHO nothing critical

  - one hanging test for JDK 21 in RHEL 7
    Two JUnit child processes. I do have thread dumps,
    for the stack of the main thread see below

- 15 times SocketException in org.apache.tomcat.util.net.TestSslHandshakeFailure
    always with tcnative, reason SocketException.
    Should already be fixed.

  - TestOcspSoftFailTryLater 6 failures with JDK 17+ and jsse

  - in addition
    - a few crashes with tcnative (11 in 856 runs)
    - one crash with jsse (123 runs)
    - very few failures with jsse (4 in 123 runs)
    - very few non-crash-failures with tcnative (2 in 856 runs)

Thanks for RM!

Best regards,

Rainer

Hanging Test
::::::::::::

It hang only once, not reproducible.

"main" #1 [2542] prio=5 os_prio=0 cpu=694.46ms elapsed=104352.86s tid=0x00007f5ec402d490 nid=2542 runnable [0x00007f5ecbe96000]
   java.lang.Thread.State: RUNNABLE
at sun.nio.ch.UnixFileDispatcherImpl.lock0([email protected]/Native Method) at sun.nio.ch.UnixFileDispatcherImpl.lock([email protected]/UnixFileDispatcherImpl.java:99) at sun.nio.ch.FileChannelImpl.lock([email protected]/FileChannelImpl.java:1482) at java.nio.channels.FileChannel.lock([email protected]/FileChannel.java:1240) at org.apache.tomcat.util.net.ocsp.OcspBaseTest.obtainOcspResponderLock(OcspBaseTest.java:54) at java.lang.invoke.DirectMethodHandle$Holder.invokeStatic([email protected]/DirectMethodHandle$Holder) at java.lang.invoke.LambdaForm$MH/0x00007f5e50024800.invoke([email protected]/LambdaForm$MH) at java.lang.invoke.Invokers$Holder.invokeExact_MT([email protected]/Invokers$Holder) at jdk.internal.reflect.DirectMethodHandleAccessor.invokeImpl([email protected]/DirectMethodHandleAccessor.java:153) at jdk.internal.reflect.DirectMethodHandleAccessor.invoke([email protected]/DirectMethodHandleAccessor.java:103) at java.lang.reflect.Method.invoke([email protected]/Method.java:580) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56) at org.junit.internal.runners.statements.RunBefores.invokeMethod(RunBefores.java:33) at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24) at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
        at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
        at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
        at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:50)
at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:535) at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:1197) at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:1042)


and another process

"main" #1 [2473] prio=5 os_prio=0 cpu=9739.02ms elapsed=104354.63s tid=0x00007fdbc002d490 nid=2473 runnable [0x00007fdbc95c3000]
   java.lang.Thread.State: RUNNABLE
        at org.apache.tomcat.jni.Library.terminate(Native Method)
at org.apache.catalina.core.AprLifecycleListener.terminateAPR(AprLifecycleListener.java:318) at org.apache.catalina.core.AprLifecycleListener.lifecycleEvent(AprLifecycleListener.java:298) at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:115) at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:395) - locked <0x00000000c5d742e8> (a org.apache.catalina.core.StandardServer) at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:305) - locked <0x00000000c5d742e8> (a org.apache.catalina.core.StandardServer)
        at org.apache.catalina.startup.Tomcat.destroy(Tomcat.java:474)
at org.apache.catalina.startup.TomcatBaseTest.tearDown(TomcatBaseTest.java:253) at java.lang.invoke.LambdaForm$DMH/0x00007fdb4c094400.invokeVirtual([email protected]/LambdaForm$DMH) at java.lang.invoke.LambdaForm$MH/0x00007fdb4c13dc00.invoke([email protected]/LambdaForm$MH) at java.lang.invoke.Invokers$Holder.invokeExact_MT([email protected]/Invokers$Holder) at jdk.internal.reflect.DirectMethodHandleAccessor.invokeImpl([email protected]/DirectMethodHandleAccessor.java:153) at jdk.internal.reflect.DirectMethodHandleAccessor.invoke([email protected]/DirectMethodHandleAccessor.java:103) at java.lang.reflect.Method.invoke([email protected]/Method.java:580) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56) at org.junit.internal.runners.statements.RunAfters.invokeMethod(RunAfters.java:46) at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:33)
        at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:61)
        at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
at org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
        at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
        at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
        at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
        at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
        at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
        at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
        at org.junit.runners.Suite.runChild(Suite.java:128)
        at org.junit.runners.Suite.runChild(Suite.java:27)
        at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
        at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
        at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
        at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26) at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
        at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
        at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
        at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:50)
at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:535) at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:1197) at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:1042)


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

Reply via email to