This is an automated email from the ASF dual-hosted git repository.
remm 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 2470b788c6 Fix resetting cross context sessions
2470b788c6 is described below
commit 2470b788c6fc8c5b29538e5b97513a428179981a
Author: remm <[email protected]>
AuthorDate: Wed Mar 19 19:57:08 2025 +0100
Fix resetting cross context sessions
Apparent logic error in the loop.
---
java/org/apache/catalina/ha/tcp/ReplicationValve.java | 12 +++---------
webapps/docs/changelog.xml | 8 ++++++++
2 files changed, 11 insertions(+), 9 deletions(-)
diff --git a/java/org/apache/catalina/ha/tcp/ReplicationValve.java
b/java/org/apache/catalina/ha/tcp/ReplicationValve.java
index 5e2257f74c..1872c95bf3 100644
--- a/java/org/apache/catalina/ha/tcp/ReplicationValve.java
+++ b/java/org/apache/catalina/ha/tcp/ReplicationValve.java
@@ -18,7 +18,6 @@ package org.apache.catalina.ha.tcp;
import java.io.IOException;
import java.util.ArrayList;
-import java.util.Iterator;
import java.util.List;
import java.util.concurrent.atomic.AtomicLong;
import java.util.concurrent.atomic.LongAdder;
@@ -421,15 +420,10 @@ public class ReplicationValve extends ValveBase
implements ClusterValve {
}
if (isCrossContext) {
List<DeltaSession> sessions = crossContextSessions.get();
- if (sessions != null && sessions.size() > 0) {
- Iterator<DeltaSession> iter = sessions.iterator();
- for (; iter.hasNext();) {
- Session session = iter.next();
+ if (sessions != null) {
+ for (DeltaSession session : sessions) {
resetDeltaRequest(session);
- if (session instanceof DeltaSession) {
- ((DeltaSession)
contextSession).setPrimarySession(true);
- }
-
+ session.setPrimarySession(true);
}
}
}
diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml
index b82b17a6c0..4ddd23eb60 100644
--- a/webapps/docs/changelog.xml
+++ b/webapps/docs/changelog.xml
@@ -157,6 +157,14 @@
</scode>
</changelog>
</subsection>
+ <subsection name="Cluster">
+ <changelog>
+ <fix>
+ Fix resetting cross context sessions in the
+ <code>ReplicationValve</code>. (remm)
+ </fix>
+ </changelog>
+ </subsection>
<subsection name="Web applications">
<changelog>
<add>
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]