[jboss-cvs] JBossAS SVN: r74783 - branches/JBPAPP_4_2_0_GA_CP/connector/src/main/org/jboss/resource/adapter/jms/inflow.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed Jun 18 05:56:43 EDT 2008
Author: jesper.pedersen
Date: 2008-06-18 05:56:43 -0400 (Wed, 18 Jun 2008)
New Revision: 74783
Modified:
branches/JBPAPP_4_2_0_GA_CP/connector/src/main/org/jboss/resource/adapter/jms/inflow/JmsServerSessionPool.java
Log:
[JBPAPP-894] JMS session count during shutdown
Modified: branches/JBPAPP_4_2_0_GA_CP/connector/src/main/org/jboss/resource/adapter/jms/inflow/JmsServerSessionPool.java
===================================================================
--- branches/JBPAPP_4_2_0_GA_CP/connector/src/main/org/jboss/resource/adapter/jms/inflow/JmsServerSessionPool.java 2008-06-18 09:51:51 UTC (rev 74782)
+++ branches/JBPAPP_4_2_0_GA_CP/connector/src/main/org/jboss/resource/adapter/jms/inflow/JmsServerSessionPool.java 2008-06-18 09:56:43 UTC (rev 74783)
@@ -21,8 +21,6 @@
*/
package org.jboss.resource.adapter.jms.inflow;
-import java.security.AccessController;
-import java.security.PrivilegedAction;
import java.util.ArrayList;
import javax.jms.Connection;
@@ -140,7 +138,6 @@
}
catch (Throwable t)
{
- log.error("Unable to get a server session", t);
throw new JMSException("Unable to get a server session " + t);
}
@@ -217,9 +214,9 @@
{
JmsServerSession session = (JmsServerSession) serverSessions.get(i);
session.teardown();
+ --sessionCount;
}
- sessionCount -= serverSessions.size();
serverSessions.clear();
if (activation.getActivationSpec().isForceClearOnShutdown())
@@ -228,19 +225,23 @@
int forceClearAttempts = activation.getActivationSpec().getForceClearAttempts();
long forceClearInterval = activation.getActivationSpec().getForceClearOnShutdownInterval();
- log.info("Force clear behavior in effect. Waiting for " + forceClearInterval + " milliseconds for " + forceClearAttempts + " attempts.");
+ log.trace(this + " force clear behavior in effect. Waiting for " + forceClearInterval + " milliseconds for " + forceClearAttempts + " attempts.");
while((sessionCount > 0) && (attempts < forceClearAttempts))
{
try
{
+ int currentSessions = sessionCount;
serverSessions.wait(forceClearInterval);
- log.trace("Clear attempt " + attempts);
+ // Number of session didn't change
+ if (sessionCount == currentSessions)
+ {
++attempts;
-
- }catch(InterruptedException ignore)
+ log.trace(this + " clear attempt failed " + attempts);
+ }
+ }
+ catch(InterruptedException ignore)
{
-
}
}
More information about the jboss-cvs-commits
mailing list