You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by db...@apache.org on 2005/11/22 10:16:08 UTC
svn commit: r348133 - in
/geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent:
AbstractContinuumBuildAgent.java BuildResultsContinuumAgent.java
PingMonitorAgent.java
Author: dblevins
Date: Tue Nov 22 01:16:01 2005
New Revision: 348133
URL: http://svn.apache.org/viewcvs?rev=348133&view=rev
Log:
Strengthened the algorithm for pulling results messages.
Increased the ping delay.
Lowered the log level for the ping monitor
Modified:
geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/AbstractContinuumBuildAgent.java
geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/BuildResultsContinuumAgent.java
geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/PingMonitorAgent.java
Modified: geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/AbstractContinuumBuildAgent.java
URL: http://svn.apache.org/viewcvs/geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/AbstractContinuumBuildAgent.java?rev=348133&r1=348132&r2=348133&view=diff
==============================================================================
--- geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/AbstractContinuumBuildAgent.java (original)
+++ geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/AbstractContinuumBuildAgent.java Tue Nov 22 01:16:01 2005
@@ -294,6 +294,7 @@
private final Session session;
private final MessageProducer producer;
private final Logger logger;
+ private int pingInterval = 1000*60*5; // five minutes
public Ping(Session session, Logger logger) throws JMSException {
this.session = session;
@@ -333,7 +334,7 @@
getLogger().warn("Ping thread killed ("+e.getMessage()+")");
}
try {
- Thread.sleep(60000);
+ Thread.sleep(pingInterval);
} catch (InterruptedException e) {
}
}
Modified: geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/BuildResultsContinuumAgent.java
URL: http://svn.apache.org/viewcvs/geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/BuildResultsContinuumAgent.java?rev=348133&r1=348132&r2=348133&view=diff
==============================================================================
--- geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/BuildResultsContinuumAgent.java (original)
+++ geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/BuildResultsContinuumAgent.java Tue Nov 22 01:16:01 2005
@@ -20,6 +20,7 @@
import javax.jms.MessageConsumer;
import javax.jms.Message;
import javax.jms.ObjectMessage;
+import javax.jms.JMSException;
import java.util.Map;
/**
@@ -44,47 +45,55 @@
getLogger().debug("coordinatorUrl " + coordinatorUrl);
getLogger().debug("buildResultsTopic " + buildResultsTopic);
- // Create a Session
- Session session = getSession();
+ while (isRunning()) {
+ // Create a Session
+ Client client = getClient();
- MessageConsumer resultsConsumer = createConsumer(session, buildResultsTopic);
+ Session session = client.getSession();
- getLogger().info("Continuum Build Agent started and waiting for work.");
+ MessageConsumer resultsConsumer = createConsumer(session, buildResultsTopic);
- while (isRunning()) {
- // Wait for a message
- Message message = resultsConsumer.receive(1000);
+ try {
+ consumeMessages(client, resultsConsumer);
+ } catch (JMSException e) {
+ getLogger().error("Agent recieved JMS Exception. ("+e.getMessage()+")");
+ }
+ }
- if (message == null){
+ } catch (Exception e) {
+ getLogger().error("Agent failed.", e);
+ }
+ }
- continue;
+ private void consumeMessages(Client client, MessageConsumer resultsConsumer) throws JMSException {
+ while (client.isConnected() && isRunning()) {
+ // Wait for a message
+ Message message = resultsConsumer.receive(1000);
- } else if (message instanceof ObjectMessage) {
+ if (message == null){
- try {
- getLogger().info("Message Received "+ message.getJMSMessageID() +" on "+ getConnection().getClientID()+":"+buildResultsTopic);
+ continue;
- ObjectMessage objectMessage = (ObjectMessage) message;
+ } else if (message instanceof ObjectMessage) {
- Map context = getMap(objectMessage, message);
+ try {
+ getLogger().info("Message Received "+ message.getJMSMessageID() +" on "+ getConnection().getClientID()+":"+buildResultsTopic);
- execute(context);
+ ObjectMessage objectMessage = (ObjectMessage) message;
- getLogger().info("Finished processing "+ message.getJMSMessageID());
+ Map context = getMap(objectMessage, message);
- } catch (Exception e) {
- getLogger().error("Failed Processing message "+message.getJMSMessageID());
- }
+ execute(context);
- } else {
- getLogger().warn("Agent received incorrect message type: "+message.getClass().getName());
+ getLogger().info("Finished processing "+ message.getJMSMessageID());
+
+ } catch (Exception e) {
+ getLogger().error("Failed Processing message "+message.getJMSMessageID());
}
- }
- resultsConsumer.close();
- session.close();
- } catch (Exception e) {
- getLogger().error("Agent failed.", e);
+ } else {
+ getLogger().warn("Agent received incorrect message type: "+message.getClass().getName());
+ }
}
}
Modified: geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/PingMonitorAgent.java
URL: http://svn.apache.org/viewcvs/geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/PingMonitorAgent.java?rev=348133&r1=348132&r2=348133&view=diff
==============================================================================
--- geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/PingMonitorAgent.java (original)
+++ geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/PingMonitorAgent.java Tue Nov 22 01:16:01 2005
@@ -54,7 +54,7 @@
continue;
} else if (message instanceof TextMessage) {
TextMessage textMessage = (TextMessage) message;
- getLogger().info("Ping "+ message.getJMSMessageID() +" : "+ textMessage.getText());
+ getLogger().debug("Ping "+ message.getJMSMessageID() +" : "+ textMessage.getText());
} else {
getLogger().warn("Agent received incorrect message type: "+message.getClass().getName());
}