Author: rjung
Date: Thu Jun 29 13:54:33 2006
New Revision: 418134

URL: http://svn.apache.org/viewvc?rev=418134&view=rev
Log:
BZ 39933: Fixed division by zero when statistics are calculated,
but no messages have been transmitted.

Modified:
    
tomcat/container/tc5.5.x/modules/cluster/src/share/org/apache/catalina/cluster/session/SimpleTcpReplicationManager.java
    
tomcat/container/tc5.5.x/modules/cluster/src/share/org/apache/catalina/cluster/tcp/ClusterReceiverBase.java
    
tomcat/container/tc5.5.x/modules/cluster/src/share/org/apache/catalina/cluster/tcp/DataSender.java
    
tomcat/container/tc5.5.x/modules/cluster/src/share/org/apache/catalina/cluster/tcp/ReplicationTransmitter.java
    
tomcat/container/tc5.5.x/modules/cluster/src/share/org/apache/catalina/cluster/util/FastQueue.java

Modified: 
tomcat/container/tc5.5.x/modules/cluster/src/share/org/apache/catalina/cluster/session/SimpleTcpReplicationManager.java
URL: 
http://svn.apache.org/viewvc/tomcat/container/tc5.5.x/modules/cluster/src/share/org/apache/catalina/cluster/session/SimpleTcpReplicationManager.java?rev=418134&r1=418133&r2=418134&view=diff
==============================================================================
--- 
tomcat/container/tc5.5.x/modules/cluster/src/share/org/apache/catalina/cluster/session/SimpleTcpReplicationManager.java
 (original)
+++ 
tomcat/container/tc5.5.x/modules/cluster/src/share/org/apache/catalina/cluster/session/SimpleTcpReplicationManager.java
 Thu Jun 29 13:54:33 2006
@@ -294,7 +294,7 @@
                         long interval = session.getMaxInactiveInterval();
                         long lastaccdist = System.currentTimeMillis() -
                             session.getLastAccessWasDistributed();
-                        if ( ((interval*1000) / lastaccdist)< 3 ) {
+                        if ( interval*1000 < 3 * lastaccdist ) {
                             SessionMessage accmsg = new 
SessionMessageImpl(name,
                                 SessionMessage.EVT_SESSION_ACCESSED,
                                 null,

Modified: 
tomcat/container/tc5.5.x/modules/cluster/src/share/org/apache/catalina/cluster/tcp/ClusterReceiverBase.java
URL: 
http://svn.apache.org/viewvc/tomcat/container/tc5.5.x/modules/cluster/src/share/org/apache/catalina/cluster/tcp/ClusterReceiverBase.java?rev=418134&r1=418133&r2=418134&view=diff
==============================================================================
--- 
tomcat/container/tc5.5.x/modules/cluster/src/share/org/apache/catalina/cluster/tcp/ClusterReceiverBase.java
 (original)
+++ 
tomcat/container/tc5.5.x/modules/cluster/src/share/org/apache/catalina/cluster/tcp/ClusterReceiverBase.java
 Thu Jun 29 13:54:33 2006
@@ -261,14 +261,22 @@
      * @return Returns the avg receivedProcessingTime/nrOfMsgsReceived.
      */
     public double getAvgReceivedProcessingTime() {
-        return ((double)receivedProcessingTime) / nrOfMsgsReceived;
+        if ( nrOfMsgsReceived > 0 ) {
+            return ((double)receivedProcessingTime) / nrOfMsgsReceived;
+        } else {
+            return 0;
+        }
     }
 
     /**
      * @return Returns the avg totalReceivedBytes/nrOfMsgsReceived.
      */
     public long getAvgTotalReceivedBytes() {
-        return ((long)totalReceivedBytes) / nrOfMsgsReceived;
+        if ( nrOfMsgsReceived > 0 ) {
+            return ((long)totalReceivedBytes) / nrOfMsgsReceived;
+        } else {
+            return 0;
+        }
     }
 
     /**

Modified: 
tomcat/container/tc5.5.x/modules/cluster/src/share/org/apache/catalina/cluster/tcp/DataSender.java
URL: 
http://svn.apache.org/viewvc/tomcat/container/tc5.5.x/modules/cluster/src/share/org/apache/catalina/cluster/tcp/DataSender.java?rev=418134&r1=418133&r2=418134&view=diff
==============================================================================
--- 
tomcat/container/tc5.5.x/modules/cluster/src/share/org/apache/catalina/cluster/tcp/DataSender.java
 (original)
+++ 
tomcat/container/tc5.5.x/modules/cluster/src/share/org/apache/catalina/cluster/tcp/DataSender.java
 Thu Jun 29 13:54:33 2006
@@ -259,14 +259,22 @@
      * @return Returns the avg totalBytes/nrOfRequests.
      */
     public long getAvgMessageSize() {
-        return totalBytes / nrOfRequests;
+        if ( nrOfRequests > 0 ) {
+            return totalBytes / nrOfRequests;
+        } else {
+            return 0;
+        }
     }
 
     /**
      * @return Returns the avg processingTime/nrOfRequests.
      */
     public double getAvgProcessingTime() {
-        return ((double)processingTime) / nrOfRequests;
+        if ( nrOfRequests > 0 ) {
+            return ((double)processingTime) / nrOfRequests;
+        } else {
+            return 0;
+        }
     }
  
     /**
@@ -323,7 +331,11 @@
      * @return Returns the avg waitAckTime/nrOfRequests.
      */
     public double getAvgWaitAckTime() {
-        return ((double)waitAckTime) / nrOfRequests;
+        if ( nrOfRequests > 0 ) {
+            return ((double)waitAckTime) / nrOfRequests;
+        } else {
+            return 0;
+        }
     }
  
     /**

Modified: 
tomcat/container/tc5.5.x/modules/cluster/src/share/org/apache/catalina/cluster/tcp/ReplicationTransmitter.java
URL: 
http://svn.apache.org/viewvc/tomcat/container/tc5.5.x/modules/cluster/src/share/org/apache/catalina/cluster/tcp/ReplicationTransmitter.java?rev=418134&r1=418133&r2=418134&view=diff
==============================================================================
--- 
tomcat/container/tc5.5.x/modules/cluster/src/share/org/apache/catalina/cluster/tcp/ReplicationTransmitter.java
 (original)
+++ 
tomcat/container/tc5.5.x/modules/cluster/src/share/org/apache/catalina/cluster/tcp/ReplicationTransmitter.java
 Thu Jun 29 13:54:33 2006
@@ -214,7 +214,11 @@
      * @return Returns the avg processingTime/nrOfRequests.
      */
     public double getAvgProcessingTime() {
-        return ((double)processingTime) / nrOfRequests;
+        if ( nrOfRequests > 0 ) {
+            return ((double)processingTime) / nrOfRequests;
+        } else {
+            return 0;
+        }
     }
  
     /**

Modified: 
tomcat/container/tc5.5.x/modules/cluster/src/share/org/apache/catalina/cluster/util/FastQueue.java
URL: 
http://svn.apache.org/viewvc/tomcat/container/tc5.5.x/modules/cluster/src/share/org/apache/catalina/cluster/util/FastQueue.java?rev=418134&r1=418133&r2=418134&view=diff
==============================================================================
--- 
tomcat/container/tc5.5.x/modules/cluster/src/share/org/apache/catalina/cluster/util/FastQueue.java
 (original)
+++ 
tomcat/container/tc5.5.x/modules/cluster/src/share/org/apache/catalina/cluster/util/FastQueue.java
 Thu Jun 29 13:54:33 2006
@@ -262,7 +262,9 @@
     }
 
     public void setSampleInterval(int interval) {
-        sampleInterval = interval;
+        if ( interval > 0 ) {
+           sampleInterval = interval;
+        }
     }
 
     public long getAddCounter() {



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to