dev@glassfish.java.net

Re: About Fighterfish It Test Regression

From: Tang Yong <tangyong_at_cn.fujitsu.com>
Date: Tue, 19 Mar 2013 20:55:41 +0900

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.

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.

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
>>>>
>>
>>
>
>
>
>