Author: rmannibucau
Date: Sun Nov 20 18:26:56 2011
New Revision: 1204204
URL: http://svn.apache.org/viewvc?rev=1204204&view=rev
Log:
OPENEJB-1711 fixing tests broken by the parallelism of the stateless creation
Modified:
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/monitoring/StatsInterceptor.java
openejb/trunk/openejb/container/openejb-core/src/test/java/org/apache/openejb/core/stateless/StatelessInvocationStatsTest.java
openejb/trunk/openejb/container/openejb-core/src/test/java/org/apache/openejb/core/stateless/StatelessPoolStatsTest.java
Modified:
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/monitoring/StatsInterceptor.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/monitoring/StatsInterceptor.java?rev=1204204&r1=1204203&r2=1204204&view=diff
==============================================================================
---
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/monitoring/StatsInterceptor.java
(original)
+++
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/monitoring/StatsInterceptor.java
Sun Nov 20 18:26:56 2011
@@ -188,8 +188,13 @@ public class StatsInterceptor {
Stats stats = map.get(method);
if (stats == null) {
- stats = new Stats(method, monitor);
- map.put(method, stats);
+ synchronized (map) {
+ stats = map.get(method);
+ if (stats == null) {
+ stats = new Stats(method, monitor);
+ map.put(method, stats);
+ }
+ }
}
return stats;
}
Modified:
openejb/trunk/openejb/container/openejb-core/src/test/java/org/apache/openejb/core/stateless/StatelessInvocationStatsTest.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/test/java/org/apache/openejb/core/stateless/StatelessInvocationStatsTest.java?rev=1204204&r1=1204203&r2=1204204&view=diff
==============================================================================
---
openejb/trunk/openejb/container/openejb-core/src/test/java/org/apache/openejb/core/stateless/StatelessInvocationStatsTest.java
(original)
+++
openejb/trunk/openejb/container/openejb-core/src/test/java/org/apache/openejb/core/stateless/StatelessInvocationStatsTest.java
Sun Nov 20 18:26:56 2011
@@ -186,24 +186,24 @@ public class StatelessInvocationStatsTes
} else {
expectedValues.put(s + ".Count", (long) 1);
}
- expectedValues.put(s + ".GeometricMean", (double) 0.0);
+ expectedValues.put(s + ".GeometricMean", 0.0);
expectedValues.put(s + ".Kurtosis", Double.NaN);
- expectedValues.put(s + ".Max", (double) 0.0);
- expectedValues.put(s + ".Mean", (double) 0.0);
- expectedValues.put(s + ".Min", (double) 0.0);
- expectedValues.put(s + ".Percentile01", (double) 0.0);
- expectedValues.put(s + ".Percentile10", (double) 0.0);
- expectedValues.put(s + ".Percentile25", (double) 0.0);
- expectedValues.put(s + ".Percentile50", (double) 0.0);
- expectedValues.put(s + ".Percentile75", (double) 0.0);
- expectedValues.put(s + ".Percentile90", (double) 0.0);
- expectedValues.put(s + ".Percentile99", (double) 0.0);
- expectedValues.put(s + ".SampleSize", (int) 2000);
+ expectedValues.put(s + ".Max", 0.0);
+ expectedValues.put(s + ".Mean", 0.0);
+ expectedValues.put(s + ".Min", 0.0);
+ expectedValues.put(s + ".Percentile01", 0.0);
+ expectedValues.put(s + ".Percentile10", 0.0);
+ expectedValues.put(s + ".Percentile25", 0.0);
+ expectedValues.put(s + ".Percentile50", 0.0);
+ expectedValues.put(s + ".Percentile75", 0.0);
+ expectedValues.put(s + ".Percentile90", 0.0);
+ expectedValues.put(s + ".Percentile99", 0.0);
+ expectedValues.put(s + ".SampleSize", 2000);
expectedValues.put(s + ".Skewness", Double.NaN);
- expectedValues.put(s + ".StandardDeviation", (double) 0.0);
- expectedValues.put(s + ".Sum", (double) 0.0);
- expectedValues.put(s + ".Sumsq", (double) 0.0);
- expectedValues.put(s + ".Variance", (double) 0.0);
+ expectedValues.put(s + ".StandardDeviation", 0.0);
+ expectedValues.put(s + ".Sum", 0.0);
+ expectedValues.put(s + ".Sumsq", 0.0);
+ expectedValues.put(s + ".Variance", 0.0);
}
List<MBeanAttributeInfo> actualAttributes = new
ArrayList<MBeanAttributeInfo>();
@@ -216,6 +216,11 @@ public class StatelessInvocationStatsTes
//Verify invocation attributes and values
assertEquals(expectedAttributes, actualAttributes);
+ for (Map.Entry<String, Object> entry : actualValues.entrySet()) {
+ if
(!expectedValues.get(entry.getKey()).equals(actualValues.get(entry.getKey()))) {
+ System.out.println("2. " + entry.getKey() + " => " +
entry.getValue() + "/" + expectedValues.get(entry.getKey()));
+ }
+ }
assertEquals(expectedValues, actualValues);
// Grab invocation mbean operations
Modified:
openejb/trunk/openejb/container/openejb-core/src/test/java/org/apache/openejb/core/stateless/StatelessPoolStatsTest.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/test/java/org/apache/openejb/core/stateless/StatelessPoolStatsTest.java?rev=1204204&r1=1204203&r2=1204204&view=diff
==============================================================================
---
openejb/trunk/openejb/container/openejb-core/src/test/java/org/apache/openejb/core/stateless/StatelessPoolStatsTest.java
(original)
+++
openejb/trunk/openejb/container/openejb-core/src/test/java/org/apache/openejb/core/stateless/StatelessPoolStatsTest.java
Sun Nov 20 18:26:56 2011
@@ -135,24 +135,24 @@ public class StatelessPoolStatsTest exte
Map<String, Object> expectedAttributesValue = new HashMap<String,
Object>();
expectedAttributesValue.put("AccessTimeouts", (long) 0);
expectedAttributesValue.put("Aged", (long) 0);
- expectedAttributesValue.put("AvailablePermits", (int) 15);
+ expectedAttributesValue.put("AvailablePermits", 15);
expectedAttributesValue.put("Flushed", (long) 0);
expectedAttributesValue.put("Flushes", (long) 0);
expectedAttributesValue.put("GarbageCollected", (long) 0);
expectedAttributesValue.put("GarbageCollection", false);
expectedAttributesValue.put("IdleTimeout", (long) 0);
expectedAttributesValue.put("IdleTimeouts", (long) 0);
- expectedAttributesValue.put("InstancesPooled", (int) 3);
- expectedAttributesValue.put("InstancesActive", (int) 0);
- expectedAttributesValue.put("InstancesIdle", (int) 3);
- expectedAttributesValue.put("InstancesInitializing", (int) 0);
+ expectedAttributesValue.put("InstancesPooled", 3);
+ expectedAttributesValue.put("InstancesActive", 0);
+ expectedAttributesValue.put("InstancesIdle", 3);
+ expectedAttributesValue.put("InstancesInitializing", 0);
expectedAttributesValue.put("MaxAge", (long) 0);
- expectedAttributesValue.put("MaxAgeOffset", (double) (-1.0));
- expectedAttributesValue.put("MaxSize", (int) 15);
- expectedAttributesValue.put("MinSize", (int) 3);
- expectedAttributesValue.put("MinimumInstances", (int) 3);
+ expectedAttributesValue.put("MaxAgeOffset", -1.0);
+ expectedAttributesValue.put("MaxSize", 15);
+ expectedAttributesValue.put("MinSize", 3);
+ expectedAttributesValue.put("MinimumInstances", 3);
expectedAttributesValue.put("Overdrafts", (long) 0);
- expectedAttributesValue.put("PoolVersion", (int) 0);
+ expectedAttributesValue.put("PoolVersion", 0);
expectedAttributesValue.put("ReplaceAged", true);
expectedAttributesValue.put("ReplaceFlushed", false);
expectedAttributesValue.put("Replaced", (long) 0);
@@ -383,7 +383,7 @@ public class StatelessPoolStatsTest exte
CounterBean.constructed = new CountDownLatch(3);
- Thread.sleep(101);
+ Thread.sleep(110);
checkout.release();