This is an automated email from the ASF dual-hosted git repository.

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

commit 547fb246149d828279cb7cdf7193165f7ef9985d
Author: Mark Thomas <ma...@apache.org>
AuthorDate: Wed May 22 12:07:35 2019 +0100

    Refactor #requestCompleted to re-use DeltaSession#getDiff()
---
 .../org/apache/catalina/ha/session/DeltaManager.java | 20 ++------------------
 1 file changed, 2 insertions(+), 18 deletions(-)

diff --git a/java/org/apache/catalina/ha/session/DeltaManager.java 
b/java/org/apache/catalina/ha/session/DeltaManager.java
index 29ed8d2..3ee3fbe 100644
--- a/java/org/apache/catalina/ha/session/DeltaManager.java
+++ b/java/org/apache/catalina/ha/session/DeltaManager.java
@@ -39,7 +39,6 @@ import org.apache.catalina.tribes.io.ReplicationStream;
 import org.apache.juli.logging.Log;
 import org.apache.juli.logging.LogFactory;
 import org.apache.tomcat.util.ExceptionUtils;
-import org.apache.tomcat.util.collections.SynchronizedStack;
 import org.apache.tomcat.util.res.StringManager;
 
 /**
@@ -966,8 +965,6 @@ public class DeltaManager extends ClusterManagerBase{
     public ClusterMessage requestCompleted(String sessionId, boolean expires) {
         DeltaSession session = null;
         SessionMessage msg = null;
-        SynchronizedStack<DeltaRequest> deltaRequestPool = 
getDeltaRequestPool();
-        DeltaRequest deltaRequest = null;
         try {
             session = (DeltaSession) findSession(sessionId);
             if (session == null) {
@@ -975,18 +972,11 @@ public class DeltaManager extends ClusterManagerBase{
                 // removed the session from the Manager.
                 return null;
             }
-            DeltaRequest newDeltaRequest = deltaRequestPool.pop();
-            if (newDeltaRequest == null) {
-                // Will be configured in replaceDeltaRequest()
-                newDeltaRequest = new DeltaRequest(null, isRecordAllActions());
-            }
-            deltaRequest = session.replaceDeltaRequest(newDeltaRequest);
-            if (deltaRequest.getSize() > 0) {
+            if (session.isDirty()) {
                 counterSend_EVT_SESSION_DELTA++;
-                byte[] data = deltaRequest.serialize();
                 msg = new SessionMessageImpl(getName(),
                                              SessionMessage.EVT_SESSION_DELTA,
-                                             data,
+                                             session.getDiff(),
                                              sessionId,
                                              sessionId + "-" + 
System.currentTimeMillis());
             }
@@ -994,12 +984,6 @@ public class DeltaManager extends ClusterManagerBase{
             
log.error(sm.getString("deltaManager.createMessage.unableCreateDeltaRequest",
                     sessionId), x);
             return null;
-        } finally {
-            if (deltaRequest != null) {
-                // Reset the instance before it is returned to the pool
-                deltaRequest.reset();
-                deltaRequestPool.push(deltaRequest);
-            }
         }
         if(msg == null) {
             if(!expires && !session.isPrimarySession()) {


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

Reply via email to