Issue Details (XML | Word | Printable)

Key: CLOV-259
Type: Bug Bug
Status: Closed Closed
Resolution: Fixed
Priority: Major Major
Assignee: Nick Pellow [Atlassian]
Reporter: Nick Pellow [Atlassian]
Votes: 1
Watchers: 2
Operations

Add/Edit UI Mockup to this issue
If you were logged in you would be able to see more operations.
Clover

Method truncateEnd threw exception for reference $renderUtil in template html_res/src-file.vm at 90,204

Created: 12/May/08 06:44 PM   Updated: 23/Nov/08 09:31 PM
Component/s: Reporting
Affects Version/s: None
Fix Version/s: 2.4.2

Time Tracking:
Not Specified

Participants: Nick Pellow [Atlassian], Shaun Ervine and William Price
Since last comment: 3 weeks ago
Resolution Date: 23/Nov/08 09:31 PM
Labels:


 Description  « Hide
This happens during the rendering of the stack trace navigator.

see also: http://forums.atlassian.com/thread.jspa?messageID=257280305&#257280305



 All   Comments   Work Log   Change History      Sort Order: Ascending order - Click to sort in descending order
William Price added a comment - 07/Nov/08 01:23 PM
Can this issue be reopened? I occasionally see this error in our product's builds. Unfortunately, I don't know how to reproduce, either, but I suspect it might happen only when one or more tests have failed (just a hunch). Stacktrace follows:

