[Bug 66276] New: Intermittent ClassCastException with HTTP/2 streams

2022-09-26 Thread bugzilla
https://bz.apache.org/bugzilla/show_bug.cgi?id=66276

Bug ID: 66276
   Summary: Intermittent ClassCastException with HTTP/2 streams
   Product: Tomcat 9
   Version: 9.0.55
  Hardware: PC
OS: Linux
Status: NEW
  Severity: normal
  Priority: P2
 Component: Catalina
  Assignee: dev@tomcat.apache.org
  Reporter: brendan.be...@quest.com
  Target Milestone: -

Overview: When Tomcat is configured to use HTTP/2, the following errors will
occasionally be seen in the application logs:

2022-09-04 09:28:59.481 FATAL   [http-exec-36] Unhandled exception in thread
"http-exec-36": java.lang.ClassCastException:
org.apache.coyote.http2.RecycledStream cannot be cast to
org.apache.coyote.http2.Stream
java.lang.ClassCastException: org.apache.coyote.http2.RecycledStream cannot be
cast to org.apache.coyote.http2.Stream
at
org.apache.coyote.http2.AbstractNonZeroStream.rePrioritise(AbstractNonZeroStream.java:79)
at
org.apache.coyote.http2.Http2UpgradeHandler.reprioritise(Http2UpgradeHandler.java:1651)
at
org.apache.coyote.http2.Http2AsyncUpgradeHandler.reprioritise(Http2AsyncUpgradeHandler.java:41)
at
org.apache.coyote.http2.Http2Parser.readPriorityFrame(Http2Parser.java:299)
at
org.apache.coyote.http2.Http2AsyncParser$FrameCompletionHandler.completed(Http2AsyncParser.java:254)
at
org.apache.coyote.http2.Http2AsyncParser$FrameCompletionHandler.completed(Http2AsyncParser.java:164)
at
org.apache.tomcat.util.net.SocketWrapperBase$VectoredIOCompletionHandler.completed(SocketWrapperBase.java:1113)
at
org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper$NioOperationState.run(NioEndpoint.java:1634)
at
org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
at
org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
at
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:750)


Steps to reproduce: Enable HTTP/2 connections, and view the application logs
after it has been running for a period of time.

Actual Results: No obvious affect on the application. Appears to be an
intermittent error.

-- 
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 10.1.0

2022-09-26 Thread Mark Thomas

On 23/09/2022 10:44, Mark Thomas wrote:


The proposed 10.1.0 release is:
[ ] Broken - do not release
[ ] Beta   - go ahead and release as 10.1.0 (beta)
[X] Stable - go ahead and release as 10.1.0 (stable)


Unit tests pass on Linux, Windows and MacOS.

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.0.26

2022-09-26 Thread Mark Thomas

On 23/09/2022 12:58, Mark Thomas wrote:


The proposed 10.0.26 release is:
[ ] Broken - do not release
[X] Stable - go ahead and release as 10.0.26 (stable)


Unit tests pass on Linux, Windows and MacOS.

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.67

2022-09-26 Thread Rémy Maucherat
On Fri, Sep 23, 2022 at 2:03 PM Rémy Maucherat  wrote:
>
> The proposed Apache Tomcat 9.0.67 release is now available for voting.
>
> The notable changes compared to 9.0.65 are:
>
> - Add support for authenticating WebSocket clients with an HTTP forward
>proxy when establishing a connection to a WebSocket endpoint via a
>forward proxy that requires authentication. Based on a patch provided
>by Joe Mokos.
>
> - Various fixes for edge case bugs in EL processing.
>
> - Improve host header handling for HTTP/2 requests.
>
> Along with lots of other bug fixes and improvements.
>
> For full details, see the changelog:
> https://nightlies.apache.org/tomcat/tomcat-9.0.x/docs/changelog.html
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-9/v9.0.67/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1397
> The tag is:
> https://github.com/apache/tomcat/tree/9.0.67
> 5f818dfac98784d805830adcff41315d4edd9f7c
>
> The proposed 9.0.67 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 9.0.67 (stable)

Remy

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



[VOTE][RESULT] Release Apache Tomcat 10.1.0

2022-09-26 Thread Mark Thomas

The following votes were cast:

Binding:
+1 (stable): remm, jfclere, markt

Non-Binding:
+1 (stable): lihan

The vote therefore passes.

Thanks to everyone who contributed to this release.

Mark

On 23/09/2022 10:44, Mark Thomas wrote:

The proposed Apache Tomcat 10.1.0 release is now available for
voting.

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.


The notable changes compared to 10.1.0-M17 are:

- Add support for authenticating WebSocket clients with an HTTP forward
   proxy when establishing a connection to a WebSocket endpoint via a
   forward proxy that requires authentication. Based on a patch provided
   by Joe Mokos.

- Various fixes for edge case bugs in EL processing

- Improve host header handling for HTTP/2 requests

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

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

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

The tag is:
https://github.com/apache/tomcat/tree/10.1.0
e9d17cddc285615807ec5fef09240777436b25dc


The proposed 10.1.0 release is:
[ ] Broken - do not release
[ ] Beta   - go ahead and release as 10.1.0 (beta)
[ ] Stable - go ahead and release as 10.1.0 (stable)

-
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



svn commit: r56995 - /dev/tomcat/tomcat-10/v10.1.0/ /release/tomcat/tomcat-10/v10.1.0/

2022-09-26 Thread markt
Author: markt
Date: Mon Sep 26 12:08:52 2022
New Revision: 56995

Log:
Release Apache Tomcat 10.1.0

Added:
release/tomcat/tomcat-10/v10.1.0/
  - copied from r56994, dev/tomcat/tomcat-10/v10.1.0/
Removed:
dev/tomcat/tomcat-10/v10.1.0/


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



[Bug 66209] CPU regression when classpath Bloom filters are active

2022-09-26 Thread bugzilla
https://bz.apache.org/bugzilla/show_bug.cgi?id=66209

--- Comment #20 from Rahul Jaisimha  ---
We've realized the proposed change (updating useBloomFilterForArchives from
boolean to String) is a breaking change, since the setter for this value is
exposed publically. The two options to get around this and maintain
backward-compatibility are:

1. Mark the boolean Setter as Deprecated and add a String Setter. The Getter
would remain a boolean and return whether a bloom filter is to be used (true
for "TRUE" and "RETAINED"). A second getter would have to be exposed to
understand if useBloomFilterForArchives is "RETAINED". This could also be
boolean.

2. Maintain the original boolean "useBloomFilterForArchives" and add a second
boolean parameter "retainBloomFilter". The logic for re-initializing the bloom
filter would depend on both parameters. "retainBloomFilter" will default to
false and will maintain the existing behavior for "useBloomFilterForArchives".
The existing behavior will also be retained if "useBloomFilterForArchives" is
false. Only if "retainBloomFilter" is true and "useBloomFilterForArchives" is
true, then will the bloom filter avoid re-initialization.

For 10.1.x we will maintain the same solution, since this can be
non-backwards-compatible:

> For 10.1.x, I'll remove "useBloomFilterForArchives" from Context and add 
> "archiveIndexing" in WebResourceRoot which supports the following options: 
> ["simple", "bloom", "purged-bloom"].

-- 
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



svn commit: r1904274 - in /tomcat/site/trunk/docs/tomcat-10.1-doc: ./ annotationapi/ annotationapi/jakarta/annotation/ annotationapi/jakarta/annotation/security/ annotationapi/jakarta/annotation/sql/

2022-09-26 Thread markt
Author: markt
Date: Mon Sep 26 14:32:03 2022
New Revision: 1904274

URL: http://svn.apache.org/viewvc?rev=1904274&view=rev
Log:
Update docs for 10.1.0 release


