[jboss-cvs] JBossAS SVN: r88075 - in branches/JBPAPP_4_2_0_GA_CP: testsuite/imports/sections and 4 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu Apr 30 17:33:46 EDT 2009
Author: galder.zamarreno at jboss.com
Date: 2009-04-30 17:33:45 -0400 (Thu, 30 Apr 2009)
New Revision: 88075
Added:
branches/JBPAPP_4_2_0_GA_CP/testsuite/src/main/org/jboss/test/timer/ejb/TimerEntityExtBean.java
branches/JBPAPP_4_2_0_GA_CP/testsuite/src/main/org/jboss/test/timer/interfaces/TimerEntityExt.java
branches/JBPAPP_4_2_0_GA_CP/testsuite/src/main/org/jboss/test/timer/interfaces/TimerEntityExtHome.java
branches/JBPAPP_4_2_0_GA_CP/testsuite/src/main/org/jboss/test/timer/test/TimerCleanUpUnitTestCase.java
Modified:
branches/JBPAPP_4_2_0_GA_CP/server/src/main/org/jboss/ejb/plugins/EntityInstanceCache.java
branches/JBPAPP_4_2_0_GA_CP/server/src/main/org/jboss/ejb/plugins/PerTxEntityInstanceCache.java
branches/JBPAPP_4_2_0_GA_CP/testsuite/imports/sections/timer.xml
branches/JBPAPP_4_2_0_GA_CP/testsuite/src/resources/timer/ejb/ejb-jar.xml
branches/JBPAPP_4_2_0_GA_CP/testsuite/src/resources/timer/ejb/jboss.xml
Log:
[JBPAPP-1875] Implemented removing timers at passivation if not more left.
Modified: branches/JBPAPP_4_2_0_GA_CP/server/src/main/org/jboss/ejb/plugins/EntityInstanceCache.java
===================================================================
--- branches/JBPAPP_4_2_0_GA_CP/server/src/main/org/jboss/ejb/plugins/EntityInstanceCache.java 2009-04-30 21:04:43 UTC (rev 88074)
+++ branches/JBPAPP_4_2_0_GA_CP/server/src/main/org/jboss/ejb/plugins/EntityInstanceCache.java 2009-04-30 21:33:45 UTC (rev 88075)
@@ -24,6 +24,8 @@
import java.rmi.RemoteException;
import java.rmi.NoSuchObjectException;
+import javax.ejb.TimerService;
+
import org.jboss.ejb.Container;
import org.jboss.ejb.EntityContainer;
import org.jboss.ejb.EnterpriseContext;
@@ -38,6 +40,7 @@
*
* @author <a href="mailto:simone.bordet at compaq.com">Simone Bordet</a>
* @author <a href="bill at burkecentral.com">Bill Burke</a>
+ * @author Galder Zamarreño
* @version $Revision$
* @jmx:mbean extends="org.jboss.ejb.plugins.AbstractInstanceCacheMBean"
*/
@@ -117,6 +120,7 @@
protected void passivate(EnterpriseContext ctx) throws RemoteException
{
+ removeTimerServiceIfAllCancelledOrExpired(ctx);
m_container.getPersistenceManager().passivateEntity((EntityEnterpriseContext)ctx);
}
@@ -167,6 +171,27 @@
}
}
+ protected void removeTimerServiceIfAllCancelledOrExpired(EnterpriseContext ctx)
+ {
+ boolean trace = log.isTraceEnabled();
+ if (trace)
+ {
+ log.trace("Check whether all timers are cancelled or expired for this entity: " + ctx);
+ }
+
+ Object id = ctx.getId();
+ TimerService timerService = m_container.getTimerService(id);
+ if (timerService != null && timerService.getTimers().isEmpty())
+ {
+ // Assuming that active timers do not include cancelled or expired ones.
+ if (trace)
+ {
+ log.trace("No active timers available for " + m_container.getJmxName() + " and primary key " + id);
+ }
+ m_container.removeTimerService(id);
+ }
+ }
+
// Private -------------------------------------------------------
// Inner classes -------------------------------------------------
Modified: branches/JBPAPP_4_2_0_GA_CP/server/src/main/org/jboss/ejb/plugins/PerTxEntityInstanceCache.java
===================================================================
--- branches/JBPAPP_4_2_0_GA_CP/server/src/main/org/jboss/ejb/plugins/PerTxEntityInstanceCache.java 2009-04-30 21:04:43 UTC (rev 88074)
+++ branches/JBPAPP_4_2_0_GA_CP/server/src/main/org/jboss/ejb/plugins/PerTxEntityInstanceCache.java 2009-04-30 21:33:45 UTC (rev 88075)
@@ -35,12 +35,15 @@
import java.util.HashMap;
import java.util.Map;
+import javax.ejb.TimerService;
+
/**
* Per transaction instance cache.
*
* @jmx:mbean
*
* @author <a href="mailto:alex at jboss.org">Alexey Loubyansky</a>
+ * @author Galder Zamarreño
* @version <tt>$Revision$</tt>
*/
public class PerTxEntityInstanceCache
@@ -111,6 +114,9 @@
public void remove(Object id)
{
+ // By default, commit option C is used with this cache which means that cache instances are
+ // removed immediately without trying to passivate, hence, remove associated timer if empty.
+ removeTimerServiceIfAllCancelledOrExpired(id);
getLocalCache().remove(id);
}
@@ -208,6 +214,25 @@
return container.getLockManager().canPassivate(key);
}
+ protected void removeTimerServiceIfAllCancelledOrExpired(Object id)
+ {
+ boolean trace = log.isTraceEnabled();
+ if (trace)
+ {
+ log.trace("Check whether all timers are cancelled or expired for this entity: " + id);
+ }
+ TimerService timerService = container.getTimerService(id);
+ if (timerService != null && timerService.getTimers().isEmpty())
+ {
+ // Assuming that active timers do not include cancelled or expired ones.
+ if (trace)
+ {
+ log.trace("No active timers available for " + container.getJmxName() + " and primary key " + id);
+ }
+ container.removeTimerService(id);
+ }
+ }
+
// Private
private Map getLocalCache()
Modified: branches/JBPAPP_4_2_0_GA_CP/testsuite/imports/sections/timer.xml
===================================================================
--- branches/JBPAPP_4_2_0_GA_CP/testsuite/imports/sections/timer.xml 2009-04-30 21:04:43 UTC (rev 88074)
+++ branches/JBPAPP_4_2_0_GA_CP/testsuite/imports/sections/timer.xml 2009-04-30 21:33:45 UTC (rev 88075)
@@ -12,7 +12,7 @@
</zipfileset>
</zip>
<zip destfile="${build.lib}/ejb-timer.war">
- <zipfileset dir="${build.classes}">
+ <zipfileset dir="${build.classes}" prefix="WEB-INF/classes">
<include name="org/jboss/test/timer/servlet/**"/>
</zipfileset>
<zipfileset dir="${build.resources}/timer/war" prefix="WEB-INF">
Added: branches/JBPAPP_4_2_0_GA_CP/testsuite/src/main/org/jboss/test/timer/ejb/TimerEntityExtBean.java
===================================================================
--- branches/JBPAPP_4_2_0_GA_CP/testsuite/src/main/org/jboss/test/timer/ejb/TimerEntityExtBean.java (rev 0)
+++ branches/JBPAPP_4_2_0_GA_CP/testsuite/src/main/org/jboss/test/timer/ejb/TimerEntityExtBean.java 2009-04-30 21:33:45 UTC (rev 88075)
@@ -0,0 +1,65 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.test.timer.ejb;
+
+import javax.ejb.EJBException;
+import javax.ejb.EntityContext;
+import javax.management.ObjectName;
+
+import org.jboss.ejb.Container;
+import org.jboss.ejb.txtimer.EJBTimerService;
+import org.jboss.ejb.txtimer.EJBTimerServiceLocator;
+import org.jboss.mx.util.ObjectNameConverter;
+
+/**
+ * TimerEntityExtBean.
+ *
+ * @author Galder Zamarreño
+ */
+public class TimerEntityExtBean extends TimerEntityBean
+{
+ /** The serialVersionUID */
+ private static final long serialVersionUID = -7428841333866106621L;
+
+ private EntityContext ctx;
+
+ public boolean hasTimerService(String jndi)
+ {
+ try
+ {
+ EJBTimerService service = EJBTimerServiceLocator.getEjbTimerService();
+ String name = Container.BASE_EJB_CONTAINER_NAME + ",jndiName=" + jndi;
+ ObjectName containerId = ObjectNameConverter.convert(name);
+ return service.getTimerService(containerId, ctx.getPrimaryKey()) != null;
+ }
+ catch(Exception e)
+ {
+ throw new EJBException("Unable to verify whether entity bean has a timer service associated", e);
+ }
+ }
+
+ public void setEntityContext(EntityContext ctx)
+ {
+ super.setEntityContext(ctx);
+ this.ctx = ctx;
+ }
+}
Added: branches/JBPAPP_4_2_0_GA_CP/testsuite/src/main/org/jboss/test/timer/interfaces/TimerEntityExt.java
===================================================================
--- branches/JBPAPP_4_2_0_GA_CP/testsuite/src/main/org/jboss/test/timer/interfaces/TimerEntityExt.java (rev 0)
+++ branches/JBPAPP_4_2_0_GA_CP/testsuite/src/main/org/jboss/test/timer/interfaces/TimerEntityExt.java 2009-04-30 21:33:45 UTC (rev 88075)
@@ -0,0 +1,32 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.test.timer.interfaces;
+
+/**
+ * TimerEntityExt.
+ *
+ * @author Galder Zamarreño
+ */
+public interface TimerEntityExt extends TimerEntity
+{
+ boolean hasTimerService(String jndi) throws java.rmi.RemoteException;
+}
Added: branches/JBPAPP_4_2_0_GA_CP/testsuite/src/main/org/jboss/test/timer/interfaces/TimerEntityExtHome.java
===================================================================
--- branches/JBPAPP_4_2_0_GA_CP/testsuite/src/main/org/jboss/test/timer/interfaces/TimerEntityExtHome.java (rev 0)
+++ branches/JBPAPP_4_2_0_GA_CP/testsuite/src/main/org/jboss/test/timer/interfaces/TimerEntityExtHome.java 2009-04-30 21:33:45 UTC (rev 88075)
@@ -0,0 +1,36 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.test.timer.interfaces;
+
+/**
+ * TimerEntityExt.
+ *
+ * @author Galder Zamarreño
+ */
+public interface TimerEntityExtHome extends javax.ejb.EJBHome
+{
+ public org.jboss.test.timer.interfaces.TimerEntityExt create(java.lang.Integer pk)
+ throws javax.ejb.CreateException,java.rmi.RemoteException;
+
+ public org.jboss.test.timer.interfaces.TimerEntityExt findByPrimaryKey(java.lang.Integer pk)
+ throws javax.ejb.FinderException,java.rmi.RemoteException;
+}
Added: branches/JBPAPP_4_2_0_GA_CP/testsuite/src/main/org/jboss/test/timer/test/TimerCleanUpUnitTestCase.java
===================================================================
--- branches/JBPAPP_4_2_0_GA_CP/testsuite/src/main/org/jboss/test/timer/test/TimerCleanUpUnitTestCase.java (rev 0)
+++ branches/JBPAPP_4_2_0_GA_CP/testsuite/src/main/org/jboss/test/timer/test/TimerCleanUpUnitTestCase.java 2009-04-30 21:33:45 UTC (rev 88075)
@@ -0,0 +1,144 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.test.timer.test;
+
+import javax.ejb.EJBHome;
+import javax.naming.InitialContext;
+import javax.naming.NamingException;
+
+import junit.framework.Test;
+
+import org.jboss.test.JBossTestCase;
+import org.jboss.test.timer.interfaces.TimerEntityExt;
+import org.jboss.test.timer.interfaces.TimerEntityExtHome;
+
+/**
+ * RemovalAfterPassivationTimerUnitTestCase.
+ *
+ * @author Galder Zamarreño
+ */
+public class TimerCleanUpUnitTestCase extends JBossTestCase
+{
+ private static final String EJB_TIMER_XAR = "ejb-timer.ear";
+
+ private static final int SHORT_PERIOD = 1 * 1000; // 1s
+
+ public TimerCleanUpUnitTestCase(String name)
+ {
+ super(name);
+ }
+
+ /**
+ * Setup the test suite.
+ */
+ public static Test suite() throws Exception
+ {
+ return JBossTestCase.getDeploySetup(TimerCleanUpUnitTestCase.class, EJB_TIMER_XAR);
+ }
+
+ public void testEntityBeanTimerHasTimerServiceAfterCancellationStd() throws Exception
+ {
+ String jndi = "ejb/test/timer/TimerEntityExtStd";
+ TimerEntityExtHome home = (TimerEntityExtHome) getEJBHome(jndi);
+ TimerEntityExt entity = home.create(new Integer(333));
+ entity.startTimer(SHORT_PERIOD);
+ Thread.sleep(12 * SHORT_PERIOD);
+ assertTrue("Timer service should be associated with bean." , entity.hasTimerService(jndi));
+ entity.stopTimer();
+ int lCount = entity.getTimeoutCount();
+ assertTrue("Timeout was expected to be called at least 10 times but was "
+ + "only called: " + lCount + " times",
+ lCount >= 10);
+ Thread.sleep(5 * SHORT_PERIOD);
+ int lCount2 = entity.getTimeoutCount();
+ assertTrue("After the timer was stopped no timeout should happen but "
+ + "it was called " + (lCount2 - lCount) + " more times",
+ lCount == lCount2);
+ Thread.sleep(40 * SHORT_PERIOD);
+ assertFalse("Timer service should have been passivated and timer service association removed."
+ , entity.hasTimerService(jndi));
+ entity.remove();
+ }
+
+ public void testEntityBeanSingleTimerHasTimerServiceAfterExpirationStd() throws Exception
+ {
+ String jndi = "ejb/test/timer/TimerEntityExtStd";
+ TimerEntityExtHome home = (TimerEntityExtHome) getEJBHome(jndi);
+ TimerEntityExt entity = home.create(new Integer(444));
+ entity.startSingleTimer(SHORT_PERIOD);
+ Thread.sleep(5 * SHORT_PERIOD);
+ int lCount = entity.getTimeoutCount();
+ assertTrue("Timeout was expected to be called only once but was called: "
+ + lCount + " times",
+ lCount == 1);
+ Thread.sleep(40 * SHORT_PERIOD);
+ assertFalse("Timer service should have been passivated and timer service association removed."
+ , entity.hasTimerService(jndi));
+ entity.remove();
+ }
+
+ public void testEntityBeanTimerHasTimerServiceAfterCancellationInstPerTx() throws Exception
+ {
+ String jndi = "ejb/test/timer/TimerEntityExtInstPerTx";
+ TimerEntityExtHome home = (TimerEntityExtHome) getEJBHome(jndi);
+ TimerEntityExt entity = home.create(new Integer(555));
+ entity.startTimer(SHORT_PERIOD);
+ Thread.sleep(12 * SHORT_PERIOD);
+ assertTrue("Timer service should be associated with bean." , entity.hasTimerService(jndi));
+ entity.stopTimer();
+ int lCount = entity.getTimeoutCount();
+ assertTrue("Timeout was expected to be called at least 10 times but was "
+ + "only called: " + lCount + " times",
+ lCount >= 10);
+ Thread.sleep(5 * SHORT_PERIOD);
+ int lCount2 = entity.getTimeoutCount();
+ assertTrue("After the timer was stopped no timeout should happen but "
+ + "it was called " + (lCount2 - lCount) + " more times",
+ lCount == lCount2);
+ assertFalse("Timer service should have been passivated and timer service association removed."
+ , entity.hasTimerService(jndi));
+ entity.remove();
+ }
+
+ public void testEntityBeanSingleTimerHasTimerServiceAfterExpirationInstPerTx() throws Exception
+ {
+ String jndi = "ejb/test/timer/TimerEntityExtInstPerTx";
+ TimerEntityExtHome home = (TimerEntityExtHome) getEJBHome(jndi);
+ TimerEntityExt entity = home.create(new Integer(666));
+ entity.startSingleTimer(SHORT_PERIOD);
+ Thread.sleep(5 * SHORT_PERIOD);
+ assertFalse("Timer service should be associated with bean." , entity.hasTimerService(jndi));
+ int lCount = entity.getTimeoutCount();
+ assertTrue("Timeout was expected to be called only once but was called: "
+ + lCount + " times",
+ lCount == 1);
+ assertFalse("Timer service should have been passivated and timer service association removed."
+ , entity.hasTimerService(jndi));
+ entity.remove();
+ }
+
+ private EJBHome getEJBHome(String pJNDIName) throws NamingException
+ {
+ InitialContext lContext = new InitialContext();
+ return (EJBHome) lContext.lookup(pJNDIName);
+ }
+}
Modified: branches/JBPAPP_4_2_0_GA_CP/testsuite/src/resources/timer/ejb/ejb-jar.xml
===================================================================
--- branches/JBPAPP_4_2_0_GA_CP/testsuite/src/resources/timer/ejb/ejb-jar.xml 2009-04-30 21:04:43 UTC (rev 88074)
+++ branches/JBPAPP_4_2_0_GA_CP/testsuite/src/resources/timer/ejb/ejb-jar.xml 2009-04-30 21:33:45 UTC (rev 88075)
@@ -47,6 +47,28 @@
<prim-key-class>java.lang.Integer</prim-key-class>
<reentrant>false</reentrant>
</entity>
+ <entity>
+ <description>Extended Entity Bean Timer Standard Container</description>
+ <display-name>Timer in Extended Entity Bean Standard Container</display-name>
+ <ejb-name>TimerEntityExtStd</ejb-name>
+ <home>org.jboss.test.timer.interfaces.TimerEntityExtHome</home>
+ <remote>org.jboss.test.timer.interfaces.TimerEntityExt</remote>
+ <ejb-class>org.jboss.test.timer.ejb.TimerEntityExtBean</ejb-class>
+ <persistence-type>Bean</persistence-type>
+ <prim-key-class>java.lang.Integer</prim-key-class>
+ <reentrant>false</reentrant>
+ </entity>
+ <entity>
+ <description>Extended Entity Bean Timer Instance Per Tx</description>
+ <display-name>Timer in Extended Entity Bean Instance Per Tx</display-name>
+ <ejb-name>TimerEntityExtInstPerTx</ejb-name>
+ <home>org.jboss.test.timer.interfaces.TimerEntityExtHome</home>
+ <remote>org.jboss.test.timer.interfaces.TimerEntityExt</remote>
+ <ejb-class>org.jboss.test.timer.ejb.TimerEntityExtBean</ejb-class>
+ <persistence-type>Bean</persistence-type>
+ <prim-key-class>java.lang.Integer</prim-key-class>
+ <reentrant>false</reentrant>
+ </entity>
<session>
<description>Secured Stateless Session Bean Timer Test</description>
Modified: branches/JBPAPP_4_2_0_GA_CP/testsuite/src/resources/timer/ejb/jboss.xml
===================================================================
--- branches/JBPAPP_4_2_0_GA_CP/testsuite/src/resources/timer/ejb/jboss.xml 2009-04-30 21:04:43 UTC (rev 88074)
+++ branches/JBPAPP_4_2_0_GA_CP/testsuite/src/resources/timer/ejb/jboss.xml 2009-04-30 21:33:45 UTC (rev 88075)
@@ -15,6 +15,18 @@
<jndi-name>ejb/test/timer/TimerEntity</jndi-name>
<timer-persistence>false</timer-persistence>
</entity>
+ <entity>
+ <ejb-name>TimerEntityExtStd</ejb-name>
+ <jndi-name>ejb/test/timer/TimerEntityExtStd</jndi-name>
+ <timer-persistence>false</timer-persistence>
+ <configuration-name>Quick Passivation Standard BMP EntityBean</configuration-name>
+ </entity>
+ <entity>
+ <ejb-name>TimerEntityExtInstPerTx</ejb-name>
+ <jndi-name>ejb/test/timer/TimerEntityExtInstPerTx</jndi-name>
+ <timer-persistence>false</timer-persistence>
+ <configuration-name>Instance Per Transaction BMP EntityBean</configuration-name>
+ </entity>
<!--
<session>
<ejb-name>UserDataTimerSLSB</ejb-name>
@@ -70,4 +82,25 @@
</enterprise-beans>
+ <container-configurations>
+
+ <container-configuration extends="Standard BMP EntityBean">
+ <container-name>Quick Passivation Standard BMP EntityBean</container-name>
+ <container-cache-conf>
+ <cache-policy>org.jboss.ejb.plugins.LRUEnterpriseContextCachePolicy</cache-policy>
+ <cache-policy-conf>
+ <min-capacity>50</min-capacity>
+ <max-capacity>1000000</max-capacity>
+ <overager-period>5</overager-period>
+ <max-bean-age>20</max-bean-age>
+ <resizer-period>400</resizer-period>
+ <max-cache-miss-period>60</max-cache-miss-period>
+ <min-cache-miss-period>1</min-cache-miss-period>
+ <cache-load-factor>0.75</cache-load-factor>
+ </cache-policy-conf>
+ </container-cache-conf>
+ </container-configuration>
+
+ </container-configurations>
+
</jboss>
More information about the jboss-cvs-commits
mailing list