This is an automated email from the ASF dual-hosted git repository.
rmaucher pushed a commit to branch 11.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git
The following commit(s) were added to refs/heads/11.0.x by this push:
new ee62476d1f Remove patch file
ee62476d1f is described below
commit ee62476d1fb2470eb8e98172c09ccb5068f94112
Author: remm <[email protected]>
AuthorDate: Wed Jun 10 16:50:48 2026 +0200
Remove patch file
---
threadpool.patch | 63 --------------------------------------------------------
1 file changed, 63 deletions(-)
diff --git a/threadpool.patch b/threadpool.patch
deleted file mode 100644
index 97b3afcecc..0000000000
--- a/threadpool.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-diff --git
a/java/org/apache/tomcat/util/descriptor/web/SecurityConstraint.java
b/java/org/apache/tomcat/util/descriptor/web/SecurityConstraint.java
-index 0451582..785a352 100644
---- a/java/org/apache/tomcat/util/descriptor/web/SecurityConstraint.java
-+++ b/java/org/apache/tomcat/util/descriptor/web/SecurityConstraint.java
-@@ -610,7 +610,7 @@
- }
-
- if (create) {
-- collection.addPattern(urlPattern);
-+ collection.addPatternDecoded(urlPattern);
- constraint.addCollection(collection);
- return constraint;
- }
-diff --git a/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java
b/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java
-index 6c61572..3a6636f 100644
---- a/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java
-+++ b/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java
-@@ -662,6 +662,11 @@
- * ScheduledThreadPoolExecutor.
- */
- final void reject(Runnable command) {
-+ // Decrement before calling the handler so non-throwing handlers
-+ // (DiscardPolicy, CallerRunsPolicy, DiscardOldestPolicy) don't leak
-+ // submittedCount. If the handler throws, the decrement is accounted
-+ // for in the catch block of execute().
-+ submittedCount.decrementAndGet();
- handler.rejectedExecution(command, this);
- }
-
-@@ -1102,11 +1107,13 @@
- // TaskQueue) in some tasks being rejected rather than queued.
- // If this happens, add them to the queue.
- if (!queue.force(command)) {
-- submittedCount.decrementAndGet();
- throw new
RejectedExecutionException(sm.getString("threadPoolExecutor.queueFull"));
- }
-+ // Task was force-queued and will run through a worker, so
-+ // afterExecute() will decrement. Re-increment to cancel the
-+ // decrement that was done in reject() before the handler
threw.
-+ submittedCount.incrementAndGet();
- } else {
-- submittedCount.decrementAndGet();
- throw rx;
- }
- }
-diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml
-index 24b0d72..4e92dd0 100644
---- a/webapps/docs/changelog.xml
-+++ b/webapps/docs/changelog.xml
-@@ -415,6 +415,12 @@
- <code>isTrailerFieldsReady</code> was always returning
- <code>true</code>. (remm)
- </fix>
-+ <fix>
-+ Fix <code>submittedCount</code> leak with the thread pool when using
-+ non default <code>RejectedExecutionHandler</code>. The default handler
-+ is throwing an exception on rejection and was processed properly.
-+ (remm)
-+ </fix>
- </changelog>
- </subsection>
- <subsection name="Jasper">
-
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]