You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by az...@apache.org on 2008/01/10 06:55:54 UTC
svn commit: r610685 - in /webservices/axis2/trunk/java/modules:
clustering/src/org/apache/axis2/clustering/tribes/
clustering/test/org/apache/axis2/clustering/ kernel/conf/
kernel/src/org/apache/axis2/clustering/context/
Author: azeez
Date: Wed Jan 9 21:55:53 2008
New Revision: 610685
URL: http://svn.apache.org/viewvc?rev=610685&view=rev
Log:
Added maxRetries setting
Modified:
webservices/axis2/trunk/java/modules/clustering/src/org/apache/axis2/clustering/tribes/ChannelListener.java
webservices/axis2/trunk/java/modules/clustering/src/org/apache/axis2/clustering/tribes/ChannelSender.java
webservices/axis2/trunk/java/modules/clustering/src/org/apache/axis2/clustering/tribes/TribesClusterManager.java
webservices/axis2/trunk/java/modules/clustering/test/org/apache/axis2/clustering/ClusterManagerTestCase.java
webservices/axis2/trunk/java/modules/kernel/conf/axis2.xml
webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/clustering/context/ContextManager.java
Modified: webservices/axis2/trunk/java/modules/clustering/src/org/apache/axis2/clustering/tribes/ChannelListener.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/clustering/src/org/apache/axis2/clustering/tribes/ChannelListener.java?rev=610685&r1=610684&r2=610685&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/clustering/src/org/apache/axis2/clustering/tribes/ChannelListener.java (original)
+++ webservices/axis2/trunk/java/modules/clustering/src/org/apache/axis2/clustering/tribes/ChannelListener.java Wed Jan 9 21:55:53 2008
@@ -99,10 +99,21 @@
this.configurationContext = configurationContext;
}
+ /**
+ * Invoked by the channel to determine if the listener will process this message or not.
+ * @param msg Serializable
+ * @param sender Member
+ * @return boolean
+ */
public boolean accept(Serializable msg, Member sender) {
return true;
}
+ /**
+ * Receive a message from the channel
+ * @param msg Serializable
+ * @param sender - the source of the message
+ */
public void messageReceived(Serializable msg, Member sender) {
try {
AxisConfiguration configuration = configurationContext.getAxisConfiguration();
Modified: webservices/axis2/trunk/java/modules/clustering/src/org/apache/axis2/clustering/tribes/ChannelSender.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/clustering/src/org/apache/axis2/clustering/tribes/ChannelSender.java?rev=610685&r1=610684&r2=610685&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/clustering/src/org/apache/axis2/clustering/tribes/ChannelSender.java (original)
+++ webservices/axis2/trunk/java/modules/clustering/src/org/apache/axis2/clustering/tribes/ChannelSender.java Wed Jan 9 21:55:53 2008
@@ -61,16 +61,14 @@
log.error(message, e);
throw new ClusteringFault(message, e);
} catch (ChannelException e) {
- ChannelException.FaultyMember[] faultyMembers = e.getFaultyMembers();
- for (int i = 0; i < faultyMembers.length; i++) {
- ChannelException.FaultyMember faultyMember = faultyMembers[i];
- Member member = faultyMember.getMember();
- log.error("Member " + TribesUtil.getHost(member) + " is faulty. Cause " +
- faultyMember.getCause(), faultyMember.getCause());
- if (!(e.getCause() instanceof java.net.ConnectException)) { // If it is not a connection exception, we try to resend the message
- sendToMember(msg, member);
- }
- }
+ log.error("Could not send message to some members", e);
+// ChannelException.FaultyMember[] faultyMembers = e.getFaultyMembers();
+// for (int i = 0; i < faultyMembers.length; i++) {
+// ChannelException.FaultyMember faultyMember = faultyMembers[i];
+// Member member = faultyMember.getMember();
+// log.error("Member " + TribesUtil.getHost(member) + " is faulty. Cause " +
+// faultyMember.getCause(), faultyMember.getCause());
+// }
} catch (Exception e) {
String message = "Error sending command message : " + msg +
". Reason " + e.getMessage();
@@ -118,12 +116,13 @@
log.error(message, e);
throw new ClusteringFault(message, e);
} catch (ChannelException e) {
- ChannelException.FaultyMember[] faultyMembers = e.getFaultyMembers();
- log.error("Member " + TribesUtil.getHost(member) + " is faulty. Cause " +
- faultyMembers[0].getCause(), faultyMembers[0].getCause());
- if (!(e.getCause() instanceof java.net.ConnectException)) { // If it is not a connection exception, we try to resend the message
- sendToMember(cmd, member);
- }
+ log.error("Could not send message to " + TribesUtil.getHost(member));
+// ChannelException.FaultyMember[] faultyMembers = e.getFaultyMembers();
+// log.error("Member " + TribesUtil.getHost(member) + " is faulty. Cause " +
+// faultyMembers[0].getCause(), faultyMembers[0].getCause());
+// if (!(e.getCause() instanceof java.net.ConnectException)) { // If it is not a connection exception, we try to resend the message
+// sendToMember(cmd, member);
+// }
} catch (Exception e) {
String message = "Could not send message to " + TribesUtil.getHost(member) +
". Reason " + e.getMessage();
Modified: webservices/axis2/trunk/java/modules/clustering/src/org/apache/axis2/clustering/tribes/TribesClusterManager.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/clustering/src/org/apache/axis2/clustering/tribes/TribesClusterManager.java?rev=610685&r1=610684&r2=610685&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/clustering/src/org/apache/axis2/clustering/tribes/TribesClusterManager.java (original)
+++ webservices/axis2/trunk/java/modules/clustering/src/org/apache/axis2/clustering/tribes/TribesClusterManager.java Wed Jan 9 21:55:53 2008
@@ -47,7 +47,9 @@
import org.apache.catalina.tribes.group.GroupChannel;
import org.apache.catalina.tribes.group.interceptors.DomainFilterInterceptor;
import org.apache.catalina.tribes.group.interceptors.TcpFailureDetector;
+import org.apache.catalina.tribes.group.interceptors.OrderInterceptor;
import org.apache.catalina.tribes.transport.ReceiverBase;
+import org.apache.catalina.tribes.transport.ReplicationTransmitter;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -133,7 +135,14 @@
controlCmdProcessor.setChannelSender(channelSender);
channel = new GroupChannel();
-
+ // Set the maximum number of retries, if message sending to a particular node fails
+ Parameter maxRetriesParam = getParameter("maxRetries");
+ int maxRetries = 10;
+ if (maxRetriesParam != null) {
+ maxRetries = Integer.parseInt((String) maxRetriesParam.getValue());
+ }
+ ((ReplicationTransmitter) channel.getChannelSender()).
+ getTransport().setMaxRetryAttempts(maxRetries);
// Set the IP address that will be advertised by this node
String localIP = System.getProperty(ClusteringConstants.LOCAL_IP_ADDRESS);
@@ -175,6 +184,9 @@
mcastProps.setProperty("mcastFrequency", "500");
mcastProps.setProperty("tcpListenPort", "4000");
mcastProps.setProperty("tcpListenHost", "127.0.0.1");*/
+
+// OrderInterceptor orderInterceptor = new OrderInterceptor();
+
TcpFailureDetector tcpFailureDetector = new TcpFailureDetector();
tcpFailureDetector.setPrevious(dfi);
Modified: webservices/axis2/trunk/java/modules/clustering/test/org/apache/axis2/clustering/ClusterManagerTestCase.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/clustering/test/org/apache/axis2/clustering/ClusterManagerTestCase.java?rev=610685&r1=610684&r2=610685&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/clustering/test/org/apache/axis2/clustering/ClusterManagerTestCase.java (original)
+++ webservices/axis2/trunk/java/modules/clustering/test/org/apache/axis2/clustering/ClusterManagerTestCase.java Wed Jan 9 21:55:53 2008
@@ -95,10 +95,10 @@
System.setProperty(ClusteringConstants.LOCAL_IP_ADDRESS, HttpUtils.getIpAddress());
try {
clusterManager1.init();
- System.out.println("############ ClusterManager-1 successfully initialized");
+ System.out.println("ClusterManager-1 successfully initialized");
System.out.println("*** PLEASE IGNORE THE java.net.ConnectException STACKTRACES. THIS IS EXPECTED ***");
clusterManager2.init();
- System.out.println("############ ClusterManager-2 successfully initialized");
+ System.out.println("ClusterManager-2 successfully initialized");
} catch (ClusteringFault e) {
String message =
"Could not initialize ClusterManagers. Please check the network connection";
Modified: webservices/axis2/trunk/java/modules/kernel/conf/axis2.xml
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/conf/axis2.xml?rev=610685&r1=610684&r2=610685&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/conf/axis2.xml (original)
+++ webservices/axis2/trunk/java/modules/kernel/conf/axis2.xml Wed Jan 9 21:55:53 2008
@@ -351,6 +351,7 @@
<parameter name="param1">value1</parameter>
<parameter name="domain">apache.axis2.domain</parameter>
<parameter name="synchronizeAll">true</parameter>
+ <parameter name="maxRetries">10</parameter>
<configurationManager class="org.apache.axis2.cluster.configuration.TribesConfigurationManager">
<listener class="org.apache.axis2.cluster.configuration.DefaultConfigurationManagerListener"/>
</configurationManager>
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/clustering/context/ContextManager.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/clustering/context/ContextManager.java?rev=610685&r1=610684&r2=610685&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/clustering/context/ContextManager.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/clustering/context/ContextManager.java Wed Jan 9 21:55:53 2008
@@ -63,7 +63,7 @@
String updateContexts(AbstractContext[] contexts) throws ClusteringFault;
/**
- * This method is called when a new {@link AbstractContext} is removed from the system
+ * This method is called when {@link AbstractContext} is removed from the system
*
* @param context The AbstractContext to be removed
* @return The UUID of the message that was sent to the group communications framework
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org