This is an automated email from the ASF dual-hosted git repository.
rmaucher pushed a change to branch 11.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git
from 677e69a178 Remove the placeholder from the http.403 message of the
filters package which was rendered literally in the non-HTTP deny response of
RequestFilter since no argument was ever provided
new 190d39027d Replicate SSO session key set changes from removeSession()
and sessionChangedId() in ClusterSingleSignOn so SSO entries are deregistered
on all nodes when the last associated session expires
new 5486d107bd Guard ClusterSingleSignOn.stopInternal() against a
ClassCastException when the ReplicatedMap was never created after a failed start
new f3da7f932a Skip auto-assigned-port connector thread pool MBeans in
CollectedInfo since their name carries a name index rather than a port
new d5efc9a306 Bound connect and read operations in TcpSender with
timeouts since the heartbeat runs on the shared server utility executor, and
close connections on read failure
new be96f699a3 Keep existing proxy connections in TcpSender.init when the
proxy list has not changed since the heartbeat runs init on every periodic
event and closing connections there defeated the keep-alive design
new d4f67ba241 Close the multicast socket in MultiCastSender when socket
setup fails after creation to avoid leaking one socket per heartbeat and
validate the TTL range in HeartbeatListener
new 0509e4445a Move attributes set during web application startup into the
replicated attribute map when it is installed in ReplicatedContext so they are
replicated to the other nodes
new 8c20da399a Fire ServletContextAttributeListener events for attributes
stored in the local map of a ReplicatedContext by extracting the event firing
logic of ApplicationContext into overridable hooks
new d3f1c40a3d Make MultiEnumeration.nextElement throw
NoSuchElementException when exhausted and report attribute names present in
both stores only once
new 9f740f8f48 Correct the calculation of the total number of fragment
messages in FileMessageFactory which declared one message too many for files
whose size is an exact multiple of the fragment size, so WAR deployments via
FarmWarDeployer never completed for those files
new 8135302139 Synchronize FileMessageFactory.isValid() with the write
path and remove expired factories by instance to avoid racing with in-flight
transfers
new 7b8d347cce Use a concurrent map for WarWatcher.currentStatus since
clear() may run on the stop thread while check() iterates the map on the
container background thread
new 3857362577 Remove completed file factories by instance in
FarmWarDeployer to avoid evicting a freshly created factory for a new transfer
of the same WAR
new fcfb112b42 Use REPLACE_EXISTING when moving a received WAR into place
in FarmWarDeployer since the delete of an old WAR with the same name may have
failed
new 42a4778195 Avoid logging a spurious delete failure for a context.xml
that never existed and log a warning when a cluster undeploy targets a context
that is not present on the node in FarmWarDeployer
new 415dabf56d Log a clear configuration error and disable watching when
FarmWarDeployer has watchEnabled set without a watchDir rather than failing
with a NullPointerException on start
new f5bfb5096f Capture and send the final session delta in
DeltaSession.expire() before acquiring the session monitor to avoid a lock
order inversion against the delta lock
new af7d5571e6 Reset noContextManagerReceived in
DeltaManager.getAllClusterSessions() alongside stateTransferred so that a
repeated state transfer does not exit immediately on a stale response
new c76895244a Compare type and action as well as name when de-duplicating
DeltaRequest actions so that distinct changes sharing a name, such as an
attribute and a note, are all replicated, and recycle the evicted action back
to the pool
new d26b17df8d Make hasMembers volatile so that membership changes made on
the tribes membership thread are visible to the request threads that read it
new 55c903e755 Snapshot the request counter in
ReplicationValve.updateStats() and guard against zero so that a concurrent
resetStatistics() cannot cause a division by zero
new c7688deb74 Fire the SEND_MESSAGE_FAILURE_EVENT lifecycle event with
the failing message, destination and exception from SimpleTcpCluster.send()
when notifyLifecycleListenerOnFailure is enabled, making the previously
declared but never fired event work as documented
new 819e93a63a Make SimpleTcpCluster.stopInternal() cleanup robust: guard
each step so a channel stop failure cannot skip listener removal and cluster
valve unregistration, and unregister the MBeans of all cluster members from the
member name map on stop
new b49da4a163 Name the fallback manager created by
SimpleTcpCluster.createManager() when cloning the manager template fails so
that its replication messages carry a context name and are not routed to every
context on the receiving nodes
The 24 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.../apache/catalina/core/ApplicationContext.java | 31 ++++--
.../ha/authenticator/ClusterSingleSignOn.java | 27 +++++-
.../apache/catalina/ha/backend/CollectedInfo.java | 8 ++
.../catalina/ha/backend/HeartbeatListener.java | 5 +
.../catalina/ha/backend/LocalStrings.properties | 1 +
.../catalina/ha/backend/MultiCastSender.java | 3 +
java/org/apache/catalina/ha/backend/TcpSender.java | 54 +++++++++--
.../catalina/ha/context/ReplicatedContext.java | 40 ++++++--
.../apache/catalina/ha/deploy/FarmWarDeployer.java | 67 ++++++++-----
.../catalina/ha/deploy/FileMessageFactory.java | 6 +-
.../catalina/ha/deploy/LocalStrings.properties | 2 +
java/org/apache/catalina/ha/deploy/WarWatcher.java | 8 +-
.../apache/catalina/ha/session/DeltaManager.java | 4 +
.../apache/catalina/ha/session/DeltaRequest.java | 25 +++--
.../apache/catalina/ha/session/DeltaSession.java | 29 ++++--
.../apache/catalina/ha/tcp/ReplicationValve.java | 11 ++-
.../apache/catalina/ha/tcp/SimpleTcpCluster.java | 34 ++++++-
.../catalina/ha/deploy/TestFileMessageFactory.java | 108 +++++++++++++++++++++
.../catalina/ha/session/TestDeltaRequest.java | 25 +++++
webapps/docs/changelog.xml | 33 +++++++
20 files changed, 444 insertions(+), 77 deletions(-)
create mode 100644
test/org/apache/catalina/ha/deploy/TestFileMessageFactory.java
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]