Re: [VOTE] Release Apache Tomcat 10.1.27

2024-08-01 Thread Rémy Maucherat
On Tue, Jul 30, 2024 at 5:57 PM Christopher Schultz
 wrote:
>
> The proposed Apache Tomcat 10.1.27 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.26 are:
>
> - Add support for RFC 8297 (Early Hints). Applications can use this
>feature by casting the HttpServletResponse to
>org.apache.catalina.connector.Reponse and then calling the method
>void sendEarlyHints()
>
> - Align HTTP/2 with HTTP/1.1 and recycle the container internal request
>and response processing objects by default. This behaviour can be
>controlled via the new discardRequestsAndResponses attribute on the
>HTTP/2 upgrade protocol.
>
> - Ensure statements returned from Statement methods executeQuery(),
>getResultSet() and getGeneratedKeys() are correctly wrapped before
>being returned to the caller.
>
> 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.27/
>
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1506
>
> The tag is:
> https://github.com/apache/tomcat/tree/10.1.27
> https://github.com/apache/tomcat/commit/50d264f3bc6c8595a1e611940668fb46d076e0ba
>
> Please reply with a +1 for release or +0/-0/-1 with an explanation.

+1, no issue with this round of releases.

Rémy

> -
> To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: dev-h...@tomcat.apache.org
>

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[Bug 69236] New: JDBC interceptor reset method oerdering

2024-08-01 Thread bugzilla
https://bz.apache.org/bugzilla/show_bug.cgi?id=69236

Bug ID: 69236
   Summary: JDBC interceptor reset method oerdering
   Product: Tomcat Modules
   Version: unspecified
  Hardware: PC
OS: Linux
Status: NEW
  Severity: normal
  Priority: P2
 Component: jdbc-pool
  Assignee: dev@tomcat.apache.org
  Reporter: apache.absently...@simplelogin.com
  Target Milestone: ---

Hi,

While using multiple jdbc interceptors, we came across the following
behaviour/bug: 

the property jdbcInterceptors contains a list of semicolon separated class
names, and the reset method of those interceptors is initially called in
reverse order, then called in the order they are listed in the property. 

That caused a bug on our end, because the first interceptor was resetting the
thing that the second one did.

While the doc doesn't say anything about order, it would make a lot of sense to
have that order respected all the time, especially since it would be a small
change.

It's all in org.apache.tomcat.jdbc.pool.ConnectionPool.setupConnection: when a
connection is first borrowed, while the chain of interceptors is built, the
reset() method is called, but in reverse order. The following calls to borrow a
connection will use the previously built handler chain which follows the order
defined in the property.

I'd be happy to put in a PR, provided you agree to the change.

Cheers,
François

-- 
You are receiving this mail because:
You are the assignee for the bug.
-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[Bug 69236] JDBC interceptor reset method call ordering

2024-08-01 Thread bugzilla
https://bz.apache.org/bugzilla/show_bug.cgi?id=69236

François Prunier  changed:

   What|Removed |Added

Summary|JDBC interceptor reset  |JDBC interceptor reset
   |method oerdering|method call ordering

-- 
You are receiving this mail because:
You are the assignee for the bug.
-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: [VOTE] Release Apache Tomcat 11.0.0-M23

2024-08-01 Thread Dimitris Soumis
+1
Build is reproducible and all tests pass on Fedora 40 with Java 22,
tcnative-2.0.8, apr-1.7.4, openssl-3.0.14.

On Mon, Jul 29, 2024 at 9:37 PM Mark Thomas  wrote:

> The proposed Apache Tomcat 11.0.0-M23 release is now available for
> voting.
>
> Apache Tomcat 11.0.0-M23 is a milestone release of the 11.0.x branch and
> has been made to provide users with early access to the new features in
> Apache Tomcat 11.0.x so that they may provide feedback. The notable
> changes compared to the previous milestone include:
>
> - Align HTTP/2 with HTTP/1.1 and recycle the container internal request
>and response processing objects by default. This behaviour can be
>controlled via the new discardRequestsAndResponses attribute on the
>HTTP/2 upgrade protocol.
>
> - Add FFM compatibility methods for LibreSSL and BoringSSL support.
>
> - Add support for RFC 8297 (Early Hints). Applications can use this
>feature by casting the HttpServletResponse to
>org.apache.catalina.connector.Reponse and then calling the method
>void sendEarlyHints()
>
> For full details, see the change log:
> https://nightlies.apache.org/tomcat/tomcat-11.0.x/docs/changelog.html
>
> Applications that run on Tomcat 9 and earlier will not run on Tomcat 11
> 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. Applications using deprecated APIs may require
> further changes.
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-11/v11.0.0-M23/
>
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1504
>
> The tag is:
> https://github.com/apache/tomcat/tree/11.0.0-M23
> 2bf2c6a691ad9f2cf68363123419909cebbb308a
>
> The proposed 11.0.0-M23 release is:
> [ ] -1 Broken - do not release
> [X] +1 Beta   - go ahead and release as 11.0.0-M23
>
> -
> To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: dev-h...@tomcat.apache.org
>
>


Re: [VOTE] Release Apache Tomcat 10.1.27

2024-08-01 Thread Dimitris Soumis
+1
Build is reproducible and all tests pass on Fedora 40 with Java 22,
tcnative-2.0.8, apr-1.7.4, openssl-3.0.14.

On Tue, Jul 30, 2024 at 7:06 PM Christopher Schultz <
ch...@christopherschultz.net> wrote:

> The proposed Apache Tomcat 10.1.27 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.26 are:
>
> - Add support for RFC 8297 (Early Hints). Applications can use this
>feature by casting the HttpServletResponse to
>org.apache.catalina.connector.Reponse and then calling the method
>void sendEarlyHints()
>
> - Align HTTP/2 with HTTP/1.1 and recycle the container internal request
>and response processing objects by default. This behaviour can be
>controlled via the new discardRequestsAndResponses attribute on the
>HTTP/2 upgrade protocol.
>
> - Ensure statements returned from Statement methods executeQuery(),
>getResultSet() and getGeneratedKeys() are correctly wrapped before
>being returned to the caller.
>
> 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.27/
>
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1506
>
> The tag is:
> https://github.com/apache/tomcat/tree/10.1.27
>
> https://github.com/apache/tomcat/commit/50d264f3bc6c8595a1e611940668fb46d076e0ba
>
> Please reply with a +1 for release or +0/-0/-1 with an explanation.
>
> -
> To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: dev-h...@tomcat.apache.org
>
>


Re: [VOTE] Release Apache Tomcat 10.1.27

2024-08-01 Thread Coty Sutherland
On Tue, Jul 30, 2024 at 11:57 AM Christopher Schultz <
ch...@christopherschultz.net> wrote:

> The proposed Apache Tomcat 10.1.27 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.26 are:
>
> - Add support for RFC 8297 (Early Hints). Applications can use this
>feature by casting the HttpServletResponse to
>org.apache.catalina.connector.Reponse and then calling the method
>void sendEarlyHints()
>
> - Align HTTP/2 with HTTP/1.1 and recycle the container internal request
>and response processing objects by default. This behaviour can be
>controlled via the new discardRequestsAndResponses attribute on the
>HTTP/2 upgrade protocol.
>
> - Ensure statements returned from Statement methods executeQuery(),
>getResultSet() and getGeneratedKeys() are correctly wrapped before
>being returned to the caller.
>
> 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.27/
>
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1506
>
> The tag is:
> https://github.com/apache/tomcat/tree/10.1.27
>
> https://github.com/apache/tomcat/commit/50d264f3bc6c8595a1e611940668fb46d076e0ba
>
> Please reply with a +1 for release or +0/-0/-1 with an explanation.
>

+1, LGTM


> -
> To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: dev-h...@tomcat.apache.org
>
>


Re: [VOTE] Release Apache Tomcat 11.0.0-M23

2024-08-01 Thread Coty Sutherland
On Mon, Jul 29, 2024 at 2:27 PM Mark Thomas  wrote:

> The proposed Apache Tomcat 11.0.0-M23 release is now available for
> voting.
>
> Apache Tomcat 11.0.0-M23 is a milestone release of the 11.0.x branch and
> has been made to provide users with early access to the new features in
> Apache Tomcat 11.0.x so that they may provide feedback. The notable
> changes compared to the previous milestone include:
>
> - Align HTTP/2 with HTTP/1.1 and recycle the container internal request
>and response processing objects by default. This behaviour can be
>controlled via the new discardRequestsAndResponses attribute on the
>HTTP/2 upgrade protocol.
>
> - Add FFM compatibility methods for LibreSSL and BoringSSL support.
>
> - Add support for RFC 8297 (Early Hints). Applications can use this
>feature by casting the HttpServletResponse to
>org.apache.catalina.connector.Reponse and then calling the method
>void sendEarlyHints()
>
> For full details, see the change log:
> https://nightlies.apache.org/tomcat/tomcat-11.0.x/docs/changelog.html
>
> Applications that run on Tomcat 9 and earlier will not run on Tomcat 11
> 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. Applications using deprecated APIs may require
> further changes.
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-11/v11.0.0-M23/
>
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1504
>
> The tag is:
> https://github.com/apache/tomcat/tree/11.0.0-M23
> 2bf2c6a691ad9f2cf68363123419909cebbb308a
>
> The proposed 11.0.0-M23 release is:
> [ ] -1 Broken - do not release
> [x] +1 Beta   - go ahead and release as 11.0.0-M23
>

+1


> -
> To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: dev-h...@tomcat.apache.org
>
>


Re: [VOTE] Release Apache Tomcat 10.1.27

2024-08-01 Thread Mark Thomas

On 30/07/2024 16:56, Christopher Schultz wrote:

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


+1

Tests pass on Linux with Java 22, Tomcat Native 2.0.8 and current 
OpenSSL from Ubuntu.


Tests pass on Windows with Java 22, Tomcat Native 2.0.8 and OpenSSL 
3.0.14. FFM tests were skipped.


Tests pass on MacOS (M1) with Java 22, Tomcat Native 2.0.8, OpenSSL 
3.3.1 from homebrew and a small modification to build.xml from trunk to 
enable the FFM tests.


Tests pass on MacOS (Inet) with Java 22, Tomcat Native 2.0.8, OpenSSL 
3.3.1 from homebrew and a small modification to build.xml from trunk to 
enable the FFM tests. I did see issues with the tests that use rely on 
multicast but that appears to be an environmental issue after the latest 
OS update. I'm still investigating that.


Mark

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: [VOTE] Release Apache Tomcat 10.1.27

2024-08-01 Thread Mark Thomas

On 01/08/2024 16:02, Mark Thomas wrote:

On 30/07/2024 16:56, Christopher Schultz wrote:

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


+1

Tests pass on Linux with Java 22, Tomcat Native 2.0.8 and current 
OpenSSL from Ubuntu.


Tests pass on Windows with Java 22, Tomcat Native 2.0.8 and OpenSSL 
3.0.14. FFM tests were skipped.


Tests pass on MacOS (M1) with Java 22, Tomcat Native 2.0.8, OpenSSL 
3.3.1 from homebrew and a small modification to build.xml from trunk to 
enable the FFM tests.


Tests pass on MacOS (Inet) with Java 22, Tomcat Native 2.0.8, OpenSSL 
3.3.1 from homebrew and a small modification to build.xml from trunk to 
enable the FFM tests. I did see issues with the tests that use rely on 
multicast but that appears to be an environmental issue after the latest 
OS update. I'm still investigating that.


Solved. Not a Tomcat issue.

One of the security products $dayjob installed on the Mac was getting in 
the way. Once I (re-)disabled (it has a habit of starting up again 
without warning after being disabled) all was well.


Mark

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: [VOTE] Release Apache Tomcat 9.0.92

2024-08-01 Thread Tim Funk
+1 (see below)

On Mon, Jul 29, 2024 at 11:32 PM Rémy Maucherat  wrote:

> The proposed Apache Tomcat 9.0.92 release is now available for voting.
> 
> The proposed 9.0.92 release is:
> [ ] -1, Broken - do not release
> [X] +1, Stable - go ahead and release as 9.0.92
>
>


Sporadic http2 test failures

2024-08-01 Thread Rainer Jung

Hi there,

I get sporadic http2 test failures when running the many 
JVM/connector/platform combinations against the current tags of TC 9.0, 
10.1 and 11.


It happens most frequently for TC 9, but I looks like it also applies to 
TC 10.1 and 11 but much more rarely.


Here's a list of the combinations, where the test run produced an error:

9.0
- org.apache.coyote.http2.TestHttp2Section_8_1 FAILED
  adopt_jdk1.8.0-rhel6.x86_64-jsse
  amazon_jdk1.8.0-rhel7.x86_64-jsse
  oracle_jdk1.8.0-rhel9.x86_64-jsse
  rh_jdk1.8.0-rhel8.x86_64-jsse
  adopt_jdk11-rhel6.x86_64-jsse
  oracle_jdk11-sles15.x86_64-jsse

- org.apache.coyote.http2.TestStreamProcessor FAILED
  adopt_jdk1.8.0-rhel7.x86_64-jsse
  amazon_jdk1.8.0-rhel6.x86_64-jsse
  amazon_jdk1.8.0-sles12.x86_64-jsse
  oracle_jdk1.8.0-rhel6.x86_64-jsse
  zulu_jdk1.8.0-rhel6.x86_64-jsse
  zulu_jdk1.8.0-rhel7.x86_64-jsse
  zulu_jdk1.8.0-sles12.x86_64-jsse
  adopt_jdk11-sles15.x86_64-jsse
  amazon_jdk11-rhel9.x86_64-jsse
  oracle_jdk11-sles12.x86_64-jsse
  rh_jdk11-rhel9.x86_64-jsse
  zulu_jdk11-rhel9.x86_64-jsse