[This commit notification would consist of 147 parts, 
which exceeds the limit of 50 ones, so it was shortened to the summary.]

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



svn commit: r1904275 - in /tomcat/site/trunk: ./ docs/ xdocs/

2022-09-26 Thread markt
Author: markt
Date: Mon Sep 26 14:34:00 2022
New Revision: 1904275

URL: http://svn.apache.org/viewvc?rev=1904275&view=rev
Log:
Update site for Tomcat 10.1.0 release

Modified:
tomcat/site/trunk/build.properties.default
tomcat/site/trunk/docs/doap_Tomcat.rdf
tomcat/site/trunk/docs/download-10.html
tomcat/site/trunk/docs/index.html
tomcat/site/trunk/docs/migration-10.1.html
tomcat/site/trunk/docs/oldnews.html
tomcat/site/trunk/docs/whichversion.html
tomcat/site/trunk/xdocs/doap_Tomcat.rdf
tomcat/site/trunk/xdocs/download-10.xml
tomcat/site/trunk/xdocs/index.xml
tomcat/site/trunk/xdocs/migration-10.1.xml
tomcat/site/trunk/xdocs/oldnews.xml
tomcat/site/trunk/xdocs/whichversion.xml

Modified: tomcat/site/trunk/build.properties.default
URL: 
http://svn.apache.org/viewvc/tomcat/site/trunk/build.properties.default?rev=1904275&r1=1904274&r2=1904275&view=diff
==
--- tomcat/site/trunk/build.properties.default (original)
+++ tomcat/site/trunk/build.properties.default Mon Sep 26 14:34:00 2022
@@ -40,7 +40,7 @@ tomcat7.0=7.0.109
 tomcat8.5=8.5.82
 tomcat9.0=9.0.64
 tomcat10.0=10.0.23
-tomcat10.1=10.1.0-M17
+tomcat10.1=10.1.0
 
 # - Download destination -
 tomcat-site-docs.home=${base.path}/tomcat-site-docs/

Modified: tomcat/site/trunk/docs/doap_Tomcat.rdf
URL: 
http://svn.apache.org/viewvc/tomcat/site/trunk/docs/doap_Tomcat.rdf?rev=1904275&r1=1904274&r2=1904275&view=diff
==
--- tomcat/site/trunk/docs/doap_Tomcat.rdf (original)
+++ tomcat/site/trunk/docs/doap_Tomcat.rdf Mon Sep 26 14:34:00 2022
@@ -59,6 +59,13 @@
 
 
   
+Latest Stable 10.1.x Release
+2022-09-26
+10.1.0
+  
+
+
+  
 Latest Stable 10.0.x Release
 2022-07-26
 10.0.23

Modified: tomcat/site/trunk/docs/download-10.html
URL: 
http://svn.apache.org/viewvc/tomcat/site/trunk/docs/download-10.html?rev=1904275&r1=1904274&r2=1904275&view=diff
==
--- tomcat/site/trunk/docs/download-10.html (original)
+++ tomcat/site/trunk/docs/download-10.html Mon Sep 26 14:34:00 2022
@@ -20,10 +20,10 @@
   Quick Navigation
 
 [define v]10.0.23[end]
-[define w]10.1.0-M17[end]
+[define w]10.1.0[end]
 https://downloads.apache.org/tomcat/tomcat-10/KEYS";>KEYS |
 [v] |
-[w] (beta) |
+[w] |
 Browse |
 https://archive.apache.org/dist/tomcat/tomcat-10";>Archives
   Release Integrity

Modified: tomcat/site/trunk/docs/index.html
URL: 
http://svn.apache.org/viewvc/tomcat/site/trunk/docs/index.html?rev=1904275&r1=1904274&r2=1904275&view=diff
==
--- tomcat/site/trunk/docs/index.html (original)
+++ tomcat/site/trunk/docs/index.html Mon Sep 26 14:34:00 2022
@@ -34,6 +34,36 @@ wiki page.
 Apache Tomcat, Tomcat, Apache, the Apache feather, and the Apache Tomcat
 project logo are trademarks of the Apache Software Foundation.
 
+2022-09-26 Tomcat 10.1.0 Released
+
+The Apache Tomcat Project is proud to announce the release of version 10.1.0
+of Apache Tomcat. This is the first stable release of Apache Tomcat targeted at
+Jakarta EE 10.
+Applications that run on Tomcat 9 and earlier will not run on Tomcat 10
+without changes. Java EE based 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. This conversion is performed using the
+https://github.com/apache/tomcat-jakartaee-migration";>Apache Tomcat
+migration tool for Jakarta EE tool which is also available as a separate
+https://tomcat.apache.org/download-migration.cgi";>download for 
off-line use.
+The notable changes in this release are:
+
+Add support for authenticating WebSocket clients with an HTTP forward proxy
+when establishing a connection to a WebSocket endpoint via a forward proxy
+that requires authentication. Based on a patch provided by Joe Mokos.
+Various fixes for edge case bugs in EL processing.
+Improve host header handling for HTTP/2 requests. 
+
+
+Full details of these changes, and all the other changes, are available in the
+Tomcat 10.1
+changelog.
+
+
+
+https://tomcat.apache.org/download-10.cgi";>Download
+
 2022-09-20 Tomcat Migration Tool for Jakarta EE 1.0.4 
Released
 
 The Apache Tomcat Project is proud to announce the release of 1.0.4 of the
@@ -131,36 +161,6 @@ changelog.
 
 https://tomcat.apache.org/download-90.cgi";>Download
 
-2022-07-20 Tomcat 10.1.0-M17 (beta) Released
-
-The Apache Tomcat Project is proud to announce the release of version 
10.1.0-M17
-of Apache Tomcat. This release is a milestone release and is targeted at 
Jakarta
-EE 10.
-Applications that run on Tom

[Bug 66209] CPU regression when classpath Bloom filters are active

2022-09-26 Thread bugzilla
https://bz.apache.org/bugzilla/show_bug.cgi?id=66209

--- Comment #21 from Mark Thomas  ---
10.1.x is now stable so the plan needs to account for that too.

Given the context how about this:

- leave useBloomFilterForArchives as a boolean on the Context
  - deprecate this for all versions (to be removed in Tomcat 11)
- add archiveIndexing as a String attribute on WebResourceRoot

-- 
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



[ANN] Apache Tomcat 10.1.0 (stable) available

2022-09-26 Thread Mark Thomas

The Apache Tomcat team announces the immediate availability of Apache
Tomcat 10.1.0 (stable).

This is the first stable release of the 10.1.x branch.

Apache Tomcat 10 is an open source software implementation of the
Jakarta Servlet, Jakarta Server Pages, Jakarta Expression Language,
Jakarta WebSocket, Jakarta Authentication and Jakarta Annotations
specifications.

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. This conversion is performed using the Apache Tomcat 
migration tool for Jakarta EE tool which is also available as a separate 
download for off-line use.


The notable changes compared to 10.1.0-M17 include:

- Add support for authenticating WebSocket clients with an HTTP forward
  proxy when establishing a connection to a WebSocket endpoint via a
  forward proxy that requires authentication. Based on a patch provided
  by Joe Mokos.

- Various fixes for edge case bugs in EL processing.

- Improve host header handling for HTTP/2 requests.

Please refer to the change log for the complete list of changes:
http://tomcat.apache.org/tomcat-10.1-doc/changelog.html

Downloads:
http://tomcat.apache.org/download-10.cgi

Migration guides from Apache Tomcat 7.0.x, 8.5.x and 9.0.x:
http://tomcat.apache.org/migration.html

Enjoy!

- The Apache Tomcat team

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



svn commit: r1904276 - in /tomcat/site/trunk: docs/migration-10.1.html xdocs/migration-10.1.xml

