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

Poor performance when creating issues due to high number of Components

    XMLWordPrintable

Details

    Description

      Steps to reproduce

      If a project has a high number of Components the Create Issue popup is either slow to load(Chrome & Firefox) or will return a "Read timed out" in Internet Explorer.
      This was tested with 20,000+ Components.

      Results

      • Internet Explorer throws error when clicking the 'Create Issue' link in navigation header:
        {"message":"Read timed out","status-code":500,"stack-trace":"java.net.SocketTimeoutException: Read timed out\n\tat java.net.SocketInputStream.socketRead0(Native Method)\n\tat java.net.SocketInputStream.read(SocketInputStream.java:129)\n\tat org.apache.coyote.http11.InternalInputBuffer.fill(InternalInputBuffer.java:532)\n\tat org.apache.coyote.http11.InternalInputBuffer.fill(InternalInputBuffer.java:501)\n\tat org.apache.coyote.http11.InternalInputBuffer$InputStreamInputBuffer.doRead(InternalInputBuffer.java:563)\n\tat org.apache.coyote.http11.filters.IdentityInputFilter.doRead(IdentityInputFilter.java:118)\n\tat org.apache.coyote.http11.AbstractInputBuffer.doRead(AbstractInputBuffer.java:346)\n\tat org.apache.coyote.Request.doRead(Request.java:422)\n\tat org.apache.catalina.connector.InputBuffer.realReadBytes(InputBuffer.java:290)\n\tat org.apache.tomcat.util.buf.ByteChunk.substract(ByteChunk.java:431)\n\tat org.apache.catalina.connector.InputBuffer.read(InputBuffer.java:315)\n\tat org.apache.catalina.connector.CoyoteInputStream.read(CoyoteInputStream.java:200)\n\tat org.codehaus.jackson.impl.ByteSourceBootstrapper.ensureLoaded(ByteSourceBootstrapper.java:507)\n\tat org.codehaus.jackson.impl.ByteSourceBootstrapper.detectEncoding(ByteSourceBootstrapper.java:129)\n\tat org.codehaus.jackson.impl.ByteSourceBootstrapper.constructParser(ByteSourceBootstrapper.java:224)\n\tat org.codehaus.jackson.JsonFactory._createJsonParser(JsonFactory.java:785)\n\tat org.codehaus.jackson.JsonFactory.createJsonParser(JsonFactory.java:561)\n\tat org.codehaus.jackson.jaxrs.JacksonJsonProvider.readFrom(JacksonJsonProvider.java:414)\n\tat com.sun.jersey.spi.container.ContainerRequest.getEntity(ContainerRequest.java:474)\n\tat com.sun.jersey.server.impl.model.method.dispatch.EntityParamDispatchProvider$EntityInjectable.getValue(EntityParamDispatchProvider.java:123)\n\tat com.sun.jersey.server.impl.inject.InjectableValuesProvider.getInjectableValues(InjectableValuesProvider.java:46)\n\tat com.atlassian.plugins.rest.common.interceptor.impl.DispatchProviderHelper$EntityParamInInvoker.getParams(DispatchProviderHelper.java:159)\n\tat com.atlassian.plugins.rest.common.interceptor.impl.DispatchProviderHelper$ResponseOutInvoker._dispatch(DispatchProviderHelper.java:228)\n\tat com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:75)\n\tat com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:288)\n\tat com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147)\n\tat com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:108)\n\tat com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147)\n\tat com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(RootResourceClassesRule.java:84)\n\tat com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1469)\n\tat com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1400)\n\tat com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1349)\n\tat com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1339)\n\tat com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:416)\n\tat com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:537)\n\tat com.atlassian.plugins.rest.module.RestDelegatingServletFilter$JerseyOsgiServletContainer.doFilter(RestDelegatingServletFilter.java:178)\n\tat com.sun.jersey.spi.container.servlet.ServletContainer.doFilter(ServletContainer.java:795)\n\tat com.atlassian.plugins.rest.module.RestDelegatingServletFilter.doFilter(RestDelegatingServletFilter.java:73)\n\tat com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74)\n\tat com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42)\n\tat com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:77)\n\tat com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:63)\n\tat com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74)\n\tat com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42)\n\tat com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:66)\n\tat com.atlassian.plugins.rest.module.servlet.RestServletUtilsUpdaterFilter.doFilterInternal(RestServletUtilsUpdaterFilter.java:26)\n\tat com.atlassian.plugins.rest.module.servlet.RestServletUtilsUpdaterFilter.doFilter(RestServletUtilsUpdaterFilter.java:40)\n\tat com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74)\n\tat
        
      • Chrome will load the Create Issue popup slowly, and entering anything in the Components field will cause high CPU load and 10sec+ for anything entered in the field to register.
      • Firefox appears to be the least affected browser. Although not as fast as one might desire, the load time is only a few seconds for both Create Issue popup and for anything to register in the Components field.

      Workaround

      Any slow load time during Auto-Complete in the Components field will not be affected by this. This can be used to work around the problem in Internet Explorer, in case it is not possible to use a different browser.

      Attachments

        Issue Links

          Activity

            People

              cf7069360d7e Mateusz Witkowski
              pkirkeby Pelle Kirkeby (Inactive)
              Votes:
              5 Vote for this issue
              Watchers:
              8 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: