You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by sc...@apache.org on 2014/08/27 17:49:28 UTC

svn commit: r1620916 - in /tomcat/tc7.0.x/trunk: ./ java/org/apache/catalina/tribes/group/ java/org/apache/catalina/tribes/tipis/ java/org/apache/catalina/tribes/transport/bio/ java/org/apache/catalina/tribes/transport/nio/ java/org/apache/tomcat/util/...

Author: schultz
Date: Wed Aug 27 15:49:27 2014
New Revision: 1620916

URL: http://svn.apache.org/r1620916
Log:
Back-port 1620915
Add super.finalize to finalize() methods that were missing them.

Modified:
    tomcat/tc7.0.x/trunk/   (props changed)
    tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/RpcChannel.java
    tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java
    tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/transport/bio/MultipointBioSender.java
    tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/transport/nio/ParallelNioSender.java
    tomcat/tc7.0.x/trunk/java/org/apache/tomcat/util/net/NioBlockingSelector.java

Propchange: tomcat/tc7.0.x/trunk/
------------------------------------------------------------------------------
  Merged /tomcat/trunk:r1620915

Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/RpcChannel.java
URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/RpcChannel.java?rev=1620916&r1=1620915&r2=1620916&view=diff
==============================================================================
--- tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/RpcChannel.java (original)
+++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/RpcChannel.java Wed Aug 27 15:49:27 2014
@@ -175,8 +175,9 @@ public class RpcChannel implements Chann
     }
     
     @Override
-    public void finalize() {
+    public void finalize() throws Throwable {
         breakdown();
+        super.finalize();
     }
     
     @Override

Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java
URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java?rev=1620916&r1=1620915&r2=1620916&view=diff
==============================================================================
--- tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java (original)
+++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java Wed Aug 27 15:49:27 2014
@@ -338,11 +338,16 @@ public abstract class AbstractReplicated
     }
 
     public void breakdown() {
-        finalize();
+        // TODO: Invert the call semantics between between breakdown() and finalize()
+        try {
+            finalize();
+        } catch (Throwable t) {
+            log.error("Call to finalize() failed", t);
+        }
     }
 
     @Override
-    public void finalize() {
+    public void finalize() throws Throwable {
         if (this.rpcChannel != null) {
             this.rpcChannel.breakdown();
         }
@@ -358,6 +363,8 @@ public abstract class AbstractReplicated
         innerMap.clear();
         this.stateTransferred = false;
         this.externalLoaders = null;
+
+        super.finalize();
     }
 
     @Override

Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/transport/bio/MultipointBioSender.java
URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/transport/bio/MultipointBioSender.java?rev=1620916&r1=1620915&r2=1620916&view=diff
==============================================================================
--- tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/transport/bio/MultipointBioSender.java (original)
+++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/transport/bio/MultipointBioSender.java Wed Aug 27 15:49:27 2014
@@ -135,8 +135,9 @@ public class MultipointBioSender extends
     }
 
     @Override
-    public void finalize() {
+    public void finalize() throws Throwable {
         try {disconnect(); }catch ( Exception e){/* Ignore */}
+        super.finalize();
     }
 
 

Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/transport/nio/ParallelNioSender.java
URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/transport/nio/ParallelNioSender.java?rev=1620916&r1=1620915&r2=1620916&view=diff
==============================================================================
--- tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/transport/nio/ParallelNioSender.java (original)
+++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/transport/nio/ParallelNioSender.java Wed Aug 27 15:49:27 2014
@@ -291,7 +291,7 @@ public class ParallelNioSender extends A
     }
 
     @Override
-    public void finalize() {
+    public void finalize() throws Throwable {
         try {disconnect(); }catch ( Exception e){/*Ignore*/}
         try {
             selector.close();
@@ -300,6 +300,7 @@ public class ParallelNioSender extends A
                 log.debug("Failed to close selector", e);
             }
         }
+        super.finalize();
     }
 
     @Override

Modified: tomcat/tc7.0.x/trunk/java/org/apache/tomcat/util/net/NioBlockingSelector.java
URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/tomcat/util/net/NioBlockingSelector.java?rev=1620916&r1=1620915&r2=1620916&view=diff
==============================================================================
--- tomcat/tc7.0.x/trunk/java/org/apache/tomcat/util/net/NioBlockingSelector.java (original)
+++ tomcat/tc7.0.x/trunk/java/org/apache/tomcat/util/net/NioBlockingSelector.java Wed Aug 27 15:49:27 2014
@@ -405,12 +405,14 @@ public class NioBlockingSelector {
         SelectionKey key = null;
 
         @Override
-        public void finalize() {
+        public void finalize() throws Throwable {
             if (key!=null && key.isValid()) {
                 log.warn("Possible key leak, cancelling key in the finalizer.");
                 try {key.cancel();}catch (Exception ignore){}
             }
             key = null;
+            
+            super.finalize();
         }
     }
 



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