2022-09-26 Thread markt
Author: markt
Date: Mon Sep 26 14:46:08 2022
New Revision: 1904276

URL: http://svn.apache.org/viewvc?rev=1904276&view=rev
Log:
Tomcat 10.1.x implements Jakarta Authentication 3.0

Modified:
tomcat/site/trunk/docs/migration-10.1.html
tomcat/site/trunk/xdocs/migration-10.1.xml

Modified: tomcat/site/trunk/docs/migration-10.1.html
URL: 
http://svn.apache.org/viewvc/tomcat/site/trunk/docs/migration-10.1.html?rev=1904276&r1=1904275&r2=1904276&view=diff
==
--- tomcat/site/trunk/docs/migration-10.1.html (original)
+++ tomcat/site/trunk/docs/migration-10.1.html Mon Sep 26 14:46:08 2022
@@ -23,7 +23,7 @@ of Apache Tomcat.
 
 Apache Tomcat 10.1 supports the Jakarta Servlet 6.0,
 Jakarta Server Pages 3.1, Jakarta Expression Language 5.0,
-JakartaWebSocket 2.1 and Jakarta Authentication TBD
+JakartaWebSocket 2.1 and Jakarta Authentication 3.0
 https://cwiki.apache.org/confluence/display/TOMCAT/Specifications";>specifications.
 
 

Modified: tomcat/site/trunk/xdocs/migration-10.1.xml
URL: 
http://svn.apache.org/viewvc/tomcat/site/trunk/xdocs/migration-10.1.xml?rev=1904276&r1=1904275&r2=1904276&view=diff
==
--- tomcat/site/trunk/xdocs/migration-10.1.xml (original)
+++ tomcat/site/trunk/xdocs/migration-10.1.xml Mon Sep 26 14:46:08 2022
@@ -36,7 +36,7 @@ of Apache Tomcat.
 
 Apache Tomcat 10.1 supports the Jakarta Servlet 6.0,
 Jakarta Server Pages 3.1, Jakarta Expression Language 5.0,
-JakartaWebSocket 2.1 and Jakarta Authentication TBD
+JakartaWebSocket 2.1 and Jakarta Authentication 3.0
 https://cwiki.apache.org/confluence/display/TOMCAT/Specifications";>specifications.
 
 



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



Status of 10.0.x

2022-09-26 Thread Mark Thomas

Hi all,

Now 10.1.x is stable, how to we want to handle 10.0.x? Than plan has 
always been that we would support 10.0.x until 10.1.x was stable.


Assuming the vote passes (we need 1 more +1) then there will be a 
10.0.26 release. Do we want that to be the last 10.0.x. release? If, 
not, how many more 10.0.x releases should there be?


Keep in mind that work on 11.0.x could start shortly - thread about that 
to follow.


Mark

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



Re: Status of 10.0.x

2022-09-26 Thread Rémy Maucherat
On Mon, Sep 26, 2022 at 4:51 PM Mark Thomas  wrote:
>
> Hi all,
>
> Now 10.1.x is stable, how to we want to handle 10.0.x? Than plan has
> always been that we would support 10.0.x until 10.1.x was stable.
>
> Assuming the vote passes (we need 1 more +1) then there will be a
> 10.0.26 release. Do we want that to be the last 10.0.x. release? If,
> not, how many more 10.0.x releases should there be?

I'm not against stopping at 10.0.26 and directing people to 10.1.
Maybe we could make a promise for critical security fixes for a period
of time ?

Another item: there was supposed to be a 9.10 branch. But right now,
the changes are probably not significant enough and it's simply better
for everyone to keep all the work on 9.0.

> Keep in mind that work on 11.0.x could start shortly - thread about that
> to follow.

Ok !

Rémy

>
> Mark
>
> -
> 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 66209] CPU regression when classpath Bloom filters are active

2022-09-26 Thread bugzilla
https://bz.apache.org/bugzilla/show_bug.cgi?id=66209

--- Comment #22 from Rahul Jaisimha  ---
(In reply to Mark Thomas from comment #21)
> 10.1.x is now stable so the plan needs to account for that too.
> 
> Given the context how about this:
> 
> - leave useBloomFilterForArchives as a boolean on the Context
>   - deprecate this for all versions (to be removed in Tomcat 11)
> - add archiveIndexing as a String attribute on WebResourceRoot

I like this solution. In that case, "useBloomFilterForArchives" will be honored
if "archiveIndexing" is "false" (default). If "archiveIndexing" is set (any
value other than "false"), then it will override "useBloomFilterForArchives".

Agree with this behavior?

-- 
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: Status of 10.0.x

2022-09-26 Thread Mark Thomas

On 26/09/2022 16:07, Rémy Maucherat wrote:

On Mon, Sep 26, 2022 at 4:51 PM Mark Thomas  wrote:


Hi all,

Now 10.1.x is stable, how to we want to handle 10.0.x? Than plan has
always been that we would support 10.0.x until 10.1.x was stable.

Assuming the vote passes (we need 1 more +1) then there will be a
10.0.26 release. Do we want that to be the last 10.0.x. release? If,
not, how many more 10.0.x releases should there be?


I'm not against stopping at 10.0.26 and directing people to 10.1.
Maybe we could make a promise for critical security fixes for a period
of time ?

Another item: there was supposed to be a 9.10 branch. But right now,
the changes are probably not significant enough and it's simply better
for everyone to keep all the work on 9.0.


Agreed. My thinking on how to do this has changed. I am currently 
thinking that when 9.0.x reaches end of life we create the 9.10.x branch 
and then do a diff against 10.0.x and back-port every change apart from 
those that change (or support) the Java EE API.


I think that will be less work.


Keep in mind that work on 11.0.x could start shortly - thread about that
to follow.


Ok !


:)

Mark

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



[VOTE][RESULT] Release Apache Tomcat 9.0.67

2022-09-26 Thread Rémy Maucherat
The following votes were cast:

Binding:
+1 (stable): ebourg, jfclere, remm

Non-Binding:
+1 (stable): lihan

The vote therefore passes.

Thanks to everyone who contributed to this release.

Remy

On Fri, Sep 23, 2022 at 2:03 PM Rémy Maucherat  wrote:
>
> The proposed Apache Tomcat 9.0.67 release is now available for voting.
>
> The notable changes compared to 9.0.65 are:
>
> - Add support for authenticating WebSocket clients with an HTTP forward
>proxy when establishing a connection to a WebSocket endpoint via a
>forward proxy that requires authentication. Based on a patch provided
>by Joe Mokos.
>
> - Various fixes for edge case bugs in EL processing.
>
> - Improve host header handling for HTTP/2 requests.
>
> Along with lots of other bug fixes and improvements.
>
> For full details, see the changelog:
> https://nightlies.apache.org/tomcat/tomcat-9.0.x/docs/changelog.html
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-9/v9.0.67/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1397
> The tag is:
> https://github.com/apache/tomcat/tree/9.0.67
> 5f818dfac98784d805830adcff41315d4edd9f7c
>
> The proposed 9.0.67 release is:
> [ ] Broken - do not release
> [ ] Stable - go ahead and release as 9.0.67 (stable)
>
> Rémy

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



svn commit: r57007 - /dev/tomcat/tomcat-9/v9.0.67/ /release/tomcat/tomcat-9/v9.0.67/

2022-09-26 Thread remm
Author: remm
Date: Mon Sep 26 18:35:57 2022
New Revision: 57007

Log:
Release Apache Tomcat 9.0.67

Added:
release/tomcat/tomcat-9/v9.0.67/
  - copied from r57006, dev/tomcat/tomcat-9/v9.0.67/
Removed:
dev/tomcat/tomcat-9/v9.0.67/


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



svn commit: r1904283 - in /tomcat/site/trunk: ./ docs/ xdocs/

2022-09-26 Thread remm
Author: remm
Date: Mon Sep 26 18:46:57 2022
New Revision: 1904283

URL: http://svn.apache.org/viewvc?rev=1904283&view=rev
Log:
Update site for Tomcat 9.0.67

Modified:
tomcat/site/trunk/build.properties.default
tomcat/site/trunk/docs/doap_Tomcat.rdf
tomcat/site/trunk/docs/download-90.html
tomcat/site/trunk/docs/index.html
tomcat/site/trunk/docs/migration-9.html
tomcat/site/trunk/docs/oldnews.html
tomcat/site/trunk/docs/whichversion.html
tomcat/site/trunk/xdocs/doap_Tomcat.rdf
tomcat/site/trunk/xdocs/download-90.xml
tomcat/site/trunk/xdocs/index.xml
tomcat/site/trunk/xdocs/migration-9.xml
tomcat/site/trunk/xdocs/oldnews.xml
tomcat/site/trunk/xdocs/whichversion.xml

Modified: tomcat/site/trunk/build.properties.default
URL: 
http://svn.apache.org/viewvc/tomcat/site/trunk/build.properties.default?rev=1904283&r1=1904282&r2=1904283&view=diff
==
--- tomcat/site/trunk/build.properties.default (original)
+++ tomcat/site/trunk/build.properties.default Mon Sep 26 18:46:57 2022
@@ -38,7 +38,7 @@ tomcat.loc=https://downloads.apache.org/
 # - Tomcat versions -
 tomcat7.0=7.0.109
 tomcat8.5=8.5.82
-tomcat9.0=9.0.64
+tomcat9.0=9.0.67
 tomcat10.0=10.0.23
 tomcat10.1=10.1.0
 

Modified: tomcat/site/trunk/docs/doap_Tomcat.rdf
URL: 
http://svn.apache.org/viewvc/tomcat/site/trunk/docs/doap_Tomcat.rdf?rev=1904283&r1=1904282&r2=1904283&view=diff
==
--- tomcat/site/trunk/docs/doap_Tomcat.rdf (original)
+++ tomcat/site/trunk/docs/doap_Tomcat.rdf Mon Sep 26 18:46:57 2022
@@ -74,8 +74,8 @@
 
   
 Latest Stable 9.0.x Release
-2022-07-20
-9.0.65
+2022-09-26
+9.0.67
   
 
 

Modified: tomcat/site/trunk/docs/download-90.html
URL: 
http://svn.apache.org/viewvc/tomcat/site/trunk/docs/download-90.html?rev=1904283&r1=1904282&r2=1904283&view=diff
==
--- tomcat/site/trunk/docs/download-90.html (original)
+++ tomcat/site/trunk/docs/download-90.html Mon Sep 26 18:46:57 2022
@@ -10,7 +10,7 @@
 
   Quick Navigation
 
-[define v]9.0.65[end]
+[define v]9.0.67[end]
 https://downloads.apache.org/tomcat/tomcat-9/KEYS";>KEYS |
 [v] |
 Browse |

Modified: tomcat/site/trunk/docs/index.html
URL: 
http://svn.apache.org/viewvc/tomcat/site/trunk/docs/index.html?rev=1904283&r1=1904282&r2=1904283&view=diff
==
--- tomcat/site/trunk/docs/index.html (original)
+++ tomcat/site/trunk/docs/index.html Mon Sep 26 18:46:57 2022
@@ -64,6 +64,28 @@ changelog.
 
 https://tomcat.apache.org/download-10.cgi";>Download
 
+2022-09-26 Tomcat 9.0.67 Released
+
+The Apache Tomcat Project is proud to announce the release of version 9.0.67
+of Apache Tomcat. This release implements specifications that are part of the
+Java EE 8 platform. The notable changes compared to 9.0.65 include:
+
+Add support for authenticating WebSocket clients with an HTTP forward
+proxy when establishing a connection to a WebSocket endpoint via a
+forward proxy that requires authentication. Based on a patch provided
+by Joe Mokos.
+Various fixes for edge case bugs in EL processing.
+Improve host header handling for HTTP/2 requests.
+
+
+Full details of these changes, and all the other changes, are available in the
+Tomcat 9
+changelog.
+
+
+
+https://tomcat.apache.org/download-90.cgi";>Download
+
 2022-09-20 Tomcat Migration Tool for Jakarta EE 1.0.4 
Released
 
 The Apache Tomcat Project is proud to announce the release of 1.0.4 of the

Modified: tomcat/site/trunk/docs/migration-9.html
URL: 
http://svn.apache.org/viewvc/tomcat/site/trunk/docs/migration-9.html?rev=1904283&r1=1904282&r2=1904283&view=diff
==
--- tomcat/site/trunk/docs/migration-9.html (original)
+++ tomcat/site/trunk/docs/migration-9.html Mon Sep 26 18:46:57 2022
@@ -446,7 +446,8 @@ of Apache Tomcat.
 9.0.60
 9.0.62
 9.0.63
-9.0.64
+9.0.64
+9.0.65
 , new version:
 
 9.0.0-M1
@@ -516,7 +517,8 @@ of Apache Tomcat.
 9.0.62
 9.0.63
 9.0.64
-9.0.65
+9.0.65
+9.0.67
 trunk (unreleased)
 
 

Modified: tomcat/site/trunk/docs/oldnews.html
URL: 
http://svn.apache.org/viewvc/tomcat/site/trunk/docs/oldnews.html?rev=1904283&r1=1904282&r2=1904283&view=diff
==
--- tomcat/site/trunk/docs/oldnews.html (original)
+++ tomcat/site/trunk/docs/oldnews.html Mon Sep 26 18:46:57 2022
@@ -16,6 +16,27 @@
   year 2011
   year 2010
 
+2022-07-20 Tomcat 9.0.65 Released
+
+The Apache Tomcat Project is proud to announce the release of version 9.0.65
+of Apache Tomcat. This release implements specif

svn commit: r1904284 - in /tomcat/site/trunk/docs/tomcat-9.0-doc: ./ annotationapi/ annotationapi/javax/annotation/ annotationapi/javax/annotation/security/ annotationapi/javax/annotation/sql/ api/ ap

2022-09-26 Thread remm
Author: remm
Date: Mon Sep 26 18:56:04 2022
New Revision: 1904284

URL: http://svn.apache.org/viewvc?rev=1904284&view=rev
Log:
Update docs for 9.0.67


[This commit notification would consist of 411 parts, 
which exceeds the limit of 50 ones, so it was shortened to the summary.]

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



svn commit: r1904285 - in /tomcat/site/trunk/docs/tomcat-9.0-doc/api/org/apache: el/util/ jasper/el/ juli/ tomcat/buildutil/ tomcat/websocket/

2022-09-26 Thread remm
Author: remm
Date: Mon Sep 26 18:57:11 2022
New Revision: 1904285

URL: http://svn.apache.org/viewvc?rev=1904285&view=rev
Log:
Update docs for 9.0.67

Added:

tomcat/site/trunk/docs/tomcat-9.0-doc/api/org/apache/el/util/ExceptionUtils.html

tomcat/site/trunk/docs/tomcat-9.0-doc/api/org/apache/jasper/el/JasperELResolver.GraalBeanELResolver.html

tomcat/site/trunk/docs/tomcat-9.0-doc/api/org/apache/juli/FileHandler.ThreadFactory.html

tomcat/site/trunk/docs/tomcat-9.0-doc/api/org/apache/tomcat/buildutil/ForceUtcTimeZone.html

tomcat/site/trunk/docs/tomcat-9.0-doc/api/org/apache/tomcat/websocket/AuthenticationType.html
Removed:

