Eventhough we have -Xms64m -Xmx1024m we still have exception for heap space. The bug was already created before, and marked as fixed (
http://track.pmease.com/browse/QB-2001) but apparently not:
04:55:55,952 ERROR - Step 'master>TestRunner Container Android Reflection and Performance>TestRunner Publishing Android Artifacts>TestRunner JUnit Report Android' is failed.
com.pmease.quickbuild.plugin.report.engine.exception.DatabaseException: Open database [/opt/buildagent/temp/abstractpublisher9628dbf2-f8e4-4577-8183-632ab679314d/Release Android Performance] failed. Database status [No active connections].
at com.pmease.quickbuild.plugin.report.engine.datastore.DbStore.open(DbStore.java:355)
at com.pmease.quickbuild.plugin.report.engine.metadata.ReportCategory.saveReport(ReportCategory.java:367)
at com.pmease.quickbuild.plugin.report.engine.generator.DefaultGenerator.saveDestReport(DefaultGenerator.java:81)
at com.pmease.quickbuild.plugin.report.engine.generator.DefaultGenerator.afterExecute(DefaultGenerator.java:55)
at com.pmease.quickbuild.plugin.report.engine.generator.GenerateAction.execute(GenerateAction.java:43)
at com.pmease.quickbuild.plugin.report.engine.generator.DefaultGenerator.generate(DefaultGenerator.java:37)
at com.pmease.quickbuild.plugin.report.engine.contribution.publisher.AbstractPublisher.doPublish(AbstractPublisher.java:162)
at com.pmease.quickbuild.plugin.report.junit.JUnitPublisher$$EnhancerByCGLIB$$729525a7.CGLIB$doPublish$38(<generated>)
at com.pmease.quickbuild.plugin.report.junit.JUnitPublisher$$EnhancerByCGLIB$$729525a7$$FastClassByCGLIB$$33f1b512.invoke(<generated>)
at net.sf.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:215)
at com.pmease.quickbuild.DefaultScriptEngine$Interpolator.intercept(DefaultScriptEngine.java:273)
at com.pmease.quickbuild.plugin.report.junit.JUnitPublisher$$EnhancerByCGLIB$$729525a7.doPublish(<generated>)
at com.pmease.quickbuild.plugin.report.engine.contribution.publisher.AbstractPublisher.run(AbstractPublisher.java:129)
at com.pmease.quickbuild.plugin.report.junit.JUnitPublisher$$EnhancerByCGLIB$$729525a7.CGLIB$run$31(<generated>)
at com.pmease.quickbuild.plugin.report.junit.JUnitPublisher$$EnhancerByCGLIB$$729525a7$$FastClassByCGLIB$$33f1b512.invoke(<generated>)
at net.sf.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:215)
at com.pmease.quickbuild.DefaultScriptEngine$Interpolator.intercept(DefaultScriptEngine.java:273)
at com.pmease.quickbuild.plugin.report.junit.JUnitPublisher$$EnhancerByCGLIB$$729525a7.run(<generated>)
at com.pmease.quickbuild.stepsupport.Step.execute(Step.java:539)
at com.pmease.quickbuild.stepsupport.StepExecutionJob.executeStepAwareJob(StepExecutionJob.java:30)
at com.pmease.quickbuild.stepsupport.StepAwareJob.executeBuildAwareJob(StepAwareJob.java:45)
at com.pmease.quickbuild.BuildAwareJob.execute(BuildAwareJob.java:60)
at com.pmease.quickbuild.grid.GridJob.run(GridJob.java:73)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
Caused by: com.pmease.quickbuild.plugin.report.engine.exception.DatabaseException: Unable to get connection from database url: jdbc:h2:/opt/buildagent/temp/abstractpublisher9628dbf2-f8e4-4577-8183-632ab679314d/Release Android Performance/junit
at com.pmease.quickbuild.plugin.report.engine.datastore.ConnectionManager.getConnection(ConnectionManager.java:25)
at com.pmease.quickbuild.plugin.report.engine.datastore.DbStore.getConnection(DbStore.java:384)
at com.pmease.quickbuild.plugin.report.engine.datastore.DbStore.open(DbStore.java:349)
... 28 more
Caused by: org.h2.jdbc.JdbcSQLException: Out of memory. [90108-175]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:332)
at org.h2.message.DbException.get(DbException.java:161)
at org.h2.message.DbException.convert(DbException.java:278)
at org.h2.engine.Database.openDatabase(Database.java:274)
at org.h2.engine.Database.<init>(Database.java:239)
at org.h2.engine.Engine.openSession(Engine.java:58)
at org.h2.engine.Engine.openSession(Engine.java:162)
at org.h2.engine.Engine.createSessionAndValidate(Engine.java:141)
at org.h2.engine.Engine.createSession(Engine.java:124)
at org.h2.engine.Engine.createSession(Engine.java:30)
at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:323)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:105)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:90)
at org.h2.Driver.connect(Driver.java:73)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
at com.pmease.quickbuild.plugin.report.engine.datastore.ConnectionManager.getConnection(ConnectionManager.java:23)
... 30 more
Caused by: java.lang.OutOfMemoryError: Java heap space
QB-2001: huge system-out element (85M) causes out of memory.If this is still your current case (huge system-out/system-err tag, like 85M or more), please go to administration page -> Plugin Mangement and configure JUnit plugin, make sure you have a small size for storing system output.
And please also read the discussion in issue
QB-2031which is also related to huge system-out. If your system-out or system-err tag has huge data, Java need a lot of memory to read it, so you may still have to add more memory to avoid this error.Also, if possible, you can send your original XML file to us so that we can know more about this issue.