Author: fhanik
Date: Wed Mar 15 13:57:32 2006
New Revision: 386177

URL: http://svn.apache.org/viewcvs?rev=386177&view=rev
Log:
Fixed sender state

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/XByteBuffer.java
    
tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/tcp/SenderState.java
    
tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/tcp/bio/BioSender.java
    
tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/tcp/bio/MultipointBioSender.java
    
tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/tcp/nio/ParallelNioSender.java
    
tomcat/container/tc5.5.x/modules/groupcom/test/org/apache/catalina/tribes/demos/LoadTest.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=386177&r1=386176&r2=386177&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
 Wed Mar 15 13:57:32 2006
@@ -17,6 +17,7 @@
 
 
 import java.io.Serializable;
+import java.util.ArrayList;
 import java.util.Iterator;
 
 import org.apache.catalina.tribes.ByteMessage;
@@ -32,8 +33,6 @@
 import org.apache.catalina.tribes.MembershipService;
 import org.apache.catalina.tribes.io.ClusterData;
 import org.apache.catalina.tribes.io.XByteBuffer;
-import java.util.ArrayList;
-import org.apache.catalina.tribes.tcp.*;
 
 /**
  * The GroupChannel manages the replication channel. It coordinates
@@ -136,7 +135,7 @@
                 if (channelListener != null && channelListener.accept(fwd, 
source))
                     channelListener.messageReceived(fwd, source);
             }//for
-        }catch ( Exception x ) {
+        } 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/XByteBuffer.java
URL: 
http://svn.apache.org/viewcvs/tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/io/XByteBuffer.java?rev=386177&r1=386176&r2=386177&view=diff
==============================================================================
--- 
tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/io/XByteBuffer.java
 (original)
+++ 
tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/io/XByteBuffer.java
 Wed Mar 15 13:57:32 2006
@@ -519,7 +519,7 @@
     }
     
     public static Serializable deserialize(byte[] data, int offset, int 
length) 
-            throws IOException, ClassNotFoundException, ClassCastException {
+             throws IOException, ClassNotFoundException, ClassCastException {
         Object message = null;
         if (data != null) {
             InputStream  instream = new 
ByteArrayInputStream(data,offset,length);

Modified: 
tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/tcp/SenderState.java
URL: 
http://svn.apache.org/viewcvs/tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/tcp/SenderState.java?rev=386177&r1=386176&r2=386177&view=diff
==============================================================================
--- 
tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/tcp/SenderState.java
 (original)
+++ 
tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/tcp/SenderState.java
 Wed Mar 15 13:57:32 2006
@@ -79,6 +79,10 @@
         this.state = state;
     }
     
+    /**
+     * 
+     * @return boolean
+     */
     public boolean isSuspect() {
         return state == SUSPECT;
     }

Modified: 
tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/tcp/bio/BioSender.java
URL: 
http://svn.apache.org/viewcvs/tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/tcp/bio/BioSender.java?rev=386177&r1=386176&r2=386177&view=diff
==============================================================================
--- 
tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/tcp/bio/BioSender.java
 (original)
+++ 
tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/tcp/bio/BioSender.java
 Wed Mar 15 13:57:32 2006