[clover-report] Clover Version 2.3.2, built on July 15 2008 (build-732)
[clover-report] Loaded from: /opt/clover/clover-ant-2.3.2/lib/clover.jar
[clover-report] Clover: Commercial License registered to PROS Revenue Management.
[clover-report] Loading coverage database from: '/scratch/local/build/prosbuild/pricingmanager/pm-3-13-0-bld102/cloverdb_pricingmanager/test_coverage.db'
[clover-report] Loading historical coverage data from: '/PROSbuilds/pricingmanager/clover/clover_history_data'
[clover-report] Loading historical coverage data from: '/PROSbuilds/pricingmanager/clover/clover_history_data'
[clover-report] Processed 2286 test case results from 367 results files.
[clover-report] Writing report to '/PROSbuilds/pricingmanager/clover/coverage_report/pricingmanager'
[clover-report] [Velocity] Method truncateEnd threw exception for reference $renderUtil in template html_res/src-file.vm at [88,204]
[clover-report] Invocation of method 'truncateEnd' in class com.cenqua.clover.reporters.html.HtmlRenderingSupport threw exception java.lang.NullPointerException @ html_res/src-file.vm[88,217]
[clover-report] clover.org.apache.velocity.exception.MethodInvocationException: Invocation of method 'truncateEnd' in class com.cenqua.clover.reporters.html.HtmlRenderingSupport threw exception java.lang.NullPointerException @ html_res/src-file.vm[88,217]clover.org.apache.velocity.exception.MethodInvocationException: Invocation of method 'truncateEnd' in class com.cenqua.clover.reporters.html.HtmlRenderingSupport threw exception java.lang.NullPointerException @ html_res/src-file.vm[88,217]
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:286)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:203)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:294)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:74)
[clover-report] at clover.org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:448)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:170)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:74)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:88)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:318)
[clover-report] at clover.org.apache.velocity.Template.merge(Template.java:254)
[clover-report] at clover.org.apache.velocity.app.VelocityEngine.mergeTemplate(VelocityEngine.java:508)
[clover-report] at com.cenqua.clover.reporters.html.HtmlReportUtil.mergeTemplateToFile(HtmlReportUtil.java:67)
[clover-report] at com.cenqua.clover.reporters.html.HtmlReportUtil.mergeTemplateToFile(HtmlReportUtil.java:83)
[clover-report] at com.cenqua.clover.reporters.html.RenderFileAction.render(RenderFileAction.java:136)
[clover-report] at com.cenqua.clover.reporters.html.RenderFileAction.call(RenderFileAction.java:104)
[clover-report] at com.cenqua.clover.util.CloverExecutors$LoggingCallable.call(CloverExecutors.java:88)
[clover-report] at clover.edu.emory.mathcs.backport.java.util.concurrent.FutureTask.run(FutureTask.java:176)
[clover-report] at clover.edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:987)
[clover-report] at clover.edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:528)
[clover-report] at clover.edu.emory.mathcs.backport.java.util.concurrent.helpers.ThreadHelpers$1.run(ThreadHelpers.java:34)
[clover-report] at java.lang.Thread.run(Thread.java:595)
[clover-report] Caused by: java.lang.NullPointerException
[clover-report] at com.cenqua.clover.util.Formatting.restrictLength(Formatting.java:73)
[clover-report] at com.cenqua.clover.reporters.html.HtmlRenderingSupport.truncateEnd(HtmlRenderingSupport.java:344)
[clover-report] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[clover-report] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[clover-report] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[clover-report] at java.lang.reflect.Method.invoke(Method.java:585)
[clover-report] at clover.org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:295)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:245)
[clover-report] ... 20 more
[clover-report] [Velocity] Method truncateEnd threw exception for reference $renderUtil in template html_res/src-file.vm at [88,204]
[clover-report] Invocation of method 'truncateEnd' in class com.cenqua.clover.reporters.html.HtmlRenderingSupport threw exception java.lang.NullPointerException @ html_res/src-file.vm[88,217]
[clover-report] clover.org.apache.velocity.exception.MethodInvocationException: Invocation of method 'truncateEnd' in class com.cenqua.clover.reporters.html.HtmlRenderingSupport threw exception java.lang.NullPointerException @ html_res/src-file.vm[88,217]clover.org.apache.velocity.exception.MethodInvocationException: Invocation of method 'truncateEnd' in class com.cenqua.clover.reporters.html.HtmlRenderingSupport threw exception java.lang.NullPointerException @ html_res/src-file.vm[88,217]
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:286)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:203)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:294)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:74)
[clover-report] at clover.org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:448)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:170)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:74)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:88)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:318)
[clover-report] at clover.org.apache.velocity.Template.merge(Template.java:254)
[clover-report] at clover.org.apache.velocity.app.VelocityEngine.mergeTemplate(VelocityEngine.java:508)
[clover-report] at com.cenqua.clover.reporters.html.HtmlReportUtil.mergeTemplateToFile(HtmlReportUtil.java:67)
[clover-report] at com.cenqua.clover.reporters.html.HtmlReportUtil.mergeTemplateToFile(HtmlReportUtil.java:83)
[clover-report] at com.cenqua.clover.reporters.html.RenderFileAction.render(RenderFileAction.java:136)
[clover-report] at com.cenqua.clover.reporters.html.RenderFileAction.call(RenderFileAction.java:104)
[clover-report] at com.cenqua.clover.util.CloverExecutors$LoggingCallable.call(CloverExecutors.java:88)
[clover-report] at clover.edu.emory.mathcs.backport.java.util.concurrent.FutureTask.run(FutureTask.java:176)
[clover-report] at clover.edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:987)
[clover-report] at clover.edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:528)
[clover-report] at clover.edu.emory.mathcs.backport.java.util.concurrent.helpers.ThreadHelpers$1.run(ThreadHelpers.java:34)
[clover-report] at java.lang.Thread.run(Thread.java:595)
[clover-report] Caused by: java.lang.NullPointerException
[clover-report] at com.cenqua.clover.util.Formatting.restrictLength(Formatting.java:73)
[clover-report] at com.cenqua.clover.reporters.html.HtmlRenderingSupport.truncateEnd(HtmlRenderingSupport.java:344)
[clover-report] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[clover-report] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[clover-report] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[clover-report] at java.lang.reflect.Method.invoke(Method.java:585)
[clover-report] at clover.org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:295)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:245)
[clover-report] ... 20 more
[clover-report] [Velocity] Method truncateEnd threw exception for reference $renderUtil in template html_res/src-file.vm at [88,204]
[clover-report] Invocation of method 'truncateEnd' in class com.cenqua.clover.reporters.html.HtmlRenderingSupport threw exception java.lang.NullPointerException @ html_res/src-file.vm[88,217]
[clover-report] clover.org.apache.velocity.exception.MethodInvocationException: Invocation of method 'truncateEnd' in class com.cenqua.clover.reporters.html.HtmlRenderingSupport threw exception java.lang.NullPointerException @ html_res/src-file.vm[88,217]clover.org.apache.velocity.exception.MethodInvocationException: Invocation of method 'truncateEnd' in class com.cenqua.clover.reporters.html.HtmlRenderingSupport threw exception java.lang.NullPointerException @ html_res/src-file.vm[88,217]
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:286)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:203)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:294)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:74)
[clover-report] at clover.org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:448)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:170)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:74)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:88)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:318)
[clover-report] at clover.org.apache.velocity.Template.merge(Template.java:254)
[clover-report] at clover.org.apache.velocity.app.VelocityEngine.mergeTemplate(VelocityEngine.java:508)
[clover-report] at com.cenqua.clover.reporters.html.HtmlReportUtil.mergeTemplateToFile(HtmlReportUtil.java:67)
[clover-report] at com.cenqua.clover.reporters.html.HtmlReportUtil.mergeTemplateToFile(HtmlReportUtil.java:83)
[clover-report] at com.cenqua.clover.reporters.html.RenderFileAction.render(RenderFileAction.java:136)
[clover-report] at com.cenqua.clover.reporters.html.RenderFileAction.call(RenderFileAction.java:104)
[clover-report] at com.cenqua.clover.util.CloverExecutors$LoggingCallable.call(CloverExecutors.java:88)
[clover-report] at clover.edu.emory.mathcs.backport.java.util.concurrent.FutureTask.run(FutureTask.java:176)
[clover-report] at clover.edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:987)
[clover-report] at clover.edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:528)
[clover-report] at clover.edu.emory.mathcs.backport.java.util.concurrent.helpers.ThreadHelpers$1.run(ThreadHelpers.java:34)
[clover-report] at java.lang.Thread.run(Thread.java:595)
[clover-report] Caused by: java.lang.NullPointerException
[clover-report] at com.cenqua.clover.util.Formatting.restrictLength(Formatting.java:73)
[clover-report] at com.cenqua.clover.reporters.html.HtmlRenderingSupport.truncateEnd(HtmlRenderingSupport.java:344)
[clover-report] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[clover-report] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[clover-report] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[clover-report] at java.lang.reflect.Method.invoke(Method.java:585)
[clover-report] at clover.org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:295)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:245)
[clover-report] ... 20 more
[clover-report] [Velocity] Method truncateEnd threw exception for reference $renderUtil in template html_res/src-file.vm at [88,204]
[clover-report] Invocation of method 'truncateEnd' in class com.cenqua.clover.reporters.html.HtmlRenderingSupport threw exception java.lang.NullPointerException @ html_res/src-file.vm[88,217]
[clover-report] clover.org.apache.velocity.exception.MethodInvocationException: Invocation of method 'truncateEnd' in class com.cenqua.clover.reporters.html.HtmlRenderingSupport threw exception java.lang.NullPointerException @ html_res/src-file.vm[88,217]clover.org.apache.velocity.exception.MethodInvocationException: Invocation of method 'truncateEnd' in class com.cenqua.clover.reporters.html.HtmlRenderingSupport threw exception java.lang.NullPointerException @ html_res/src-file.vm[88,217]
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:286)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:203)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:294)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:74)
[clover-report] at clover.org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:448)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:170)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:74)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:88)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:318)
[clover-report] at clover.org.apache.velocity.Template.merge(Template.java:254)
[clover-report] at clover.org.apache.velocity.app.VelocityEngine.mergeTemplate(VelocityEngine.java:508)
[clover-report] at com.cenqua.clover.reporters.html.HtmlReportUtil.mergeTemplateToFile(HtmlReportUtil.java:67)
[clover-report] at com.cenqua.clover.reporters.html.HtmlReportUtil.mergeTemplateToFile(HtmlReportUtil.java:83)
[clover-report] at com.cenqua.clover.reporters.html.RenderFileAction.render(RenderFileAction.java:136)
[clover-report] at com.cenqua.clover.reporters.html.RenderFileAction.call(RenderFileAction.java:104)
[clover-report] at com.cenqua.clover.util.CloverExecutors$LoggingCallable.call(CloverExecutors.java:88)
[clover-report] at clover.edu.emory.mathcs.backport.java.util.concurrent.FutureTask.run(FutureTask.java:176)
[clover-report] at clover.edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:987)
[clover-report] at clover.edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:528)
[clover-report] at clover.edu.emory.mathcs.backport.java.util.concurrent.helpers.ThreadHelpers$1.run(ThreadHelpers.java:34)
[clover-report] at java.lang.Thread.run(Thread.java:595)
[clover-report] Caused by: java.lang.NullPointerException
[clover-report] at com.cenqua.clover.util.Formatting.restrictLength(Formatting.java:73)
[clover-report] at com.cenqua.clover.reporters.html.HtmlRenderingSupport.truncateEnd(HtmlRenderingSupport.java:344)
[clover-report] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[clover-report] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[clover-report] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[clover-report] at java.lang.reflect.Method.invoke(Method.java:585)
[clover-report] at clover.org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:295)
[clover-report] at clover.org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:245)
[clover-report] ... 20 more
[clover-report] Done. Processed 176 packages in 93833ms (533ms per package).
[clover-report] Writing historical report to '/PROSbuilds/pricingmanager/clover/clover_history_reports/html/pricingmanager_historical.html'
[clover-report] Read 995 history points.
[clover-report] using movers interval of 31 minutes
[clover-report] using movers interval of 31 minutes
[clover-report] Done.
[clover-report] Read 995 history points.
[clover-report] using movers interval of 31 minutes
[clover-report] using movers interval of 31 minutes


Shaun Ervine added a comment - 07/Nov/08 05:42 PM
Testing. Looks okay

Nick Pellow [Atlassian] added a comment - 09/Nov/08 06:28 PM
Hi William,

Not sure exactly what is causing this sporadic bug, however I have added a defensive check for the NPE and will upload a patched build for you here if you wish.
Otherwise, we will be releasing 2.4.2 - hopefully soon with this patch.

Please let me know what's best for you,
Cheers,
Nick


William Price added a comment - 10/Nov/08 10:17 AM
Hi Nick,

I think we'll try picking up 2.4.2 when it's out so we can try out the new filteredElements feature in the coverage reports.


Nick Pellow [Atlassian] added a comment - 10/Nov/08 05:39 PM
Hi William,

2.4.0 is already out if you wish to start using the filteredElements column already.

Cheers,
Nick