tomcat/site/trunk/docs/tomcat-9.0-doc/api/org/apache/juli/AsyncFileHandler.LogEntry.html

tomcat/site/trunk/docs/tomcat-9.0-doc/api/org/apache/juli/AsyncFileHandler.LoggerThread.html

Added: 
tomcat/site/trunk/docs/tomcat-9.0-doc/api/org/apache/el/util/ExceptionUtils.html
URL: 
http://svn.apache.org/viewvc/tomcat/site/trunk/docs/tomcat-9.0-doc/api/org/apache/el/util/ExceptionUtils.html?rev=1904285&view=auto
==
--- 
tomcat/site/trunk/docs/tomcat-9.0-doc/api/org/apache/el/util/ExceptionUtils.html
 (added)
+++ 
tomcat/site/trunk/docs/tomcat-9.0-doc/api/org/apache/el/util/ExceptionUtils.html
 Mon Sep 26 18:57:11 2022
@@ -0,0 +1,336 @@
+
+
+
+
+
+ExceptionUtils (Apache Tomcat 9.0.67 API Documentation)
+
+
+
+
+
+
+
+
+
+
+
+
+var data = {"i0":9,"i1":9};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static 
Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+var pathtoroot = "../../../../";
+var useModuleDirectories = true;
+loadScripts(document, 'script');
+
+JavaScript is disabled on your browser.
+
+
+
+
+
+
+
+
+Skip navigation links
+
+
+
+
+Overview
+Package
+Class
+Tree
+Deprecated
+Index
+Help
+
+Apache Tomcat 9.0.67
+
+
+
+All Classes
+
+
+SEARCH:
+
+
+
+
+
+
+
+
+JavaScript is disabled on your browser.
+
+
+
+
+Summary: 
+Nested | 
+Field | 
+Constr | 
+Method
+
+
+Detail: 
+Field | 
+Constr | 
+Method
+
+
+
+
+
+
+
+ 
+
+
+
+
+
+
+
+Package org.apache.el.util
+Class ExceptionUtils
+
+
+
+java.lang.Object
+
+
+org.apache.el.util.ExceptionUtils
+
+
+
+
+
+
+
+public class ExceptionUtils
+extends java.lang.Object
+Utilities for handling Throwables and Exceptions.
+
+
+
+
+
+
+
+
+
+
+
+
+Constructor Summary
+
+Constructors 
+
+Constructor
+Description
+
+
+ExceptionUtils()
+ 
+
+
+
+
+
+
+
+
+
+
+
+Method Summary
+
+All Methods Static Methods Concrete Methods 
+
+Modifier and Type
+Method
+Description
+
+
+static void
+handleThrowable​(java.lang.Throwable t)
+
+Checks whether the supplied Throwable is one that needs to 
be
+ rethrown and swallows all others.
+
+
+
+static void
+preload()
+
+NO-OP method provided to enable simple pre-loading of this 
class.
+
+
+
+
+
+
+
+Methods inherited from class java.lang.Object
+clone, equals, finalize, getClass, hashCode, notify, notifyAll, 
toString, wait, wait, wait
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Constructor Detail
+
+
+
+
+
+ExceptionUtils
+public ExceptionUtils()
+
+
+
+
+
+
+
+
+
+
+
+Method Detail
+
+
+
+
+
+handleThrowable
+public 
static void handleThrowable​(java.lang.Throwable t)
+Checks whether the supplied Throwable is one that needs to 
be
+ rethrown and swallows all others.
+
+Parameters:
+t - the Throwable to check
+
+
+
+
+
+
+
+
+preload
+public static void preload()
+NO-OP method provided to enable simple pre-loading of this 
class. Since
+ the class is used extensively in error handling, it is prudent to
+ pre-load it to avoid any failure to load this class masking the true
+ problem during error handling.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Skip navigation links
+
+
+
+
+Overview
+Package
+Class
+Tree
+Deprecated
+Index
+Help
+
+Apache Tomcat 9.0.67
+
+
+
+All Classes
+
+
+
+
+
+JavaScript is disabled on your browser.
+
+
+
+
+Summary: 
+Nested | 
+Field | 
+Constr | 
+Method
+
+
+Detail: 
+Field | 
+Constr | 
+Method
+
+
+
+
+
+
+
+Copyright © 2000-2022 Apache Software 
Foundation. All Rights Reserved.
+
+
+

Added: 
tomcat/site/trunk/docs/tomcat-9.0-doc/api/org/apache/jasper/el/JasperELR

[ANN] Apache Tomcat 9.0.67 available

2022-09-26 Thread Rémy Maucherat
The Apache Tomcat team announces the immediate availability of Apache
Tomcat 9.0.67.

Apache Tomcat 9 is an open source software implementation of the Java
Servlet, JavaServer Pages, Java Unified Expression Language, Java
WebSocket and JASPIC technologies.

Apache Tomcat 9.0.67 is a bugfix and feature release. The notable
changes compared to 9.0.65 include:

- Add support for authenticating WebSocket clients with an HTTP forward
   proxy when establishing a connection to a WebSocket endpoint via a
   forward proxy that requires authentication. Based on a patch provided
   by Joe Mokos.

- Various fixes for edge case bugs in EL processing.

- Improve host header handling for HTTP/2 requests.

Along with lots of other bug fixes and improvements.

Please refer to the change log for the complete list of changes:
https://tomcat.apache.org/tomcat-9.0-doc/changelog.html


Downloads:
https://tomcat.apache.org/download-90.cgi

Migration guides from Apache Tomcat 7.x and 8.x:
https://tomcat.apache.org/migration.html

Enjoy!

- The Apache Tomcat team

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



[tomcat] branch 9.0.x updated: Next dev cycle

2022-09-26 Thread remm
This is an automated email from the ASF dual-hosted git repository.

remm pushed a commit to branch 9.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/9.0.x by this push:
 new c874418115 Next dev cycle
c874418115 is described below

commit c874418115445a3df12c337c83e594747e0f9abc
Author: remm 
AuthorDate: Mon Sep 26 21:18:08 2022 +0200

Next dev cycle
---
 build.properties.default | 2 +-
 res/maven/mvn.properties.default | 2 +-
 webapps/docs/changelog.xml   | 4 +++-
 3 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/build.properties.default b/build.properties.default
index 1f78f187a1..d506e06178 100644
--- a/build.properties.default
+++ b/build.properties.default
@@ -31,7 +31,7 @@
 # - Version Control Flags -
 version.major=9
 version.minor=0
-version.build=67
+version.build=68
 version.patch=0
 version.suffix=
 version.dev=-dev
diff --git a/res/maven/mvn.properties.default b/res/maven/mvn.properties.default
index 279fec302c..be0f8f949a 100644
--- a/res/maven/mvn.properties.default
+++ b/res/maven/mvn.properties.default
@@ -39,7 +39,7 @@ 
maven.asf.release.repo.url=https://repository.apache.org/service/local/staging/d
 maven.asf.release.repo.repositoryId=apache.releases.https
 
 # Release version info
-maven.asf.release.deploy.version=9.0.67
+maven.asf.release.deploy.version=9.0.68
 
 #Where do we load the libraries from
 tomcat.lib.path=../../output/build/lib
diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml
index 46a09058fc..b35a5c72c4 100644
--- a/webapps/docs/changelog.xml
+++ b/webapps/docs/changelog.xml
@@ -104,7 +104,9 @@
   They eventually become mixed with the numbered issues (i.e., numbered
   issues do not "pop up" wrt. others).
 -->
-
+
+
+
   
 
   


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



svn commit: r57008 - /release/tomcat/tomcat-9/v9.0.65/

2022-09-26 Thread remm
Author: remm
Date: Mon Sep 26 19:26:03 2022
New Revision: 57008

Log:
Drop 9.0.65

Removed:
release/tomcat/tomcat-9/v9.0.65/


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



Re: Status of 10.0.x

2022-09-26 Thread Han Li



> 2022年9月26日 23:07,Rémy Maucherat  写道:
> 
> On Mon, Sep 26, 2022 at 4:51 PM Mark Thomas  wrote:
>> 
>> Hi all,
>> 
>> Now 10.1.x is stable, how to we want to handle 10.0.x? Than plan has
>> always been that we would support 10.0.x until 10.1.x was stable.
>> 
>> Assuming the vote passes (we need 1 more +1) then there will be a
>> 10.0.26 release. Do we want that to be the last 10.0.x. release? If,
>> not, how many more 10.0.x releases should there be?
> 
> I'm not against stopping at 10.0.26 and directing people to 10.1.

+1

Han

> Maybe we could make a promise for critical security fixes for a period
> of time ?
> 
> Another item: there was supposed to be a 9.10 branch. But right now,
> the changes are probably not significant enough and it's simply better
> for everyone to keep all the work on 9.0.
> 
>> Keep in mind that work on 11.0.x could start shortly - thread about that
>> to follow.
> 
> Ok !
> 
> Rémy
> 
>> 
>> Mark
>> 
>> -
>> 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
> 


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



[tomcat] branch main updated: Polishing TaskQueue & ThreadPoolExecutor

2022-09-26 Thread lihan
This is an automated email from the ASF dual-hosted git repository.

lihan pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/main by this push:
 new 6afb00b3d5 Polishing TaskQueue & ThreadPoolExecutor
6afb00b3d5 is described below

commit 6afb00b3d5c5de8b6fbb02cd1159356763fb
Author: lihan 
AuthorDate: Tue Sep 27 11:04:44 2022 +0800

Polishing TaskQueue & ThreadPoolExecutor

The ThreadPoolExecutor#setCorePoolSize no longer does 
queue.remainingCapacity()==0 checks on JDK7 and above, so remove the code that 
temporarily fakes this condition.
---
 java/org/apache/tomcat/util/threads/TaskQueue.java | 25 --
 .../tomcat/util/threads/ThreadPoolExecutor.java| 13 ---
 2 files changed, 38 deletions(-)

diff --git a/java/org/apache/tomcat/util/threads/TaskQueue.java 
b/java/org/apache/tomcat/util/threads/TaskQueue.java
index 0e7cea653e..981949975b 100644
--- a/java/org/apache/tomcat/util/threads/TaskQueue.java
+++ b/java/org/apache/tomcat/util/threads/TaskQueue.java
@@ -38,10 +38,6 @@ public class TaskQueue extends LinkedBlockingQueue 
{
 
 private transient volatile ThreadPoolExecutor parent = null;
 
-// No need to be volatile. This is written and read in a single thread
-// (when stopping a context and firing the listeners)
-private int forcedRemainingCapacity = -1;
-
 public TaskQueue() {
 super();
 }
@@ -121,25 +117,4 @@ public class TaskQueue extends 
LinkedBlockingQueue {
 }
 return super.take();
 }
-
-@Override
-public int remainingCapacity() {
-if (forcedRemainingCapacity > DEFAULT_FORCED_REMAINING_CAPACITY) {
-// ThreadPoolExecutor.setCorePoolSize checks that
-// remainingCapacity==0 to allow to interrupt idle threads
-// I don't see why, but this hack allows to conform to this
-// "requirement"
-return forcedRemainingCapacity;
-}
-return super.remainingCapacity();
-}
-
-public void setForcedRemainingCapacity(int forcedRemainingCapacity) {
-this.forcedRemainingCapacity = forcedRemainingCapacity;
-}
-
-void resetForcedRemainingCapacity() {
-this.forcedRemainingCapacity = DEFAULT_FORCED_REMAINING_CAPACITY;
-}
-
 }
diff --git a/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java 
b/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java
index 1a92b89ac1..c660a3ed23 100644
--- a/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java
+++ b/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java
@@ -1909,15 +1909,6 @@ public class ThreadPoolExecutor extends 
AbstractExecutorService {
 
 // save the current pool parameters to restore them later
 int savedCorePoolSize = this.getCorePoolSize();
-TaskQueue taskQueue =
-getQueue() instanceof TaskQueue ? (TaskQueue) getQueue() : 
null;
-if (taskQueue != null) {
-// note by slaurent : quite oddly 
threadPoolExecutor.setCorePoolSize
-// checks that queue.remainingCapacity()==0. I did not understand
-// why, but to get the intended effect of waking up idle threads, I
-// temporarily fake this condition.
-taskQueue.setForcedRemainingCapacity(0);
-}
 
 // setCorePoolSize(0) wakes idle threads
 this.setCorePoolSize(0);
@@ -1926,10 +1917,6 @@ public class ThreadPoolExecutor extends 
AbstractExecutorService {
 // all threads of the pool are renewed in a limited time, something 
like
 // (threadKeepAlive + longest request time)
 
-if (taskQueue != null) {
-// ok, restore the state of the queue and pool
-taskQueue.resetForcedRemainingCapacity();
-}
 this.setCorePoolSize(savedCorePoolSize);
 }
 


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



[tomcat] branch 10.0.x updated: Polishing TaskQueue & ThreadPoolExecutor

2022-09-26 Thread lihan
This is an automated email from the ASF dual-hosted git repository.

lihan pushed a commit to branch 10.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/10.0.x by this push:
 new b458f32419 Polishing TaskQueue & ThreadPoolExecutor
b458f32419 is described below

commit b458f32419076db2d59b05c50441ba2df501aa6e
Author: lihan 
AuthorDate: Tue Sep 27 11:04:44 2022 +0800

Polishing TaskQueue & ThreadPoolExecutor

The ThreadPoolExecutor#setCorePoolSize no longer does 
queue.remainingCapacity()==0 checks on JDK7 and above, so remove the code that 
temporarily fakes this condition.
---
 java/org/apache/tomcat/util/threads/TaskQueue.java | 25 --
 .../tomcat/util/threads/ThreadPoolExecutor.java| 13 ---
 2 files changed, 38 deletions(-)

diff --git a/java/org/apache/tomcat/util/threads/TaskQueue.java 
b/java/org/apache/tomcat/util/threads/TaskQueue.java
index 3ad5a2a587..cacb320d65 100644
--- a/java/org/apache/tomcat/util/threads/TaskQueue.java
+++ b/java/org/apache/tomcat/util/threads/TaskQueue.java
@@ -38,10 +38,6 @@ public class TaskQueue extends LinkedBlockingQueue 
{
 
 private transient volatile ThreadPoolExecutor parent = null;
 
-// No need to be volatile. This is written and read in a single thread
-// (when stopping a context and firing the listeners)
-private int forcedRemainingCapacity = -1;
-
 public TaskQueue() {
 super();
 }
@@ -145,25 +141,4 @@ public class TaskQueue extends 
LinkedBlockingQueue {
 }
 return super.take();
 }
-
-@Override
-public int remainingCapacity() {
-if (forcedRemainingCapacity > DEFAULT_FORCED_REMAINING_CAPACITY) {
-// ThreadPoolExecutor.setCorePoolSize checks that
-// remainingCapacity==0 to allow to interrupt idle threads
-// I don't see why, but this hack allows to conform to this
-// "requirement"
-return forcedRemainingCapacity;
-}
-return super.remainingCapacity();
-}
-
-public void setForcedRemainingCapacity(int forcedRemainingCapacity) {
-this.forcedRemainingCapacity = forcedRemainingCapacity;
-}
-
-void resetForcedRemainingCapacity() {
-this.forcedRemainingCapacity = DEFAULT_FORCED_REMAINING_CAPACITY;
-}
-
 }
diff --git a/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java 
b/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java
index d800cad534..df46be1853 100644
--- a/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java
+++ b/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java
@@ -1938,15 +1938,6 @@ public class ThreadPoolExecutor extends 
AbstractExecutorService {
 
 // save the current pool parameters to restore them later
 int savedCorePoolSize = this.getCorePoolSize();
-TaskQueue taskQueue =
-getQueue() instanceof TaskQueue ? (TaskQueue) getQueue() : 
null;
-if (taskQueue != null) {
-// note by slaurent : quite oddly 
threadPoolExecutor.setCorePoolSize
-// checks that queue.remainingCapacity()==0. I did not understand
-// why, but to get the intended effect of waking up idle threads, I
-// temporarily fake this condition.
-taskQueue.setForcedRemainingCapacity(0);
-}
 
 // setCorePoolSize(0) wakes idle threads
 this.setCorePoolSize(0);
@@ -1955,10 +1946,6 @@ public class ThreadPoolExecutor extends 
AbstractExecutorService {
 // all threads of the pool are renewed in a limited time, something 
like
 // (threadKeepAlive + longest request time)
 
-if (taskQueue != null) {
-// ok, restore the state of the queue and pool
-taskQueue.resetForcedRemainingCapacity();
-}
 this.setCorePoolSize(savedCorePoolSize);
 }
 


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



[tomcat] branch 9.0.x updated: Polishing TaskQueue & ThreadPoolExecutor

2022-09-26 Thread lihan
This is an automated email from the ASF dual-hosted git repository.

lihan pushed a commit to branch 9.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/9.0.x by this push:
 new ef7e3d48a5 Polishing TaskQueue & ThreadPoolExecutor
ef7e3d48a5 is described below

commit ef7e3d48a58eb0bb7dd0693179e674ef1aab6772
Author: lihan 
AuthorDate: Tue Sep 27 11:04:44 2022 +0800

Polishing TaskQueue & ThreadPoolExecutor

The ThreadPoolExecutor#setCorePoolSize no longer does 
queue.remainingCapacity()==0 checks on JDK7 and above, so remove the code that 
temporarily fakes this condition.
---
 java/org/apache/tomcat/util/threads/TaskQueue.java | 25 --
 .../tomcat/util/threads/ThreadPoolExecutor.java| 13 ---
 2 files changed, 38 deletions(-)

diff --git a/java/org/apache/tomcat/util/threads/TaskQueue.java 
b/java/org/apache/tomcat/util/threads/TaskQueue.java
index 3ad5a2a587..cacb320d65 100644
--- a/java/org/apache/tomcat/util/threads/TaskQueue.java
+++ b/java/org/apache/tomcat/util/threads/TaskQueue.java
@@ -38,10 +38,6 @@ public class TaskQueue extends LinkedBlockingQueue 
{
 
 private transient volatile ThreadPoolExecutor parent = null;
 
-// No need to be volatile. This is written and read in a single thread
-// (when stopping a context and firing the listeners)
-private int forcedRemainingCapacity = -1;
-
 public TaskQueue() {
 super();
 }
@@ -145,25 +141,4 @@ public class TaskQueue extends 
LinkedBlockingQueue {
 }
 return super.take();
 }
-
-@Override
-public int remainingCapacity() {
-if (forcedRemainingCapacity > DEFAULT_FORCED_REMAINING_CAPACITY) {
-// ThreadPoolExecutor.setCorePoolSize checks that
-// remainingCapacity==0 to allow to interrupt idle threads
-// I don't see why, but this hack allows to conform to this
-// "requirement"
-return forcedRemainingCapacity;
-}
-return super.remainingCapacity();
-}
-
-public void setForcedRemainingCapacity(int forcedRemainingCapacity) {
-this.forcedRemainingCapacity = forcedRemainingCapacity;
-}
-
-void resetForcedRemainingCapacity() {
-this.forcedRemainingCapacity = DEFAULT_FORCED_REMAINING_CAPACITY;
-}
-
 }
diff --git a/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java 
b/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java
index d800cad534..df46be1853 100644
--- a/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java
+++ b/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java
@@ -1938,15 +1938,6 @@ public class ThreadPoolExecutor extends 
AbstractExecutorService {
 
 // save the current pool parameters to restore them later
 int savedCorePoolSize = this.getCorePoolSize();
-TaskQueue taskQueue =
-getQueue() instanceof TaskQueue ? (TaskQueue) getQueue() : 
null;
-if (taskQueue != null) {
-// note by slaurent : quite oddly 
threadPoolExecutor.setCorePoolSize
-// checks that queue.remainingCapacity()==0. I did not understand
-// why, but to get the intended effect of waking up idle threads, I
-// temporarily fake this condition.
-taskQueue.setForcedRemainingCapacity(0);
-}
 
 // setCorePoolSize(0) wakes idle threads
 this.setCorePoolSize(0);
@@ -1955,10 +1946,6 @@ public class ThreadPoolExecutor extends 
AbstractExecutorService {
 // all threads of the pool are renewed in a limited time, something 
like
 // (threadKeepAlive + longest request time)
 
-if (taskQueue != null) {
-// ok, restore the state of the queue and pool
-taskQueue.resetForcedRemainingCapacity();
-}
 this.setCorePoolSize(savedCorePoolSize);
 }
 


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



[tomcat] branch 8.5.x updated: Polishing TaskQueue & ThreadPoolExecutor

2022-09-26 Thread lihan
This is an automated email from the ASF dual-hosted git repository.

lihan pushed a commit to branch 8.5.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/8.5.x by this push:
 new 4aeddee4cf Polishing TaskQueue & ThreadPoolExecutor
4aeddee4cf is described below

commit 4aeddee4cf9829ac313f68c7656eff80c26cee0c
Author: lihan 
AuthorDate: Tue Sep 27 11:04:44 2022 +0800

Polishing TaskQueue & ThreadPoolExecutor

The ThreadPoolExecutor#setCorePoolSize no longer does 
queue.remainingCapacity()==0 checks on JDK7 and above, so remove the code that 
temporarily fakes this condition.
---
 java/org/apache/tomcat/util/threads/TaskQueue.java | 25 --
 .../tomcat/util/threads/ThreadPoolExecutor.java| 13 ---
 2 files changed, 38 deletions(-)

diff --git a/java/org/apache/tomcat/util/threads/TaskQueue.java 
b/java/org/apache/tomcat/util/threads/TaskQueue.java
index 3ad5a2a587..cacb320d65 100644
--- a/java/org/apache/tomcat/util/threads/TaskQueue.java
+++ b/java/org/apache/tomcat/util/threads/TaskQueue.java
@@ -38,10 +38,6 @@ public class TaskQueue extends LinkedBlockingQueue 
{
 
 private transient volatile ThreadPoolExecutor parent = null;
 
-// No need to be volatile. This is written and read in a single thread
-// (when stopping a context and firing the listeners)
-private int forcedRemainingCapacity = -1;
-
 public TaskQueue() {
 super();
 }
@@ -145,25 +141,4 @@ public class TaskQueue extends 
LinkedBlockingQueue {
 }
 return super.take();
 }
-
-@Override
-public int remainingCapacity() {
-if (forcedRemainingCapacity > DEFAULT_FORCED_REMAINING_CAPACITY) {
-// ThreadPoolExecutor.setCorePoolSize checks that
-// remainingCapacity==0 to allow to interrupt idle threads
-// I don't see why, but this hack allows to conform to this
-// "requirement"
-return forcedRemainingCapacity;
-}
-return super.remainingCapacity();
-}
-
-public void setForcedRemainingCapacity(int forcedRemainingCapacity) {
-this.forcedRemainingCapacity = forcedRemainingCapacity;
-}
-
-void resetForcedRemainingCapacity() {
-this.forcedRemainingCapacity = DEFAULT_FORCED_REMAINING_CAPACITY;
-}
-
 }
diff --git a/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java 
b/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java
index d800cad534..df46be1853 100644
--- a/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java
+++ b/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java
@@ -1938,15 +1938,6 @@ public class ThreadPoolExecutor extends 
AbstractExecutorService {
 
 // save the current pool parameters to restore them later
 int savedCorePoolSize = this.getCorePoolSize();
-TaskQueue taskQueue =
-getQueue() instanceof TaskQueue ? (TaskQueue) getQueue() : 
null;
-if (taskQueue != null) {
-// note by slaurent : quite oddly 
threadPoolExecutor.setCorePoolSize
-// checks that queue.remainingCapacity()==0. I did not understand
-// why, but to get the intended effect of waking up idle threads, I
-// temporarily fake this condition.
-taskQueue.setForcedRemainingCapacity(0);
-}
 
 // setCorePoolSize(0) wakes idle threads
 this.setCorePoolSize(0);
@@ -1955,10 +1946,6 @@ public class ThreadPoolExecutor extends 
AbstractExecutorService {
 // all threads of the pool are renewed in a limited time, something 
like
 // (threadKeepAlive + longest request time)
 
-if (taskQueue != null) {
-// ok, restore the state of the queue and pool
-taskQueue.resetForcedRemainingCapacity();
-}
 this.setCorePoolSize(savedCorePoolSize);
 }
 


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



[tomcat] branch main updated: Remove meaningless code.

2022-09-26 Thread lihan
This is an automated email from the ASF dual-hosted git repository.

lihan pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/main by this push:
 new 42a8beda32 Remove meaningless code.
42a8beda32 is described below

commit 42a8beda32f0c026f6bb3026c3ef68d67528bcbb
Author: lihan 
AuthorDate: Tue Sep 27 11:25:24 2022 +0800

Remove meaningless code.
---
 java/org/apache/tomcat/util/threads/TaskQueue.java | 1 -
 1 file changed, 1 deletion(-)

diff --git a/java/org/apache/tomcat/util/threads/TaskQueue.java 
b/java/org/apache/tomcat/util/threads/TaskQueue.java
index 981949975b..3ddd277ce4 100644
--- a/java/org/apache/tomcat/util/threads/TaskQueue.java
+++ b/java/org/apache/tomcat/util/threads/TaskQueue.java
@@ -34,7 +34,6 @@ public class TaskQueue extends LinkedBlockingQueue {
 
 private static final long serialVersionUID = 1L;
 protected static final StringManager sm = 
StringManager.getManager(TaskQueue.class);
-private static final int DEFAULT_FORCED_REMAINING_CAPACITY = -1;
 
 private transient volatile ThreadPoolExecutor parent = null;
 


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



[tomcat] branch 10.0.x updated: Remove meaningless code.

2022-09-26 Thread lihan
This is an automated email from the ASF dual-hosted git repository.

lihan pushed a commit to branch 10.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/10.0.x by this push:
 new 667e6cf509 Remove meaningless code.
667e6cf509 is described below

commit 667e6cf509668d2b6d2c384187b4ae660ce83951
Author: lihan 
AuthorDate: Tue Sep 27 11:25:24 2022 +0800

Remove meaningless code.
---
 java/org/apache/tomcat/util/threads/TaskQueue.java | 1 -
 1 file changed, 1 deletion(-)

diff --git a/java/org/apache/tomcat/util/threads/TaskQueue.java 
b/java/org/apache/tomcat/util/threads/TaskQueue.java
index cacb320d65..6b250ee9d3 100644
--- a/java/org/apache/tomcat/util/threads/TaskQueue.java
+++ b/java/org/apache/tomcat/util/threads/TaskQueue.java
@@ -34,7 +34,6 @@ public class TaskQueue extends LinkedBlockingQueue {
 
 private static final long serialVersionUID = 1L;
 protected static final StringManager sm = 
StringManager.getManager(TaskQueue.class);
-private static final int DEFAULT_FORCED_REMAINING_CAPACITY = -1;
 
 private transient volatile ThreadPoolExecutor parent = null;
 


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



[tomcat] branch 9.0.x updated: Remove meaningless code.

2022-09-26 Thread lihan
This is an automated email from the ASF dual-hosted git repository.

lihan pushed a commit to branch 9.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/9.0.x by this push:
 new 2558c1bcae Remove meaningless code.
2558c1bcae is described below

commit 2558c1bcae768c9b1b7607adc6a97e43569cf9dd
Author: lihan 
AuthorDate: Tue Sep 27 11:25:24 2022 +0800

Remove meaningless code.
---
 java/org/apache/tomcat/util/threads/TaskQueue.java | 1 -
 1 file changed, 1 deletion(-)

diff --git a/java/org/apache/tomcat/util/threads/TaskQueue.java 
b/java/org/apache/tomcat/util/threads/TaskQueue.java
index cacb320d65..6b250ee9d3 100644
--- a/java/org/apache/tomcat/util/threads/TaskQueue.java
+++ b/java/org/apache/tomcat/util/threads/TaskQueue.java
@@ -34,7 +34,6 @@ public class TaskQueue extends LinkedBlockingQueue {
 
 private static final long serialVersionUID = 1L;
 protected static final StringManager sm = 
StringManager.getManager(TaskQueue.class);
-private static final int DEFAULT_FORCED_REMAINING_CAPACITY = -1;
 
 private transient volatile ThreadPoolExecutor parent = null;
 


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



[tomcat] branch 8.5.x updated: Remove meaningless code.

2022-09-26 Thread lihan
This is an automated email from the ASF dual-hosted git repository.

lihan pushed a commit to branch 8.5.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/8.5.x by this push:
 new d22be4e016 Remove meaningless code.
d22be4e016 is described below

commit d22be4e016d1afb715a6576297f9f04b11b33380
Author: lihan 
AuthorDate: Tue Sep 27 11:25:24 2022 +0800

Remove meaningless code.
---
 java/org/apache/tomcat/util/threads/TaskQueue.java | 1 -
 1 file changed, 1 deletion(-)

diff --git a/java/org/apache/tomcat/util/threads/TaskQueue.java 
b/java/org/apache/tomcat/util/threads/TaskQueue.java
index cacb320d65..6b250ee9d3 100644
--- a/java/org/apache/tomcat/util/threads/TaskQueue.java
+++ b/java/org/apache/tomcat/util/threads/TaskQueue.java
@@ -34,7 +34,6 @@ public class TaskQueue extends LinkedBlockingQueue {
 
 private static final long serialVersionUID = 1L;
 protected static final StringManager sm = 
StringManager.getManager(TaskQueue.class);
-private static final int DEFAULT_FORCED_REMAINING_CAPACITY = -1;
 
 private transient volatile ThreadPoolExecutor parent = null;
 


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



[Bug 66277] New: The taglib file cannot be found with version 9.0.67

2022-09-26 Thread bugzilla
https://bz.apache.org/bugzilla/show_bug.cgi?id=66277

Bug ID: 66277
   Summary: The taglib file cannot be found with version 9.0.67
   Product: Tomcat 9
   Version: 9.0.67
  Hardware: PC
Status: NEW
  Severity: normal
  Priority: P2
 Component: Examples
  Assignee: dev@tomcat.apache.org
  Reporter: nanhao_...@126.com
  Target Milestone: -

Created attachment 38393
  --> https://bz.apache.org/bugzilla/attachment.cgi?id=38393&action=edit
codes

The file cannot be found with version 9.0.67, but it is possible to find it
with version 9.0.65,Runs in a docker environment.It is normal to use in version
9.0.65

-- 
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