Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 352397

Summary: Running Sum in chart causes internal nullpointer
Product: z_Archived Reporter: Bob Tiernay <btiernay>
Component: BIRTAssignee: Lin Zhu <lzhu>
Status: RESOLVED FIXED QA Contact: Xiaoying Gu <bluesoldier>
Severity: blocker    
Priority: P3 CC: bluesoldier, btiernay, kazm, lzhu, mlabayru, tkopets
Version: 3.7.0Keywords: core, plan
Target Milestone: 3.7.2Flags: btiernay: review?
Hardware: All   
OS: All   
Whiteboard:
Bug Depends on:    
Bug Blocks: 355295    
Attachments:
Description Flags
birt-3-7-0-running-sum-nullpointer none

Description Bob Tiernay CLA 2011-07-18 19:14:50 EDT
Created attachment 199869 [details]
birt-3-7-0-running-sum-nullpointer

Running the attached report causes the following stack trace:

The following items have errors:

Chart (id = 9):
- null (Element ID:9)
null ( 1 time(s) )
detail : org.eclipse.birt.report.engine.api.EngineException: null (Element ID:9)
	at org.eclipse.birt.report.engine.executor.ExecutionContext.addException(ExecutionContext.java:1206)
	at org.eclipse.birt.report.engine.presentation.LocalizedContentVisitor.processExtendedContent(LocalizedContentVisitor.java:1046)
	at org.eclipse.birt.report.engine.presentation.LocalizedContentVisitor.localizeForeign(LocalizedContentVisitor.java:579)
	at org.eclipse.birt.report.engine.presentation.LocalizedContentVisitor.localize(LocalizedContentVisitor.java:163)
	at org.eclipse.birt.report.engine.internal.executor.l18n.LocalizedReportItemExecutor.execute(LocalizedReportItemExecutor.java:37)
	at org.eclipse.birt.report.engine.layout.html.HTMLBlockStackingLM.layoutNodes(HTMLBlockStackingLM.java:65)
	at org.eclipse.birt.report.engine.layout.html.HTMLPageLM.layout(HTMLPageLM.java:92)
	at org.eclipse.birt.report.engine.layout.html.HTMLReportLayoutEngine.layout(HTMLReportLayoutEngine.java:100)
	at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.doRun(RunAndRenderTask.java:180)
	at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.run(RunAndRenderTask.java:77)
	at org.eclipse.birt.report.service.ReportEngineService.runAndRenderReport(ReportEngineService.java:929)
	at org.eclipse.birt.report.service.BirtViewerReportService.runAndRenderReport(BirtViewerReportService.java:973)
	at org.eclipse.birt.report.service.actionhandler.BirtGetPageAllActionHandler.__execute(BirtGetPageAllActionHandler.java:131)
	at org.eclipse.birt.report.service.actionhandler.AbstractBaseActionHandler.execute(AbstractBaseActionHandler.java:90)
	at org.eclipse.birt.report.soapengine.processor.AbstractBaseDocumentProcessor.__executeAction(AbstractBaseDocumentProcessor.java:47)
	at org.eclipse.birt.report.soapengine.processor.AbstractBaseComponentProcessor.executeAction(AbstractBaseComponentProcessor.java:143)
	at org.eclipse.birt.report.soapengine.processor.BirtDocumentProcessor.handleGetPageAll(BirtDocumentProcessor.java:183)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.eclipse.birt.report.soapengine.processor.AbstractBaseComponentProcessor.process(AbstractBaseComponentProcessor.java:112)
	at org.eclipse.birt.report.soapengine.endpoint.BirtSoapBindingImpl.getUpdatedObjects(BirtSoapBindingImpl.java:66)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.apache.axis.providers.java.RPCProvider.invokeMethod(RPCProvider.java:397)
	at org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:186)
	at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:323)
	at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
	at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
	at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
	at org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:454)
	at org.apache.axis.server.AxisServer.invoke(AxisServer.java:281)
	at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:699)
	at org.eclipse.birt.report.servlet.BirtSoapMessageDispatcherServlet.doPost(BirtSoapMessageDispatcherServlet.java:265)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
	at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
	at org.eclipse.birt.report.servlet.BirtSoapMessageDispatcherServlet.service(BirtSoapMessageDispatcherServlet.java:122)
	at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
	at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
	at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:126)
	at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:60)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
	at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:317)
	at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
	at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
	at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
	at org.mortbay.jetty.Server.handle(Server.java:326)
	at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
	at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:939)
	at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:756)
	at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218)
	at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
	at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
	at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
Caused by: org.eclipse.birt.chart.exception.ChartException
	at org.eclipse.birt.chart.internal.datafeed.DataProcessor.mapToChartResultSet(DataProcessor.java:372)
	at org.eclipse.birt.chart.internal.datafeed.DataProcessor.generateRuntimeSeries(DataProcessor.java:507)
	at org.eclipse.birt.chart.factory.Generator.bindData(Generator.java:652)
	at org.eclipse.birt.chart.reportitem.ChartReportItemPresentationBase.bindData(ChartReportItemPresentationBase.java:729)
	at org.eclipse.birt.chart.reportitem.ChartReportItemPresentationBase.onRowSets(ChartReportItemPresentationBase.java:860)
	at org.eclipse.birt.chart.reportitem.ChartReportItemPresentationProxy.onRowSets(ChartReportItemPresentationProxy.java:108)
	at org.eclipse.birt.report.engine.presentation.LocalizedContentVisitor.processExtendedContent(LocalizedContentVisitor.java:1023)
	... 58 more
Caused by: java.lang.NullPointerException
	at org.eclipse.birt.core.util.IOUtil.writeInt(IOUtil.java:226)
	at org.eclipse.birt.core.util.IOUtil.writeObject(IOUtil.java:674)
	at org.eclipse.birt.data.engine.executor.transform.SimpleGroupCalculator.next(SimpleGroupCalculator.java:237)
	at org.eclipse.birt.data.engine.executor.transform.SimpleResultSet.next(SimpleResultSet.java:510)
	at org.eclipse.birt.data.engine.executor.transform.ResultSetWrapper.next(ResultSetWrapper.java:81)
	at org.eclipse.birt.data.engine.impl.ResultIterator.hasNextRow(ResultIterator.java:569)
	at org.eclipse.birt.data.engine.impl.ResultIterator.nextRow(ResultIterator.java:510)
	at org.eclipse.birt.data.engine.impl.ResultIterator.next(ResultIterator.java:460)
	at org.eclipse.birt.chart.reportitem.BaseGroupedQueryResultSetEvaluator.next(BaseGroupedQueryResultSetEvaluator.java:412)
	at org.eclipse.birt.chart.internal.datafeed.DataProcessor.evaluateRowSet(DataProcessor.java:1466)
	at org.eclipse.birt.chart.internal.datafeed.DataProcessor.mapToChartResultSet(DataProcessor.java:368)
	... 64 more
Comment 1 Bob Tiernay CLA 2011-08-04 19:50:29 EDT
Any progress on this bug? This effectively renders upgrading to the new release impossible. Also note that this seems to effect multiple aggregation functions other than sum (ie. running sum, count, etc.)
Comment 2 Bob Tiernay CLA 2011-09-22 21:32:33 EDT
Could you please confirm that this bug is reproducable?

Thanks,
Comment 3 Bob Tiernay CLA 2011-10-27 10:56:01 EDT
This is still failing with BIRT 3.7.1.v20110905. Could someone please confirm? Thanks
Comment 4 mlabayru CLA 2011-11-10 10:26:08 EST
(In reply to comment #3)
> This is still failing with BIRT 3.7.1.v20110905. Could someone please confirm?
> Thanks

I am getting the same problem in 3.7.1.
Comment 5 Taras Kopets CLA 2011-11-10 11:20:47 EST
I also get this error when I'm trying to use BIRT built-in function "Formatter.format" within beforeDrawLegendItem function of chart onRender event.
Comment 6 Bob Tiernay CLA 2011-12-13 19:45:42 EST
BIRT devs: Please test against the attached file and report you findings.

Thank you!
Comment 7 Bob Tiernay CLA 2011-12-15 10:13:14 EST
Just tested this again with the following binary and attached report and it is still failing:

http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/indigo/SR1/eclipse-reporting-indigo-SR1-linux-gtk.tar.gz
Comment 8 Bob Tiernay CLA 2012-02-21 19:41:12 EST
Is there a release coming out soon? This is a major bug that is preventing our company from moving to the simplified pojo environment.
Comment 9 Lin Zhu CLA 2012-02-22 01:28:30 EST
It is fixed. Please try latest 3.7.2 build.