10.1
- org.apache.coyote.http2.TestStreamProcessor FAILED
  zulu_jdk11-sles11.x86_64-jsse
  zulu_jdk11-sles15.x86_64-jsse
  adopt_jdk17-sles11.x86_64-jsse
  oracle_jdk21-rhel6.x86_64-jsse
11.0
- org.apache.coyote.http2.TestHttp2Section_8_1 FAILED
  jdk23-rhel7.x86_64-jsse

So it seems it can happen for each of the platforms and JVM versions.

I did not check each occurrence but here are examples which all also 
have a NullPointer in the access log. I don't know whether that triggers 
the failure or is just another symptom triggered by the same root cause.


A) org.apache.coyote.http2.TestStreamProcessor
==

  - jsse_amazon_jdk1.8.0-sles12.x86_64 NIO2

Testcase: testValidateRequestURI[0: loop [0], useAsyncIO[false]] took 
0.169 sec

FAILED
expected:<...3-Header-[:status]-[[4]00]
3-Header-[date]-...> but was:<...3-Header-[:status]-[[5]00]
3-Header-[date]-...>
junit.framework.AssertionFailedError: 
expected:<...3-Header-[:status]-[[4]00]

3-Header-[date]-...> but was:<...3-Header-[:status]-[[5]00]
3-Header-[date]-...>
at 
org.apache.coyote.http2.TestStreamProcessor.testValidateRequestURI(TestStreamProcessor.java:347)


...

Testcase: testValidateRequestMethod[0: loop [0], useAsyncIO[false]] took 
0.221 sec

FAILED
expected:<...3-Header-[:status]-[[4]00]
3-Header-[date]-...> but was:<...3-Header-[:status]-[[5]00]
3-Header-[date]-...>
junit.framework.AssertionFailedError: 
expected:<...3-Header-[:status]-[[4]00]

3-Header-[date]-...> but was:<...3-Header-[:status]-[[5]00]
3-Header-[date]-...>
at 
org.apache.coyote.http2.TestStreamProcessor.testValidateRequestMethod(TestStreamProcessor.java:258)


and:

30-Jul-2024 19:33:57.149 INFO [main] 
org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler 
["http-nio2-127.0.0.1-auto-8-37726"]
30-Jul-2024 19:33:57.168 WARNING [http-nio2-127.0.0.1-auto-8-exec-6] 
org.apache.catalina.connector.CoyoteAdapter.log Exception while 
attempting to add an entry to the access log

java.lang.NullPointerException
at 
org.apache.catalina.valves.AbstractAccessLogValve$ByteSentElement.addElement(AbstractAccessLogValve.java:1268)
at 
org.apache.catalina.valves.AbstractAccessLogValve.log(AbstractAccessLogValve.java:686)
at 
org.apache.catalina.core.AccessLogAdapter.log(AccessLogAdapter.java:48)
at 
org.apache.catalina.core.StandardEngine.logAccess(StandardEngine.java:271)
at 
org.apache.catalina.connector.CoyoteAdapter.log(CoyoteAdapter.java:489)
at 
org.apache.coyote.http2.StreamProcessor.service(StreamProcessor.java:443)
at 
org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
at 
org.apache.coyote.http2.StreamProcessor.process(StreamProcessor.java:92)
at 
org.apache.coyote.http2.StreamRunnable.run(StreamRunnable.java:35)
at 
org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190)
at 
org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
at 
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63)

at java.lang.Thread.run(Thread.java:750)
30-Jul-2024 19:33:57.172 INFO [main] 
org.apache.coyote.AbstractProtocol.pause Pausing ProtocolHandler 
["http-nio2-127.0.0.1-auto-8-37726"]

...
30-Jul-2024 19:33:57.795 INFO [main] 
org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler 
["http-nio2-127.0.0.1-auto-12-33381"]
30-Jul-2024 19:33:57.820 WARNING [http-nio2-127.0.0.1-auto-12-exec-5] 
org.apache.catalina.connector.CoyoteAdapter.log Exception while 
attempting to add an entry to the access log

java.lang.NullPointerEx

Re: Sporadic http2 test failures

2024-08-01 Thread Mark Thomas

On 01/08/2024 23:48, Rainer Jung wrote:



I did not check each occurrence but here are examples which all also 
have a NullPointer in the access log. I don't know whether that triggers 
the failure or is just another symptom triggered by the same root cause.




Rainer,

Thanks for the work you have put into this.

The combination of NPE and the timing of these emerging makes me think 
the change to recycle the request and response may be the cause.


I'm holding off closing the 11.0.x vote while I look into this.

Mark

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org