[jboss-cvs] JBossAS SVN: r59989 - branches/Branch_4_2/connector/src/main/org/jboss/resource/connectionmanager.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Jan 25 05:12:53 EST 2007


Author: wolfc
Date: 2007-01-25 05:12:53 -0500 (Thu, 25 Jan 2007)
New Revision: 59989

Modified:
   branches/Branch_4_2/connector/src/main/org/jboss/resource/connectionmanager/InternalManagedConnectionPool.java
Log:
JBAS-3911: fixed check

Modified: branches/Branch_4_2/connector/src/main/org/jboss/resource/connectionmanager/InternalManagedConnectionPool.java
===================================================================
--- branches/Branch_4_2/connector/src/main/org/jboss/resource/connectionmanager/InternalManagedConnectionPool.java	2007-01-25 08:22:07 UTC (rev 59988)
+++ branches/Branch_4_2/connector/src/main/org/jboss/resource/connectionmanager/InternalManagedConnectionPool.java	2007-01-25 10:12:53 UTC (rev 59989)
@@ -118,7 +118,7 @@
       defaultCri = cri;
       this.poolParams = poolParams;
 
-      if(this.poolParams.minSize > maxSize)
+      if(this.poolParams.minSize > poolParams.maxSize)
       {
          log.trace("Minimum pool size exceeds maximum pool size. Setting max size to " + this.poolParams.minSize + " Please verify your *-ds.xml file.");
          this.maxSize = this.poolParams.minSize;
@@ -140,6 +140,17 @@
       
    }
 
+   private final boolean checkPermitsInvariant()
+   {
+      synchronized (cls)
+      {
+         long numPermits = getAvailableConnections();
+         int inUse = getConnectionInUseCount();
+         int max = poolParams.maxSize;
+         return max == (numPermits + inUse);
+      }
+   }
+   
    /**
     * Initialize the pool
     */
@@ -180,6 +191,8 @@
     */
    public ConnectionListener getConnection(Subject subject, ConnectionRequestInfo cri) throws ResourceException
    {
+      assert checkPermitsInvariant() : "illegal numbers of permits";
+      
       subject = (subject == null) ? defaultSubject : subject;
       cri = (cri == null) ? defaultCri : cri;
       long startWait = System.currentTimeMillis();




More information about the jboss-cvs-commits mailing list