Uploaded image for project: 'Jira Data Center'
  1. Jira Data Center
  2. JRASERVER-16902

Two Dimensional Filter Statistics breaks on Select CF with same value in two contexts, one of which is not associated with any project.

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Low
    • 3.13.5
    • 3.13.3
    • Dashboard & Gadgets
    • Standalone, RHEL 5, Postgres 8.3.7, JDK 1.6.0_07

    Description

      Its confusing to describe, but easy (relatively) to isolate:

      Create two projects, P and Q. Create a Select List custom field, S. In the default context, add two items: A and B. Associate the default context with project P. Create a new context, associated with project Q. Add item A, same as in the default context.

      Create several issues in project A, setting the custom field S to value A.

      Add a 2d filter statistics portlet with S on one axis and anything on the other axis.

      This will work. Now delete project Q. The 2nd context in S will no longer be associated with any projects.

      Instead, the portlet will display:

      2009-04-07 16:18:13,680 http-8080-Processor2 ERROR [velocity] Method getSearchUrlForHeaderCell threw exception for reference $portlet in template templates/plugins/jira/portlets/twodimensionalfilterstats.vm at
        [37,38]
      2009-04-07 16:18:13,680 http-8080-Processor2 ERROR [com.atlassian.velocity.DefaultVelocityManager] MethodInvocationException occurred getting message body from Velocity: java.lang.NullPointerException
      java.lang.NullPointerException
              at java.util.Arrays$ArrayList.<init>(Arrays.java:3357)
              at java.util.Arrays.asList(Arrays.java:3343)
              at com.atlassian.jira.util.ofbiz.GenericValueUtils.transformToStringIdsList(GenericValueUtils.java:101)
              at com.atlassian.jira.issue.customfields.converters.SelectConverter.getPossibleSearchContextFromValue(SelectConverter.java:76)
              at com.atlassian.jira.issue.customfields.statistics.SelectStatisticsMapper.getSearchContextFromValue(SelectStatisticsMapper.java:31)
              at com.atlassian.jira.issue.customfields.statistics.AbstractCustomFieldStatisticsMapper.getSearchUrlSuffix(AbstractCustomFieldStatisticsMapper.java:50)
              at com.atlassian.jira.issue.statistics.util.StatisticsMapperWrapper.getSearchUrlSuffix(StatisticsMapperWrapper.java:35)
              at com.atlassian.jira.portal.portlets.TwoDimensionalStatsPortlet.getSearchUrlForHeaderCell(TwoDimensionalStatsPortlet.java:119)
              at sun.reflect.GeneratedMethodAccessor219.invoke(Unknown Source)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:597)
              at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:267)
              at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:197)
              at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:175)
              at org.apache.velocity.runtime.parser.node.ASTReference.value(ASTReference.java:327)
              at org.apache.velocity.runtime.parser.node.ASTExpression.value(ASTExpression.java:51)
              at org.apache.velocity.runtime.parser.node.ASTSetDirective.render(ASTSetDirective.java:95)
              at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:55)
              at org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:166)
              at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:114)
              at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:55)
              at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:230)
              at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:89)
              at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:55)
              at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:70)
              at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:230)
              at org.apache.velocity.Template.merge(Template.java:256)
              at org.apache.velocity.app.VelocityEngine.mergeTemplate(VelocityEngine.java:450)
      

      This can be traced to com.atlassian.jira.issue.customfields.converters.SelectConverter#getPossibleSearchContextFromValue

      Note: This issue appears closely related to JRA-9303, but is either a regression in 3.13.3 or is manifested from a different root cause.

      Attachments

        1. Portlet Error Log
          11 kB
        2. Portlet Log Error 3.12
          9 kB

        Issue Links

          Activity

            People

              mlassau Mark Lassau (Inactive)
              eb62b961c58b John Knight
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: