Author: schor Date: Fri Apr 18 17:53:06 2014 New Revision: 1588531 URL: http://svn.apache.org/r1588531 Log: [UIMA-3759] Using profiler, determined that the test driver is holding on to instances of the test classes. If those classes, in turn, have instance variables holding onto large objects, and no tearDown() sets these to null, this causes an accum. of memory use. It looks like on some JVMs/OSs, we were near the max heap. Added tearDown cleanups to the next set of heap users.
Modified: uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/cas/test/IndexComparitorTest.java uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/cas/test/IndexRepositoryTest.java uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/cas/test/JcasSofaTest.java uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/cas/test/NewPrimitiveTypesTest.java uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/cas/test/SofaTest.java Modified: uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/cas/test/IndexComparitorTest.java URL: http://svn.apache.org/viewvc/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/cas/test/IndexComparitorTest.java?rev=1588531&r1=1588530&r2=1588531&view=diff ============================================================================== --- uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/cas/test/IndexComparitorTest.java (original) +++ uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/cas/test/IndexComparitorTest.java Fri Apr 18 17:53:06 2014 @@ -212,13 +212,6 @@ public class IndexComparitorTest extends } } - private FeatureStructure createFs(Type type, int i, int j) { - FeatureStructure f = cas.createFS(type); - f.setIntValue(type.getFeatureByBaseName("used"), i); - f.setIntValue(type.getFeatureByBaseName("ignored"), j); - return f; - } - public void tearDown() { fss = null; this.cas = null; @@ -235,6 +228,28 @@ public class IndexComparitorTest extends type1Sub1Ignored = null; type1Sub2Used = null; type1Sub2Ignored = null; + + irm = null; + ir = null; + sortedType1 = null; + sortedType1TypeOrder = null; + setType1 = null; + bagType1 = null; + sortedType1Sub1 = null; + setType1Sub1 = null; + bagType1Sub1 = null; + setType1TypeOrder = null; + bagType1TypeOrder = null; + sortedType1Sub1TypeOrder = null; + setType1Sub1TypeOrder = null; + bagType1Sub1TypeOrder = null; + } + + private FeatureStructure createFs(Type type, int i, int j) { + FeatureStructure f = cas.createFS(type); + f.setIntValue(type.getFeatureByBaseName("used"), i); + f.setIntValue(type.getFeatureByBaseName("ignored"), j); + return f; } public void testCompare() throws Exception { Modified: uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/cas/test/IndexRepositoryTest.java URL: http://svn.apache.org/viewvc/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/cas/test/IndexRepositoryTest.java?rev=1588531&r1=1588530&r2=1588531&view=diff ============================================================================== --- uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/cas/test/IndexRepositoryTest.java (original) +++ uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/cas/test/IndexRepositoryTest.java Fri Apr 18 17:53:06 2014 @@ -51,6 +51,12 @@ public class IndexRepositoryTest extends this.indexRep = this.cas.getIndexRepository(); } + public void tearDown() { + cas = null; + typeSystem = null; + indexRep = null; + } + public void testDefaultBagIndex() throws Exception { // create an instance of a non-annotation type Type tokenTypeType = this.typeSystem.getType(CASTestSetup.TOKEN_TYPE_TYPE); Modified: uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/cas/test/JcasSofaTest.java URL: http://svn.apache.org/viewvc/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/cas/test/JcasSofaTest.java?rev=1588531&r1=1588530&r2=1588531&view=diff ============================================================================== --- uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/cas/test/JcasSofaTest.java (original) +++ uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/cas/test/JcasSofaTest.java Fri Apr 18 17:53:06 2014 @@ -110,7 +110,12 @@ public class JcasSofaTest extends TestCa } catch (Exception e) { JUnitExtension.handleException(e); } - + } + + public void tearDown() { + casMgr = null; + jcas = null; + cas = null; } /** Modified: uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/cas/test/NewPrimitiveTypesTest.java URL: http://svn.apache.org/viewvc/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/cas/test/NewPrimitiveTypesTest.java?rev=1588531&r1=1588530&r2=1588531&view=diff ============================================================================== --- uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/cas/test/NewPrimitiveTypesTest.java (original) +++ uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/cas/test/NewPrimitiveTypesTest.java Fri Apr 18 17:53:06 2014 @@ -194,6 +194,28 @@ public class NewPrimitiveTypesTest exten } + public void tearDown() { + casMgr = null; + cas = null; + annotationType = null; + exampleType = null; + floatFeature = null; + stringFeature = null; + byteFeature = null; + booleanFeature = null; + shortFeature = null; + longFeature = null; + doubleFeature = null; + intArrayFeature = null; + floatArrayFeature = null; + stringArrayFeature = null; + byteArrayFeature = null; + booleanArrayFeature = null; + shortArrayFeature = null; + longArrayFeature = null; + doubleArrayFeature = null; + } + public void testCreateFS() throws Exception { // create FS Modified: uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/cas/test/SofaTest.java URL: http://svn.apache.org/viewvc/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/cas/test/SofaTest.java?rev=1588531&r1=1588530&r2=1588531&view=diff ============================================================================== --- uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/cas/test/SofaTest.java (original) +++ uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/cas/test/SofaTest.java Fri Apr 18 17:53:06 2014 @@ -127,7 +127,15 @@ public class SofaTest extends TestCase { } catch (Exception e) { JUnitExtension.handleException(e); } - + } + + public void tearDown() { + casMgr = null; + cas = null; + annotationType = null; + docAnnotationType = null; + crossType = null; + otherFeat = null; } /**