You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by fh...@apache.org on 2006/03/03 00:17:00 UTC

svn commit: r382555 - in /tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes: group/GroupChannel.java io/ClusterData.java mcast/McastMember.java

Author: fhanik
Date: Thu Mar  2 15:16:56 2006
New Revision: 382555

URL: http://svn.apache.org/viewcvs?rev=382555&view=rev
Log:
more optimizations, no need to transmit the alive time with a package, the member is obviously alive. if we care how long, then we can get the data from the membership service

Modified:
    tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/group/GroupChannel.java
    tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/io/ClusterData.java
    tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/mcast/McastMember.java

Modified: tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/group/GroupChannel.java
URL: http://svn.apache.org/viewcvs/tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/group/GroupChannel.java?rev=382555&r1=382554&r2=382555&view=diff
==============================================================================
--- tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/group/GroupChannel.java (original)
+++ tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/group/GroupChannel.java Thu Mar  2 15:16:56 2006
@@ -124,8 +124,10 @@
             } else {
                 fwd = XByteBuffer.deserialize(msg.getMessage().getBytes());
             }
-            if ( channelListener != null && channelListener.accept(fwd,msg.getAddress())) 
-                channelListener.messageReceived(fwd,msg.getAddress());
+            //get the actual member with the correct alive time
+            Member source = msg.getAddress();
+            if ( channelListener != null && channelListener.accept(fwd,source)) 
+                channelListener.messageReceived(fwd,source);
         }catch ( Exception x ) {
             log.error("Unable to deserialize channel message.",x);
         }

Modified: tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/io/ClusterData.java
URL: http://svn.apache.org/viewcvs/tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/io/ClusterData.java?rev=382555&r1=382554&r2=382555&view=diff
==============================================================================
--- tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/io/ClusterData.java (original)
+++ tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/io/ClusterData.java Thu Mar  2 15:16:56 2006
@@ -154,7 +154,7 @@
      * @return byte[]
      */
     public byte[] getDataPackage()  {
-        byte[] addr = ((McastMember)address).getData();
+        byte[] addr = ((McastMember)address).getData(false);
         int length = 
             4 + //options
             8 + //timestamp  off=4

Modified: tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/mcast/McastMember.java
URL: http://svn.apache.org/viewcvs/tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/mcast/McastMember.java?rev=382555&r1=382554&r2=382555&view=diff
==============================================================================
--- tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/mcast/McastMember.java (original)
+++ tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/mcast/McastMember.java Thu Mar  2 15:16:56 2006
@@ -138,11 +138,17 @@
      * @throws Exception
      */
     public byte[] getData()  {
-        long alive=System.currentTimeMillis()-getServiceStartTime();
-        
+        return getData(true);
+    }
+    public byte[] getData(boolean getalive)  {
         //look in cache first
         if ( dataPkg!=null ) {
-            XByteBuffer.toBytes((long)alive,dataPkg,0);
+            if ( getalive ) {
+                //you'd be surprised, but System.currentTimeMillis
+                //shows up on the profiler
+                long alive=System.currentTimeMillis()-getServiceStartTime();
+                XByteBuffer.toBytes( (long) alive, dataPkg, 0);
+            }
             return dataPkg;
         }
         
@@ -152,9 +158,11 @@
         //host - 4 bytes
         //dlen - 4 bytes
         //domain - dlen bytes
+        
         byte[] domaind = this.domain;
         byte[] addr = host;
         byte[] data = new byte[8+4+addr.length+4+domaind.length];
+        long alive=System.currentTimeMillis()-getServiceStartTime();
         
         
         //reduce byte copying
@@ -173,6 +181,7 @@
         
         System.arraycopy(domaind,0,data,20,domaind.length);
         dataPkg = data;
+        System.out.println("McastMember.getData all the way");
         return data;
     }
     /**



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