@@ -490,7 +490,7 @@
             }
         } catch (IOException x) {
             String errmsg = sm.getString("IDataSender.ack.missing", 
getAddress(),new Integer(socket.getLocalPort()), new Long(this.timeout));
-            if ( !SenderState.getSenderState(member).isSuspect() ) {
+            if ( SenderState.getSenderState(member).isReady() ) {
                 SenderState.getSenderState(member).setSuspect();
                 if ( log.isWarnEnabled() ) log.warn(errmsg, x);
             } else {

Modified: 
tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/tcp/bio/MultipointBioSender.java
URL: 
http://svn.apache.org/viewcvs/tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/tcp/bio/MultipointBioSender.java?rev=386177&r1=386176&r2=386177&view=diff
==============================================================================
--- 
tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/tcp/bio/MultipointBioSender.java
 (original)
+++ 
tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/tcp/bio/MultipointBioSender.java
 Wed Mar 15 13:57:32 2006
@@ -1,6 +1,6 @@
 package org.apache.catalina.tribes.tcp.bio;
 
-import java.net.InetAddress;
+import java.io.IOException;
 import java.util.HashMap;
 import java.util.Map;
 
@@ -10,8 +10,6 @@
 import org.apache.catalina.tribes.io.ClusterData;
 import org.apache.catalina.tribes.io.XByteBuffer;
 import org.apache.catalina.tribes.tcp.MultiPointSender;
-import org.apache.catalina.tribes.tcp.SenderState;
-import java.io.IOException;
 
 /**
  * <p>Title: </p>

Modified: 
tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/tcp/nio/ParallelNioSender.java
URL: 
http://svn.apache.org/viewcvs/tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/tcp/nio/ParallelNioSender.java?rev=386177&r1=386176&r2=386177&view=diff
==============================================================================
--- 
tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/tcp/nio/ParallelNioSender.java
 (original)
+++ 
tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/tcp/nio/ParallelNioSender.java
 Wed Mar 15 13:57:32 2006
@@ -29,6 +29,7 @@
 import org.apache.catalina.tribes.io.ClusterData;
 import org.apache.catalina.tribes.io.XByteBuffer;
 import org.apache.catalina.tribes.tcp.MultiPointSender;
+import org.apache.catalina.tribes.tcp.SenderState;
 
 /**
  * <p>Title: </p>
@@ -43,6 +44,10 @@
  * @version 1.0
  */
 public class ParallelNioSender implements MultiPointSender {
+    
+    protected static org.apache.commons.logging.Log log = 
org.apache.commons.logging.LogFactory.getLog(ParallelNioSender.class);
+    
+    
     protected long timeout = 15000;
     protected long selectTimeout = 1000; 
     protected boolean waitForAck = false;
@@ -112,8 +117,14 @@
                     sender.reset();
                     completed++;
                     sender.setComplete(true);
+                    
SenderState.getSenderState(sender.getDestination()).setReady();
                 }//end if
             } catch (Exception x) {
+                SenderState state = 
SenderState.getSenderState(sender.getDestination());
+                if ( state.isReady() ) {
+                    log.warn("Member send is failing 
for:"+sender.getDestination().getName()+"; Setting to suspect.");
+                }
+                state.setSuspect();
                 byte[] data = sender.getMessage();
                 int attempt = sender.getAttempt()+1;
                 if ( sender.getAttempt() >= maxAttempts && maxAttempts>0 ) {
@@ -123,7 +134,7 @@
                         sender.setAttempt(attempt);
                         sender.setMessage(data);
                     }catch ( Exception ignore){
-                        //dont report the error on a resend
+                        state.setFailing();
                     }
                 } else {
                     ChannelException cx = new ChannelException(x);

Modified: 
tomcat/container/tc5.5.x/modules/groupcom/test/org/apache/catalina/tribes/demos/LoadTest.java
URL: 
http://svn.apache.org/viewcvs/tomcat/container/tc5.5.x/modules/groupcom/test/org/apache/catalina/tribes/demos/LoadTest.java?rev=386177&r1=386176&r2=386177&view=diff
==============================================================================
--- 
tomcat/container/tc5.5.x/modules/groupcom/test/org/apache/catalina/tribes/demos/LoadTest.java
 (original)
+++ 
tomcat/container/tc5.5.x/modules/groupcom/test/org/apache/catalina/tribes/demos/LoadTest.java
 Wed Mar 15 13:57:32 2006
@@ -160,7 +160,8 @@
 
             }
         }catch ( Exception x ) {
-            x.printStackTrace();
+            log.error("Captured error while sending:"+x.getMessage());
+            if ( debug ) log.error("",x);
             printSendStats(LoadTest.messagesSent, LoadTest.messageSize);
         }
         endTest();



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

Reply via email to