-
Bug
-
Resolution: Unresolved
-
Low
-
None
-
7.11.1, 7.13.0
-
7.11
-
3
-
Severity 2 - Major
-
Summary
Bubble Chart gadget shows "Opps - an error occured" message
Environment
Jira Software Standalone and Data Center Editions
Steps to Reproduce
There are no steps to reproduce. This issue is intermittent and happens when an automatic comment is added to a jira issue on failing to attach an image.
If such a comment is present on a JIRA issue, it's 'author' column value in the 'jiraaction' table will be 'NULL' (which is incorrect)
Expected Results
The bubble chart should ignore comments when their 'author' value in jiraaction table, column 'author' is set to NULL and still render correctly
Actual Results
Bubble Chart stops rendering correctly and shows the following error:
"Opps - an error occurred" message on the chart
The below error is shown on the affected issue comment:
Anonymous added a comment - An error occurred while adding attachments to this issue from the source email. Please check the attachments and re-send the email.
The following exception is thrown in the atlassian-jira.log:
2018-11-26 01:03:22,906 https-jsse-nio-10.101.31.30-443-exec-3 ERROR username 63x59676x1 o7n8ag 172.16.40.231 /rest/gadget/1.0/bubblechart/generate [c.a.p.r.c.error.jersey.ThrowableExceptionMapper] Uncaught exception thrown by REST service: null java.lang.NullPointerException at com.atlassian.jira.gadgets.system.bubblechart.ToIssueBubbleData.lambda$getCommentersForComments$0(ToIssueBubbleData.java:73) at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193) at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374) at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481) at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471) at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708) at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499) at com.atlassian.jira.gadgets.system.bubblechart.ToIssueBubbleData.getCommentersForComments(ToIssueBubbleData.java:74) at com.atlassian.jira.gadgets.system.bubblechart.ToIssueBubbleData.apply(ToIssueBubbleData.java:44) at com.atlassian.jira.gadgets.system.bubblechart.ToIssueBubbleData.apply(ToIssueBubbleData.java:21) at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193) at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374) at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481) at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471) at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708) at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499) at com.atlassian.jira.gadgets.system.bubblechart.BubbleChartResource.generateChart(BubbleChartResource.java:98) ... 2 filtered at java.lang.reflect.Method.invoke(Method.java:498) ... 19 filtered at com.atlassian.plugins.rest.module.RestDelegatingServletFilter$JerseyOsgiServletContainer.doFilter(RestDelegatingServletFilter.java:154) ... 1 filtered at com.atlassian.plugins.rest.module.RestDelegatingServletFilter.doFilter(RestDelegatingServletFilter.java:68) ... 41 filtered at com.atlassian.web.servlet.plugin.request.RedirectInterceptingFilter.doFilter(RedirectInterceptingFilter.java:21) ... 57 filtered at com.atlassian.jira.security.JiraSecurityFilter.lambda$doFilter$0(JiraSecurityFilter.java:66) ... 1 filtered at com.atlassian.jira.security.JiraSecurityFilter.doFilter(JiraSecurityFilter.java:64) ... 16 filtered at com.atlassian.plugins.rest.module.servlet.RestSeraphFilter.doFilter(RestSeraphFilter.java:37) ... 19 filtered at com.atlassian.jira.servermetrics.CorrelationIdPopulatorFilter.doFilter(CorrelationIdPopulatorFilter.java:30) ... 10 filtered at com.atlassian.web.servlet.plugin.request.RedirectInterceptingFilter.doFilter(RedirectInterceptingFilter.java:21) ... 4 filtered at com.atlassian.web.servlet.plugin.LocationCleanerFilter.doFilter(LocationCleanerFilter.java:36) ... 26 filtered at com.atlassian.jira.servermetrics.MetricsCollectorFilter.doFilter(MetricsCollectorFilter.java:25) ... 24 filtered at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
Notes
The issue is random and the root cause of the issue is unknown yet, in most cases JIRA will not auto comment on failed attachments, but under unknown set of circumstances it will
Workaround
1) Confirm if you're affected by this issue by checking if there any entries in 'jiraaction' table with 'author' value set to NULL.
Run the following SQL query in the JIRA database:
select * from jiraaction where author is null;
If there are any entries there – please take a note of the entries IDs and proceed to step 2
2) Delete the offending entries from the jiraaction table:
delete from jiraaction where id in ('issue ID1', 'Issue ID2');
where issue ID1, Issue ID2 - are the entry IDs determined in step 1 above
- is related to
-
JSDSERVER-5966 An error or empty content displays in the activity tab of issues fter switching project to Service Desk type due to comments from anonymous users
- Closed
- relates to
-
JRASERVER-59025 Disable auto-comment when attachment from email fails to be attached
- Gathering Interest