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

User Picker is inefficient with lots of users

XMLWordPrintable

      In instances with lots of users, sometimes this call shows up disproportionately in thread dumps:

      "http-bio-8080-exec-606" daemon prio=3 tid=0x000000000655f800 nid=0x1548 runnable [0xfffffd7fc09db000]
         java.lang.Thread.State: RUNNABLE
      	at java.lang.String.toLowerCase(String.java:2430)
      	at java.lang.String.toLowerCase(String.java:2524)
      	at com.atlassian.jira.bc.user.search.UserMatcherPredicate.apply(UserMatcherPredicate.java:51)
      	at com.atlassian.jira.bc.user.search.UserMatcherPredicate.apply(UserMatcherPredicate.java:15)
      	at com.atlassian.jira.bc.user.search.DefaultUserPickerSearchService.findUsers(DefaultUserPickerSearchService.java:96)
      	at com.atlassian.jira.bc.user.search.DefaultUserPickerSearchService.findUsers(DefaultUserPickerSearchService.java:51)
      	at sun.reflect.GeneratedMethodAccessor1289.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:606)
      	at com.atlassian.plugin.osgi.hostcomponents.impl.DefaultComponentRegistrar$ContextClassLoaderSettingInvocationHandler.invoke(DefaultComponentRegistrar.java:129)
      	at com.sun.proxy.$Proxy143.findUsers(Unknown Source)
      	at sun.reflect.GeneratedMethodAccessor1289.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:606)
      	at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
      	at org.springframework.osgi.service.importer.support.internal.aop.ServiceInvoker.doInvoke(ServiceInvoker.java:58)
      	at org.springframework.osgi.service.importer.support.internal.aop.ServiceInvoker.invoke(ServiceInvoker.java:62)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
      	at org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
      	at org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
      	at org.springframework.osgi.service.util.internal.aop.ServiceTCCLInterceptor.invokeUnprivileged(ServiceTCCLInterceptor.java:56)
      	at org.springframework.osgi.service.util.internal.aop.ServiceTCCLInterceptor.invoke(ServiceTCCLInterceptor.java:39)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
      	at org.springframework.osgi.service.importer.support.LocalBundleContextAdvice.invoke(LocalBundleContextAdvice.java:59)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
      	at org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
      	at org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy1745.findUsers(Unknown Source)
      	at com.atlassian.jira.rest.v1.users.UserPickerResource.getUsers(UserPickerResource.java:86)
      	at com.atlassian.jira.rest.v1.users.UserPickerResource.getUsersResponse(UserPickerResource.java:70)
      

              Unassigned Unassigned
              jlargman Jeremy Largman
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: