[jboss-cvs] JBossAS SVN: r111169 - in projects/jboss-jca/trunk: rhq/src/test/java/org/jboss/jca/rhq/test and 1 other directory.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Tue Apr 12 09:36:14 EDT 2011


Author: jesper.pedersen
Date: 2011-04-12 09:36:14 -0400 (Tue, 12 Apr 2011)
New Revision: 111169

Modified:
   projects/jboss-jca/trunk/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/mcp/SemaphoreArrayListManagedConnectionPool.java
   projects/jboss-jca/trunk/rhq/src/test/java/org/jboss/jca/rhq/test/XATestCase.java
Log:
Addtional preconditions for prefill

Modified: projects/jboss-jca/trunk/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/mcp/SemaphoreArrayListManagedConnectionPool.java
===================================================================
--- projects/jboss-jca/trunk/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/mcp/SemaphoreArrayListManagedConnectionPool.java	2011-04-12 12:54:31 UTC (rev 111168)
+++ projects/jboss-jca/trunk/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/mcp/SemaphoreArrayListManagedConnectionPool.java	2011-04-12 13:36:14 UTC (rev 111169)
@@ -27,9 +27,9 @@
 import org.jboss.jca.core.connectionmanager.listener.ConnectionListener;
 import org.jboss.jca.core.connectionmanager.listener.ConnectionListenerFactory;
 import org.jboss.jca.core.connectionmanager.listener.ConnectionState;
-import org.jboss.jca.core.connectionmanager.pool.AbstractPrefillPool;
 import org.jboss.jca.core.connectionmanager.pool.SubPoolContext;
 import org.jboss.jca.core.connectionmanager.pool.api.Pool;
+import org.jboss.jca.core.connectionmanager.pool.api.PrefillPool;
 import org.jboss.jca.core.connectionmanager.pool.idle.IdleRemover;
 import org.jboss.jca.core.connectionmanager.pool.validator.ConnectionValidator;
 
@@ -166,7 +166,7 @@
       this.statistics = new ManagedConnectionPoolStatisticsImpl();
 
       // Schedule managed connection pool for prefill
-      if (pc.isPrefill() && p instanceof AbstractPrefillPool)
+      if (pc.isPrefill() && p instanceof PrefillPool)
       {
          PoolFiller.fillPool(this);
       }
@@ -521,8 +521,13 @@
          }
 
          // We destroyed something, check the minimum.
-         if (!shutdown.get() && poolConfiguration.getMinSize() > 0)
+         if (!shutdown.get() &&
+             poolConfiguration.getMinSize() > 0 &&
+             poolConfiguration.isPrefill() &&
+             pool instanceof PrefillPool)
+         {
             PoolFiller.fillPool(this);
+         }
       }
    }
 
@@ -578,8 +583,13 @@
          }
 
          // We destroyed something, check the minimum.
-         if (!shutdown.get() && poolConfiguration.getMinSize() > 0)
+         if (!shutdown.get() &&
+             poolConfiguration.getMinSize() > 0 &&
+             poolConfiguration.isPrefill() &&
+             pool instanceof PrefillPool)
+         {
             PoolFiller.fillPool(this);
+         }
 
          // Empty sub-pool
          if (pool != null)
@@ -603,6 +613,15 @@
     */
    public void fillToMin()
    {
+      if (poolConfiguration.getMinSize() <= 0)
+         return;
+
+      if (!poolConfiguration.isPrefill())
+         return;
+
+      if (!(pool instanceof PrefillPool))
+         return;
+
       while (true)
       {
          // Get a permit - avoids a race when the pool is nearly full
@@ -814,7 +833,11 @@
          {
             permits.release();
 
-            if (anyDestroyed && !shutdown.get() && poolConfiguration.getMinSize() > 0)
+            if (anyDestroyed &&
+                !shutdown.get() &&
+                poolConfiguration.getMinSize() > 0 &&
+                poolConfiguration.isPrefill() &&
+                pool instanceof PrefillPool)
             {
                PoolFiller.fillPool(this);
             }

Modified: projects/jboss-jca/trunk/rhq/src/test/java/org/jboss/jca/rhq/test/XATestCase.java
===================================================================
--- projects/jboss-jca/trunk/rhq/src/test/java/org/jboss/jca/rhq/test/XATestCase.java	2011-04-12 12:54:31 UTC (rev 111168)
+++ projects/jboss-jca/trunk/rhq/src/test/java/org/jboss/jca/rhq/test/XATestCase.java	2011-04-12 13:36:14 UTC (rev 111169)
@@ -234,7 +234,7 @@
       assertEquals("0", mcfConfig.getSimpleValue("background-validation-minutes", null));
       assertEquals("30000", mcfConfig.getSimpleValue("blocking-timeout-millis", null));
       assertEquals("30", mcfConfig.getSimpleValue("idle-timeout-minutes", null));
-      assertEquals("true", mcfConfig.getSimpleValue("prefill", null));
+      assertEquals("false", mcfConfig.getSimpleValue("prefill", null));
       assertEquals("false", mcfConfig.getSimpleValue("use-strict-min", null));
       assertEquals("false", mcfConfig.getSimpleValue("use-fast-fail", null));
    }



More information about the jboss-cvs-commits mailing list