Uploaded image for project: 'Jira Cloud'
  1. Jira Cloud
  2. JRACLOUD-67006

Issue query with JQL via JIRA REST API returning internal server error and stackoverflow in JIRA logs

    XMLWordPrintable

Details

    Description

      Summary

      User can't use JQL query to look for tickets assigned to specific assignees via JIRA REST end point. It returns Internal Server Error when ran directly on browser.

      Investigation Done

      When trying to search for tickets assigned to a user via issue navigator, it works but when used via JIRA REST call, it fails.

      https://<DOMAIN_NAME>.atlassian.net/rest/api/2/search?jql=assignee=admin
      
      {"errorMessages":["Internal server error"],"errors":{}}
      

      It seems that this problem happens when user uses search?jql=assignee=admin . If the assignee has assigned issues, the server error is returned.

      Stackoverflow errors can also be seen on the logs.

      2017-06-07 14:18:08.109384500 2017-06-07 14:18:08,089 http-nio-3006-exec-4 ERROR admin 858x74632x2  104.192.142.137 /rest/api/2/search [c.a.j.rest.exception.ExceptionInterceptor] Returning internal server error in response
      2017-06-07 14:18:08.109387500 java.lang.reflect.InvocationTargetException
      2017-06-07 14:18:08.109387500   at sun.reflect.GeneratedMethodAccessor361.invoke(Unknown Source)
      2017-06-07 14:18:08.109388500   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      2017-06-07 14:18:08.109388500   at java.lang.reflect.Method.invoke(Method.java:498)
      2017-06-07 14:18:08.109437500   at com.atlassian.plugins.rest.common.interceptor.impl.DispatchProviderHelper$TypeOutInvoker$1.invoke(DispatchProviderHelper.java:168)
      2017-06-07 14:18:08.109438500   at com.atlassian.plugins.rest.common.interceptor.impl.DispatchProviderHelper$1.intercept(DispatchProviderHelper.java:82)
      2017-06-07 14:18:08.109438500   ... 3 filtered
      2017-06-07 14:18:08.109439500   at com.atlassian.jira.rest.exception.ExceptionInterceptor.intercept(ExceptionInterceptor.java:55)
      2017-06-07 14:18:08.109448500   ... 1 filtered
      2017-06-07 14:18:08.109448500   at com.atlassian.jira.rest.v2.issue.scope.RequestScopeInterceptor.intercept(RequestScopeInterceptor.java:39)
      2017-06-07 14:18:08.109449500   ... 14 filtered
      2017-06-07 14:18:08.109449500   at com.atlassian.plugins.rest.module.RestDelegatingServletFilter$JerseyOsgiServletContainer.doFilter(RestDelegatingServletFilter.java:156)
      2017-06-07 14:18:08.109459500   ... 1 filtered
      2017-06-07 14:18:08.109460500   at com.atlassian.plugins.rest.module.RestDelegatingServletFilter.doFilter(RestDelegatingServletFilter.java:70)
      2017-06-07 14:18:08.109460500   ... 11 filtered
      2017-06-07 14:18:08.109461500   at com.atlassian.servicedesk.internal.web.ExternalCustomerLockoutFilter.doFilter(ExternalCustomerLockoutFilter.java:56)
      2017-06-07 14:18:08.109467500   ... 9 filtered
      2017-06-07 14:18:08.109468500   at com.atlassian.web.servlet.plugin.request.RedirectInterceptingFilter.doFilter(RedirectInterceptingFilter.java:21)
      2017-06-07 14:18:08.109468500   ... 20 filtered
      2017-06-07 14:18:08.109468500   at com.atlassian.jira.plugins.rest.HOT25715FixServletFilter.doFilter(HOT25715FixServletFilter.java:46)
      2017-06-07 14:18:08.109469500   ... 25 filtered
      2017-06-07 14:18:08.109473500   at com.atlassian.plugin.connect.plugin.auth.scope.ApiScopingFilter.doFilter(ApiScopingFilter.java:97)
      2017-06-07 14:18:08.109474500   ... 3 filtered
      2017-06-07 14:18:08.109474500   at com.atlassian.jira.plugins.hipchat.web.filter.TaskSchedulerFilter.doFilter(TaskSchedulerFilter.java:45)
      2017-06-07 14:18:08.109474500   ... 18 filtered
      2017-06-07 14:18:08.109474500   at com.atlassian.jira.unbundleordie.idp.UnbundlingAuthenticationFilter.doFilter(UnbundlingAuthenticationFilter.java:25)
      2017-06-07 14:18:08.109479500   ... 3 filtered
      2017-06-07 14:18:08.109479500   at com.atlassian.jira.security.JiraSecurityFilter.lambda$doFilter$0(JiraSecurityFilter.java:95)
      2017-06-07 14:18:08.109484500   ... 1 filtered
      2017-06-07 14:18:08.109484500   at com.atlassian.jira.security.JiraSecurityFilter.doFilter(JiraSecurityFilter.java:93)
      2017-06-07 14:18:08.109484500   ... 16 filtered
      2017-06-07 14:18:08.109485500   at com.atlassian.plugins.rest.module.servlet.RestSeraphFilter.doFilter(RestSeraphFilter.java:37)
      2017-06-07 14:18:08.109485500   ... 7 filtered
      2017-06-07 14:18:08.109485500   at com.atlassian.jira.rest.auth.JiraRestSeraphAuthFilter.doFilter(JiraRestSeraphAuthFilter.java:45)
      2017-06-07 14:18:08.109489500   ... 3 filtered
      2017-06-07 14:18:08.109489500   at com.atlassian.servicedesk.plugins.cm.internal.auth.filter.LocalServiceDeskUserAuthenticationFilter.doFilter(LocalServiceDeskUserAuthenticationFilter.java:101)
      2017-06-07 14:18:08.109490500   ... 8 filtered
      2017-06-07 14:18:08.109490500   at com.atlassian.studio.jira.homepage.CloudHomepageFilter$Action.lambda$nextInFilterChain$1(CloudHomepageFilter.java:115)
      2017-06-07 14:18:08.109499500   at com.atlassian.studio.jira.homepage.CloudHomepageFilter.doFilter(CloudHomepageFilter.java:73)
      2017-06-07 14:18:08.109500500   at com.atlassian.studio.jira.homepage.CloudHomepageFilter$Provider.doFilter(CloudHomepageFilter.java:134)
      2017-06-07 14:18:08.109500500   ... 21 filtered
      2017-06-07 14:18:08.109500500   at com.atlassian.plugin.connect.plugin.auth.oauth2.DefaultSalAuthenticationFilter.doFilter(DefaultSalAuthenticationFilter.java:81)
      2017-06-07 14:18:08.109508500   ... 3 filtered
      2017-06-07 14:18:08.109508500   at com.atlassian.plugin.connect.plugin.auth.user.ThreeLeggedAuthFilter.doFilter(ThreeLeggedAuthFilter.java:111)
      2017-06-07 14:18:08.109508500   ... 3 filtered
      2017-06-07 14:18:08.109508500   at com.atlassian.servicedesk.internal.web.CustomerContextSettingFilter.lambda$invokeFilterChain$0(CustomerContextSettingFilter.java:195)
      2017-06-07 14:18:08.109513500   at com.atlassian.servicedesk.internal.utils.context.ReentrantThreadLocalBasedCodeContext.rteInvoke(ReentrantThreadLocalBasedCodeContext.java:139)
      2017-06-07 14:18:08.109513500   at com.atlassian.servicedesk.internal.utils.context.ReentrantThreadLocalBasedCodeContext.runOutOfContext(ReentrantThreadLocalBasedCodeContext.java:92)
      2017-06-07 14:18:08.109518500   at com.atlassian.servicedesk.internal.utils.context.CustomerContextServiceImpl.runOutOfCustomerContext(CustomerContextServiceImpl.java:64)
      2017-06-07 14:18:08.109518500   at com.atlassian.servicedesk.internal.web.CustomerContextSettingFilter.outOfCustomerContext(CustomerContextSettingFilter.java:188)
      2017-06-07 14:18:08.109519500   at com.atlassian.servicedesk.internal.web.CustomerContextSettingFilter.doFilterImpl(CustomerContextSettingFilter.java:144)
      2017-06-07 14:18:08.109524500   at com.atlassian.servicedesk.internal.web.CustomerContextSettingFilter.doFilter(CustomerContextSettingFilter.java:135)
      2017-06-07 14:18:08.109525500   ... 4 filtered
      2017-06-07 14:18:08.109525500   at com.atlassian.jwt.internal.servlet.JwtAuthFilter.doFilter(JwtAuthFilter.java:32)
      2017-06-07 14:18:08.109525500   ... 8 filtered
      .
      .
      .
      2017-06-07 14:18:08.109542500 Caused by: java.lang.StackOverflowError
      2017-06-07 14:18:08.109542500   at com.querydsl.core.support.SerializerBase.visitOperation(SerializerBase.java:256)
      2017-06-07 14:18:08.109542500   at com.querydsl.sql.SQLSerializer.visitOperation(SQLSerializer.java:924)
      2017-06-07 14:18:08.109543500   at com.querydsl.core.support.SerializerBase.visit(SerializerBase.java:231)
      2017-06-07 14:18:08.109547500   at com.querydsl.core.support.SerializerBase.visit(SerializerBase.java:31)
      

      However if you run a search for all issues assigned to the sysadmin (no issues raised by sysadmin), results are returned normally.

      https://<DOMAIN_NAME>.atlassian.net/rest/api/2/search?jql=assignee=sysadmin
      
      {"startAt":0,"maxResults":50,"total":0,"issues":[]}
      

      Dig a bit deeper and I also found out issues cannot be queried by JIRA REST API as well. Returns the same internal server error.

      https://<DOMAIN_NAME>.atlassian.net/rest/api/latest/issue/<TICKET_ID>
      
      {"errorMessages":["Internal server error"],"errors":{}}
      

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              vchin Vincent Chin (Inactive)
              Votes:
              1 Vote for this issue
              Watchers:
              10 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: