[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Newsgroup Home]
[news.eclipse.birt] Re: Join table performance issue

I hit this issue using Rational Data Architect 7.5 which uses BIRT
2.3.0.
This is while running the built-in Physical Data Model report
which uses many joined data sets as well.  screenshot attached

Any workaround for this?

I still have 5.5GB left on the hard drive and 768MB allocated to the RDA process. RDA is still running so it didn't run out of memory.
So I don't think its an usage with temp space like the message says.



The stack trace is slightly different than yours maybe your using a different version of BIRT:


The following items have errors:

Data (id = 5160):
- Cannot execute the statement.

odaconsumer.CannotExecuteStatement ( 1 time(s) )
detail : org.eclipse.birt.report.engine.api.EngineException: Cannot execute the statement.
at org.eclipse.birt.report.engine.executor.ExecutionContext.addException(Unknown Source)
at org.eclipse.birt.report.engine.executor.ExecutionContext.addException(Unknown Source)
at org.eclipse.birt.report.engine.executor.QueryItemExecutor.executeQuery(Unknown Source)
at org.eclipse.birt.report.engine.executor.DataItemExecutor.execute(Unknown Source)
at org.eclipse.birt.report.engine.internal.executor.dup.SuppressDuplicateItemExecutor.execute(Unknown Source)
at org.eclipse.birt.report.engine.internal.executor.wrap.WrappedReportItemExecutor.execute(Unknown Source)
at org.eclipse.birt.report.engine.internal.executor.l18n.LocalizedReportItemExecutor.execute(Unknown Source)
at org.eclipse.birt.report.engine.layout.html.HTMLBlockStackingLM.layoutNodes(Unknown Source)
at org.eclipse.birt.report.engine.layout.html.HTMLStackingLM.layoutChildren(Unknown Source)
at org.eclipse.birt.report.engine.layout.html.HTMLAbstractLM.layout(Unknown Source)
at org.eclipse.birt.report.engine.layout.html.HTMLInlineStackingLM.resumeLayout(Unknown Source)
at org.eclipse.birt.report.engine.layout.html.HTMLInlineStackingLM.layoutNodes(Unknown Source)
at org.eclipse.birt.report.engine.layout.html.HTMLStackingLM.layoutChildren(Unknown Source)
at org.eclipse.birt.report.engine.layout.html.HTMLAbstractLM.layout(Unknown Source)
at org.eclipse.birt.report.engine.layout.html.HTMLBlockStackingLM.layoutNodes(Unknown Source)
at org.eclipse.birt.report.engine.layout.html.HTMLStackingLM.layoutChildren(Unknown Source)
at org.eclipse.birt.report.engine.layout.html.HTMLTableLM.layoutChildren(Unknown Source)
at org.eclipse.birt.report.engine.layout.html.HTMLAbstractLM.layout(Unknown Source)
at org.eclipse.birt.report.engine.layout.html.HTMLBlockStackingLM.layoutNodes(Unknown Source)
at org.eclipse.birt.report.engine.layout.html.HTMLPageLM.layout(Unknown Source)
at org.eclipse.birt.report.engine.layout.html.HTMLReportLayoutEngine.layout(Unknown Source)
at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.doRun(Unknown Source)
at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.run(Unknown Source)
at com.ibm.ccl.erf.birt.internal.generate.BIRTReportRenderer.runReport(Unknown Source)
at com.ibm.ccl.erf.birt.ui.internal.launch.BIRTReportLaunchConfigurationDelegate.launch(Unknown Source)
at org.eclipse.debug.internal.core.LaunchConfiguration.launch(Unknown Source)
at org.eclipse.debug.internal.core.LaunchConfiguration.launch(Unknown Source)
at org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(Unknown Source)
at org.eclipse.debug.internal.ui.DebugUIPlugin$8.run(Unknown Source)
at org.eclipse.core.internal.jobs.Worker.run(Unknown Source)





Table (id = 4192): - Exception in writing temporary file for large data set. There is not enough space on the disk.

data.engine.WriteTempError ( 1 time(s) )
detail : org.eclipse.birt.report.engine.api.EngineException: Exception in writing temporary file for large data set.
There is not enough space on the disk.
at org.eclipse.birt.report.engine.executor.ExecutionContext.addException(Unknown Source)
at org.eclipse.birt.report.engine.executor.ExecutionContext.addException(Unknown Source)
at org.eclipse.birt.report.engine.executor.QueryItemExecutor.executeQuery(Unknown Source)
at org.eclipse.birt.report.engine.executor.TableItemExecutor.execute(Unknown Source)
at org.eclipse.birt.report.engine.internal.executor.dup.SuppressDuplicateItemExecutor.execute(Unknown Source)
at org.eclipse.birt.report.engine.internal.executor.wrap.WrappedReportItemExecutor.execute(Unknown Source)
at org.eclipse.birt.report.engine.internal.executor.l18n.LocalizedReportItemExecutor.execute(Unknown Source)
at org.eclipse.birt.report.engine.layout.html.HTMLBlockStackingLM.layoutNodes(Unknown Source)
at org.eclipse.birt.report.engine.layout.html.HTMLPageLM.layout(Unknown Source)
at org.eclipse.birt.report.engine.layout.html.HTMLReportLayoutEngine.layout(Unknown Source)
at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.doRun(Unknown Source)
at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.run(Unknown Source)
at com.ibm.ccl.erf.birt.internal.generate.BIRTReportRenderer.runReport(Unknown Source)
at com.ibm.ccl.erf.birt.ui.internal.launch.BIRTReportLaunchConfigurationDelegate.launch(Unknown Source)
at org.eclipse.debug.internal.core.LaunchConfiguration.launch(Unknown Source)
at org.eclipse.debug.internal.core.LaunchConfiguration.launch(Unknown Source)
at org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(Unknown Source)
at org.eclipse.debug.internal.ui.DebugUIPlugin$8.run(Unknown Source)
at org.eclipse.core.internal.jobs.Worker.run(Unknown Source)





Neil Wang wrote:
> After waiting for one hour and this exception occurred. It seems like
> there is too much information to write.
>
> Table (id = 4192): - Exception in writing temporary file for large data
> set.
> There is not enough space on the disk. data.engine.WriteTempError ( 1
> time(s) )
> detail : org.eclipse.birt.data.engine.core.DataException: Exception in
> writing temporary file for large data set.There is not enough space on
> the disk. at
> org.eclipse.birt.data.engine.executor.cache.disk.DiskCache.<init>(DiskCache.java:107)


> at
> org.eclipse.birt.data.engine.executor.cache.SmartCacheHelper.populateData(SmartCacheHelper.java:305)


> at
> org.eclipse.birt.data.engine.executor.cache.SmartCacheHelper.initInstance(SmartCacheHelper.java:250)


> at
> org.eclipse.birt.data.engine.executor.cache.SmartCacheHelper.getResultSetCache(SmartCacheHelper.java:213)


> at
> org.eclipse.birt.data.engine.executor.cache.SmartCache.<init>(SmartCache.java:66)


> at
> org.eclipse.birt.data.engine.executor.transform.pass.PassUtil.populateOdiResultSet(PassUtil.java:143)


> at
> org.eclipse.birt.data.engine.executor.transform.pass.PassUtil.pass(PassUtil.java:66)


> at
> org.eclipse.birt.data.engine.executor.transform.pass.ResultSetProcessUtil.populateTempComputedColumns(ResultSetProcessUtil.java:125)


> at
> org.eclipse.birt.data.engine.executor.transform.pass.ResultSetProcessUtil.populateResultSet(ResultSetProcessUtil.java:99)


> at
> org.eclipse.birt.data.engine.executor.transform.pass.ResultSetProcessUtil.doPopulate(ResultSetProcessUtil.java:82)


> at
> org.eclipse.birt.data.engine.executor.transform.pass.PassManager.doPopulation(PassManager.java:208)


> at
> org.eclipse.birt.data.engine.executor.transform.pass.PassManager.doMultiPass(PassManager.java:149)


> at
> org.eclipse.birt.data.engine.executor.transform.pass.PassManager.pass(PassManager.java:87)


> at
> org.eclipse.birt.data.engine.executor.transform.pass.PassManager.populateResultSet(PassManager.java:65)


> at
> org.eclipse.birt.data.engine.executor.transform.ResultSetPopulator.populateResultSet(ResultSetPopulator.java:210)


> at
> org.eclipse.birt.data.engine.executor.transform.CachedResultSet.<init>(CachedResultSet.java:84)


> at
> org.eclipse.birt.data.engine.impl.PreparedJointDataSourceQuery$JointDataSetQueryExecutor.executeOdiQuery(PreparedJointDataSourceQuery.java:633)


> at
> org.eclipse.birt.data.engine.impl.QueryExecutor.execute(QueryExecutor.java:743)


> at
> org.eclipse.birt.data.engine.impl.ServiceForQueryResults.executeQuery(ServiceForQueryResults.java:183)


> at
> org.eclipse.birt.data.engine.impl.QueryResults.getResultIterator(QueryResults.java:148)


> at
> org.eclipse.birt.report.engine.data.dte.DteResultSet.<init>(DteResultSet.java:85)


> at
> org.eclipse.birt.report.engine.data.dte.DteDataEngine.doExecuteQuery(DteDataEngine.java:120)


> at
> org.eclipse.birt.report.engine.data.dte.AbstractDataEngine.execute(AbstractDataEngine.java:210)


> at
> org.eclipse.birt.report.engine.executor.ExecutionContext.executeQuery(ExecutionContext.java:1641)


> at
> org.eclipse.birt.report.engine.executor.QueryItemExecutor.executeQuery(QueryItemExecutor.java:62)


> at
> org.eclipse.birt.report.engine.executor.TableItemExecutor.execute(TableItemExecutor.java:73)


> at
> org.eclipse.birt.report.engine.internal.executor.l18n.LocalizedReportItemExecutor.execute(LocalizedReportItemExecutor.java:35)


> at
> org.eclipse.birt.report.engine.layout.html.HTMLPageLM.layoutChildren(HTMLPageLM.java:123)


> at
> org.eclipse.birt.report.engine.layout.html.HTMLPageLM.layout(HTMLPageLM.java:81)


> at
> org.eclipse.birt.report.engine.layout.html.HTMLReportLayoutEngine.layout(HTMLReportLayoutEngine.java:85)


> at
> org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.doRun(RunAndRenderTask.java:205)


> at
> org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.run(RunAndRenderTask.java:142)


> at
> org.eclipse.birt.report.service.ReportEngineService.runAndRenderReport(Unknown


> Source) at
> org.eclipse.birt.report.service.ReportEngineService.runAndRenderReport(Unknown


> Source) at
> org.eclipse.birt.report.service.BirtViewerReportService.runAndRenderReport(Unknown


> Source) at
> org.eclipse.birt.report.service.actionhandler.BirtRunAndRenderActionHandler.__execute(Unknown


> Source) at
> org.eclipse.birt.report.service.actionhandler.AbstractBaseActionHandler.execute(Unknown


> Source) at
> org.eclipse.birt.report.presentation.aggregation.layout.EngineFragment.doService(Unknown


> Source) at
> org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.service(Unknown


> Source) at
> org.eclipse.birt.report.servlet.BirtEngineServlet.__doGet(Unknown
> Source) at
> org.eclipse.birt.report.servlet.BaseReportEngineServlet.doGet(Unknown
> Source) at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
> at
> org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)


> at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)


> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)


> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)


> at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)


> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
> at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)


> at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)


> at
> org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246)


> at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)


> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
> at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> at
> org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2422)
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)


> at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)


> at
> org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)


> at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)


> at
> org.eclipse.tomcat.internal.EclipseErrorReportValve.invoke(EclipseErrorReportValve.java:153)


> at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)


> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
> at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)


> at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)


> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
> at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> at
> org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:199)
> at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:828)
> at
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:700)


> at
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:584)
> at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)


> at java.lang.Thread.run(Thread.java:810)Caused by: java.io.IOException:
> There is not enough space on the disk. at
> java.io.FileOutputStream.writeBytes(Native Method) at
> java.io.FileOutputStream.write(FileOutputStream.java:290) at
> java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:88)
> at java.io.BufferedOutputStream.write(BufferedOutputStream.java:132) at
> java.io.FilterOutputStream.write(FilterOutputStream.java:97) at
> org.eclipse.birt.data.engine.executor.cache.ResultObjectUtil.writeData(ResultObjectUtil.java:306)


> at
> org.eclipse.birt.data.engine.executor.cache.ResultObjectUtil.writeData(ResultObjectUtil.java:220)


> at
> org.eclipse.birt.data.engine.executor.cache.disk.DataFileWriter.write(DataFileWriter.java:102)


> at
> org.eclipse.birt.data.engine.executor.cache.disk.RowFile.writeRowsToFile(RowFile.java:134)


> at
> org.eclipse.birt.data.engine.executor.cache.disk.RowFile.writeRows(RowFile.java:101)


> at
> org.eclipse.birt.data.engine.executor.cache.disk.RowFile.write(RowFile.java:73)


> at
> org.eclipse.birt.data.engine.executor.cache.disk.DiskSortExport2.addNewRow(DiskSortExport2.java:156)


> at
> org.eclipse.birt.data.engine.executor.cache.disk.DiskSortExport2.innerExportRestData(DiskSortExport2.java:132)


> at
> org.eclipse.birt.data.engine.executor.cache.disk.DiskSortExport2.exportRestDataToDisk(DiskSortExport2.java:95)


> at
> org.eclipse.birt.data.engine.executor.cache.disk.DiskCacheResultSet.processRestResultObjects(DiskCacheResultSet.java:75)


> at
> org.eclipse.birt.data.engine.executor.cache.disk.DiskCache.<init>(DiskCache.java:102)


> .. 74 more
>
>
>
>

JPEG image