dev@glassfish.java.net

Re: About Fighterfish It Test Regression

From: Sahoo <sanjeeb.sahoo_at_oracle.com>
Date: Tue, 19 Mar 2013 18:25:41 +0530

On Tuesday 19 March 2013 05:25 PM, Tang Yong wrote:
> Sahoo,
>
> I have resolved the issue by adding the following into OracleJVM profile.
>
> <profile>
> <id>OracleJVM</id>
> ...
> <properties>
> <argLine>-Xmx512m -XX:MaxPermSize=256m ${extraArgs}</argLine>
> </properties>
> </profile>
>
> Maybe in my local env, I need to add -Xmx512m, otherwise, java heap
> exception will happen.
I don't see the issue. I have run the tests in a shell where there is no
MAVEN_OPTS variable defined. Anyway, if that's what helped in your case,
you can check in the changes.
> However, I have a question about the profiles as following:
>
> [Question]
> while I was executing "mvn clean test -Dglassfish.home=XXX" on my local
> env(oracle jdk7, windows xp), which profile will be selected defaully?
>
> My understanding is that ToolsJar, Felix, OracleJVM all meet the condition.
All of them.

Thanks,
Sahoo
>
> Thanks
> --Tang
>
> Tang Yong wrote:
>> Hi Sahoo,
>>
>>> a maven profile was not selected. If this is not the case, perhaps you
>>> have some local changes which is causing this.
>> The issue happened on my working env in which a proxy server exists. I
>> think that this should be different from your env. However, the issue
>> did not happen several days ago. In addition, jeremy has also the same
>> issue. Now, I still do not know the reason.
>>
>> I will come back home and try it again to see whether having the same issue.
>>
>> Thanks
>> --Tang
>>
>> Sahoo wrote:
>>> Hi Tang,
>>>
>>> Something must be wrong in your environment. Our hudson job is running fine:
>>>
>>> Tests run: 30, Failures: 0, Errors: 0, Skipped: 6
>>>
>>> I had also ran the tests locally using a build of yesterday and it was
>>> fine for me.
>>>
>>> Since the tests are portable on multiple JDKs like IBM JDK, Mac provided
>>> JDK, Oracle JDK, we try to set the heap before invoking surefire in the
>>> pom.xml based on what JDK is used. The java heap space problem indicate
>>> a maven profile was not selected. If this is not the case, perhaps you
>>> have some local changes which is causing this.
>>>
>>> Thanks,
>>> Sahoo
>>>
>>> On Tuesday 19 March 2013 09:08 AM, Tang Yong wrote:
>>>> More terrible thing is that while I ignored test.app16 and executed it
>>>> tests again, the following exception happened,
>>>>
>>>> [#|2013-03-19T12:36:24.796+0900|SEVERE|glassfish
>>>> 4.0|org.ops4j.pax.exam.junit.JUnit4TestRunner|_ThreadID=1;_ThreadName=main;_TimeMillis=1363664184796;_LevelValue=1000;ClassName=org.ops4j.pax.exam.junit.JUnit4TestRunner$3;MethodName=evaluate;|
>>>> Exception
>>>> org.ops4j.pax.exam.TestContainerException:
>>>> [testapp4(org.glassfish.fighterfish.test.it.T2_Test): Java heap space]
>>>> at
>>>> org.ops4j.pax.exam.invoker.junit.internal.JUnitProbeInvoker.invokeViaJUnit(JUnitProbeInvoker.java:112)
>>>> at
>>>> org.ops4j.pax.exam.invoker.junit.internal.JUnitProbeInvoker.findAndInvoke(JUnitProbeInvoker.java:89)
>>>> at
>>>> org.ops4j.pax.exam.invoker.junit.internal.JUnitProbeInvoker.call(JUnitProbeInvoker.java:72)
>>>> at
>>>> org.ops4j.pax.exam.nat.internal.NativeTestContainer.call(NativeTestContainer.java:86)
>>>> at
>>>> org.ops4j.pax.exam.spi.reactors.EagerSingleStagedReactor.invoke(EagerSingleStagedReactor.java:85)
>>>> at
>>>> org.ops4j.pax.exam.junit.JUnit4TestRunner$3.evaluate(JUnit4TestRunner.java:289)
>>>> at
>>>> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:76)
>>>> at
>>>> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
>>>> at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
>>>> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
>>>> at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
>>>> at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
>>>> at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
>>>> at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
>>>> at
>>>> org.ops4j.pax.exam.junit.JUnit4TestRunner.run(JUnit4TestRunner.java:87)
>>>> at
>>>> org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:53)
>>>> at
>>>> org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:119)
>>>> at
>>>> org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:101)
>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>> at
>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>>>> at
>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>>> at java.lang.reflect.Method.invoke(Method.java:601)
>>>> at
>>>> org.apache.maven.surefire.booter.ProviderFactory$ClassLoaderProxy.invoke(ProviderFactory.java:103)
>>>> at $Proxy0.invoke(Unknown Source)
>>>> at
>>>> org.apache.maven.surefire.booter.SurefireStarter.invokeProvider(SurefireStarter.java:150)
>>>> at
>>>> org.apache.maven.surefire.booter.SurefireStarter.runSuitesInProcess(SurefireStarter.java:91)
>>>> at
>>>> org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:69)
>>>> Caused by: java.lang.OutOfMemoryError: Java heap space
>>>> |#]
>>>>
>>>> org.ops4j.pax.exam.invoker.junit[org.ops4j.pax.exam.invoker.junit.internal.ContainerTestRunner]
>>>> : running org.junit.runners.model.FrameworkMethod_at_503e2bbf in reactor
>>>> [#|2013-03-19T12:36:29.906+0900|INFO|glassfish
>>>> 4.0|org.glassfish.fighterfish.test.it|_ThreadID=1;_ThreadName=main;_TimeMillis=1363664189906;_LevelValue=800;ClassName=T2_Test;MethodName=testapp12;|
>>>> ENTRY|#]
>>>>
>>>> [#|2013-03-19T12:36:29.906+0900|INFO|glassfish
>>>> 4.0|org.glassfish.fighterfish.test.util|_ThreadID=1;_ThreadName=main;_TimeMillis=1363664189906;_LevelValue=800;ClassName=org.glassfish.fighterfish.test.util.TestContext;MethodName=<init>;|
>>>> Creating test context for test id:
>>>> org.glassfish.fighterfish.test.it.T2_Test-10|#]
>>>>
>>>> [#|2013-03-19T12:36:29.906+0900|INFO|glassfish
>>>> 4.0|org.glassfish.fighterfish.test.util|_ThreadID=1;_ThreadName=main;_TimeMillis=1363664189906;_LevelValue=800;ClassName=EnterpriseResourceProvisioner;MethodName=execute;|
>>>> cmd = create-jdbc-connection-pool, args = [--ping,
>>>> --restype=javax.sql.XADataSource,
>>>> --datasourceclassname=org.apache.derby.jdbc.EmbeddedXADataSource,
>>>> --property,
>>>> databaseName=memory\:org.glassfish.fighterfish.test.it.T2_Test-10:connectionAttributes=;create
>>>>
>>>>
>>>>
>>>> Tang Yong wrote:
>>>>> Sahoo,
>>>>>
>>>>> Fighterfish It Test has a big regression while using 3/19 gf trunk
>>>>> building SnapShot, the attachment is failed info , my analyse is as
>>>>> following:
>>>>>
>>>>> 1 org.glassfish.fighterfish.test.app16.mdb seemed to cause regression
>>>>>
>>>>> 2 Test has not ended normally and was hanging while executing the following,
>>>>>
>>>>> ...
>>>>> [#|2013-03-19T12:01:54.312+0900|INFO|glassfish
>>>>> 4.0|org.glassfish.fighterfish.test.util|_ThreadID=1;_ThreadName=main;_TimeMillis=1363662114312;_LevelValue=800;ClassName=EnterpriseResourceProvisioner;MethodName=execute;|
>>>>> cmd = create-jdbc-connection-pool, args = [--ping,
>>>>> --restype=javax.sql.XADataSource,
>>>>> --datasourceclassname=org.apache.derby.jdbc.EmbeddedXADataSource,
>>>>> --property,
>>>>> databaseName=memory\:org.glassfish.fighterfish.test.it.T2_Test-2:connectionAttributes=;create\=true,
>>>>> org.glassfish.fighterfish.test.it.T2_Test-2]|#]
>>>>> ↓
>>>>> hanging
>>>>>
>>>>> In addition, I have confirmed the above also happened in
>>>>>
>>>>> http://dlc.sun.com.edgesuite.net/glassfish/4.0/nightly/glassfish-4.0-b81-03_17_2013.zip
>>>>>
>>>>> I will continue to confirm whether the issue will still happen in b80.
>>>>>
>>>>> Thanks
>>>>> --Tang
>>>>>
>>>
>>
>>
>>
>