Author: kevan
Date: Mon Sep 13 19:32:45 2010
New Revision: 996656
URL: http://svn.apache.org/viewvc?rev=996656&view=rev
Log:
Updates to Pool statistics. InstancesIdle should not be negative. Added
InstancesInitializing to report instances that have been created or are being
created, but have not yet been added to the pool
Modified:
openejb/branches/openejb-3.1.x/container/openejb-core/src/main/java/org/apache/openejb/util/Pool.java
openejb/branches/openejb-3.1.x/container/openejb-core/src/test/java/org/apache/openejb/core/stateless/StatelessPoolStatsTest.java
Modified:
openejb/branches/openejb-3.1.x/container/openejb-core/src/main/java/org/apache/openejb/util/Pool.java
URL:
http://svn.apache.org/viewvc/openejb/branches/openejb-3.1.x/container/openejb-core/src/main/java/org/apache/openejb/util/Pool.java?rev=996656&r1=996655&r2=996656&view=diff
==============================================================================
---
openejb/branches/openejb-3.1.x/container/openejb-core/src/main/java/org/apache/openejb/util/Pool.java
(original)
+++
openejb/branches/openejb-3.1.x/container/openejb-core/src/main/java/org/apache/openejb/util/Pool.java
Mon Sep 13 19:32:45 2010
@@ -947,7 +947,12 @@ public class Pool<T> {
@Managed
private int getInstancesIdle() {
- return getInstancesPooled() - getInstancesActive();
+ return Math.max(0, getInstancesPooled() - getInstancesActive());
+ }
+
+ @Managed
+ private int getInstancesInitializing() {
+ return Math.max(0, getInstancesActive() - getInstancesPooled());
}
@Managed
Modified:
openejb/branches/openejb-3.1.x/container/openejb-core/src/test/java/org/apache/openejb/core/stateless/StatelessPoolStatsTest.java
URL:
http://svn.apache.org/viewvc/openejb/branches/openejb-3.1.x/container/openejb-core/src/test/java/org/apache/openejb/core/stateless/StatelessPoolStatsTest.java?rev=996656&r1=996655&r2=996656&view=diff
==============================================================================
---
openejb/branches/openejb-3.1.x/container/openejb-core/src/test/java/org/apache/openejb/core/stateless/StatelessPoolStatsTest.java
(original)
+++
openejb/branches/openejb-3.1.x/container/openejb-core/src/test/java/org/apache/openejb/core/stateless/StatelessPoolStatsTest.java
Mon Sep 13 19:32:45 2010
@@ -101,6 +101,7 @@ public class StatelessPoolStatsTest exte
expectedAttributes.add(new MBeanAttributeInfo("IdleTimeouts.Latest",
"java.lang.String", "", true, false, false));
expectedAttributes.add(new MBeanAttributeInfo("InstancesActive",
"int", "", true, false, false));
expectedAttributes.add(new MBeanAttributeInfo("InstancesIdle", "int",
"", true, false, false));
+ expectedAttributes.add(new MBeanAttributeInfo("InstancesInitializing",
"int", "", true, false, false));
expectedAttributes.add(new MBeanAttributeInfo("InstancesPooled",
"int", "", true, false, false));
expectedAttributes.add(new MBeanAttributeInfo("MaxAge", "long", "",
true, false, false));
expectedAttributes.add(new MBeanAttributeInfo("MaxAgeOffset",
"double", "", true, false, false));
@@ -134,6 +135,7 @@ public class StatelessPoolStatsTest exte
expectedAttributesValue.put("InstancesPooled", (int) 3);
expectedAttributesValue.put("InstancesActive", (int) 0);
expectedAttributesValue.put("InstancesIdle", (int) 3);
+ expectedAttributesValue.put("InstancesInitializing", (int) 0);
expectedAttributesValue.put("MaxAge", (long) 0);
expectedAttributesValue.put("MaxAgeOffset", (double) (-1.0));
expectedAttributesValue.put("MaxSize", (int) 15);