Uploaded image for project: 'Bamboo Data Center'
  1. Bamboo Data Center
  2. BAM-1262

Browse user and group pages occasionally throws exception (LDAP)

    XMLWordPrintable

Details

    Description

      Selecting users under administration is extremely slow with LDAP. Taking as long as 33 minutes for the list of users to appear.

      Sometimes the complete list of users is returned and sometimes the following exception is generated after approximately 30 minutes of waiting for the list of users:

      FreeMarker template error!

      Method public java.util.Iterator com.atlassian.bamboo.ww2.actions.admin.user.SearchUserAction.getGroups(com.atlassian.user.User) threw an exception when invoked on com.atlassian.bamboo.ww2.actions.admin.user.SearchUserAction@83fd8a
      The problematic instruction:
      ----------
      ==> foreach group in action.getGroups(userInfo) [on line 47, column 13 in admin/user/viewPaginatedUsers.ftl]
      ----------

      Java backtrace for programmers:
      ----------
      freemarker.template.TemplateModelException: Method public java.util.Iterator com.atlassian.bamboo.ww2.actions.admin.user.SearchUserAction.getGroups(com.atlassian.user.User) threw an exception when invoked on com.atlassian.bamboo.ww2.actions.admin.user.SearchUserAction@83fd8a
      at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:136)
      at freemarker.core.MethodCall._getAsTemplateModel(MethodCall.java:93)
      at freemarker.core.Expression.getAsTemplateModel(Expression.java:89)
      at freemarker.core.IteratorBlock.accept(IteratorBlock.java:87)
      at freemarker.core.Environment.visit(Environment.java:196)
      at freemarker.core.MixedContent.accept(MixedContent.java:92)
      at freemarker.core.Environment.visit(Environment.java:196)
      at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:160)
      at freemarker.core.Environment.visit(Environment.java:351)
      at freemarker.core.IteratorBlock.accept(IteratorBlock.java:95)
      at freemarker.core.Environment.visit(Environment.java:196)
      at freemarker.core.MixedContent.accept(MixedContent.java:92)
      at freemarker.core.Environment.visit(Environment.java:196)
      at freemarker.core.Environment.process(Environment.java:176)
      at freemarker.template.Template.process(Template.java:232)
      at com.opensymphony.webwork.views.freemarker.FreemarkerResult.doExecute(FreemarkerResult.java:130)
      at com.opensymphony.webwork.dispatcher.WebWorkResultSupport.execute(WebWorkResultSupport.java:101)
      at com.opensymphony.xwork.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:312)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:207)
      at com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:84)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:84)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.webwork.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:171)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.atlassian.bamboo.ww2.interceptors.BasePermissionCheckInterceptor.intercept(BasePermissionCheckInterceptor.java:38)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:151)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.atlassian.bamboo.ww2.interceptors.PaginationAwareInterceptor.intercept(PaginationAwareInterceptor.java:68)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.atlassian.bamboo.ww2.interceptors.StatisticsAwareInterceptor.intercept(StatisticsAwareInterceptor.java:42)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.atlassian.bamboo.ww2.interceptors.ResultsListAwareInterceptor.intercept(ResultsListAwareInterceptor.java:43)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.atlassian.bamboo.ww2.interceptors.TestCaseAwareInterceptor.intercept(TestCaseAwareInterceptor.java:43)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.atlassian.bamboo.ww2.interceptors.BuildAwareInterceptor.intercept(BuildAwareInterceptor.java:41)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:100)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.DefaultActionProxy.execute(DefaultActionProxy.java:113)
      at com.opensymphony.webwork.components.ActionComponent.executeAction(ActionComponent.java:214)
      at com.opensymphony.webwork.components.ActionComponent.end(ActionComponent.java:115)
      at com.opensymphony.webwork.views.freemarker.tags.CallbackWriter.afterBody(CallbackWriter.java:65)
      at freemarker.core.Environment.visit(Environment.java:235)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:116)
      at freemarker.core.Environment.visit(Environment.java:196)
      at freemarker.core.MixedContent.accept(MixedContent.java:92)
      at freemarker.core.Environment.visit(Environment.java:196)
      at freemarker.core.Environment.process(Environment.java:176)
      at freemarker.template.Template.process(Template.java:232)
      at com.opensymphony.webwork.views.freemarker.FreemarkerResult.doExecute(FreemarkerResult.java:130)
      at com.opensymphony.webwork.dispatcher.WebWorkResultSupport.execute(WebWorkResultSupport.java:101)
      at com.opensymphony.xwork.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:312)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:207)
      at com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:84)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:84)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.webwork.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:171)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.atlassian.bamboo.ww2.interceptors.BasePermissionCheckInterceptor.intercept(BasePermissionCheckInterceptor.java:38)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:151)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.atlassian.bamboo.ww2.interceptors.PaginationAwareInterceptor.intercept(PaginationAwareInterceptor.java:68)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.atlassian.bamboo.ww2.interceptors.StatisticsAwareInterceptor.intercept(StatisticsAwareInterceptor.java:42)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.atlassian.bamboo.ww2.interceptors.ResultsListAwareInterceptor.intercept(ResultsListAwareInterceptor.java:43)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.atlassian.bamboo.ww2.interceptors.TestCaseAwareInterceptor.intercept(TestCaseAwareInterceptor.java:43)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.atlassian.bamboo.ww2.interceptors.BuildAwareInterceptor.intercept(BuildAwareInterceptor.java:41)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:100)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.DefaultActionProxy.execute(DefaultActionProxy.java:113)
      at com.opensymphony.webwork.dispatcher.DispatcherUtils.serviceAction(DispatcherUtils.java:233)
      at com.opensymphony.webwork.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:198)
      at org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(WebApplicationHandler.java:823)
      at com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118)
      at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52)
      at org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(WebApplicationHandler.java:823)
      at com.opensymphony.webwork.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:78)
      at org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(WebApplicationHandler.java:823)
      at com.atlassian.bamboo.filter.AccessLogFilter.doFilter(AccessLogFilter.java:85)
      at org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(WebApplicationHandler.java:823)
      at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:264)
      at org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:107)
      at org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:72)
      at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
      at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:110)
      at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
      at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
      at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
      at com.atlassian.bamboo.filter.SeraphLoginFilter.doFilter(SeraphLoginFilter.java:56)
      at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
      at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:191)
      at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
      at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:148)
      at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:90)
      at com.atlassian.bamboo.filter.BambooAcegiProxyFilter.doFilter(BambooAcegiProxyFilter.java:25)
      at org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(WebApplicationHandler.java:823)
      at com.atlassian.bamboo.filter.LicenseFilter.doFilter(LicenseFilter.java:71)
      at org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(WebApplicationHandler.java:823)
      at com.atlassian.johnson.filters.JohnsonFilter.doFilter(JohnsonFilter.java:91)
      at org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(WebApplicationHandler.java:823)
      at com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:182)
      at org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(WebApplicationHandler.java:823)
      at com.atlassian.seraph.filter.LoginFilter.doFilter(LoginFilter.java:177)
      at org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(WebApplicationHandler.java:823)
      at org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:174)
      at com.atlassian.spring.filter.FlushingSpringSessionInViewFilter.doFilterInternal(FlushingSpringSessionInViewFilter.java:29)
      at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:77)
      at org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(WebApplicationHandler.java:823)
      at com.atlassian.bamboo.filter.CompressingFilter.doFilter(CompressingFilter.java:69)
      at org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(WebApplicationHandler.java:823)
      at com.atlassian.bamboo.filter.RequestCacheThreadLocalFilter.doFilter(RequestCacheThreadLocalFilter.java:26)
      at org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(WebApplicationHandler.java:823)
      at org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.java:473)
      at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:567)
      at org.mortbay.http.HttpContext.handle(HttpContext.java:1565)
      at org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.java:635)
      at org.mortbay.http.HttpContext.handle(HttpContext.java:1517)
      at org.mortbay.jetty.plus.PlusWebAppContext.handle(PlusWebAppContext.java:158)
      at org.mortbay.http.HttpServer.service(HttpServer.java:954)
      at org.mortbay.http.HttpConnection.service(HttpConnection.java:814)
      at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:981)
      at org.mortbay.http.HttpConnection.handle(HttpConnection.java:831)
      at org.mortbay.http.SocketListener.handleConnection(SocketListener.java:244)
      at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:357)
      at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:534)
      Caused by: java.lang.NullPointerException
      at com.atlassian.bamboo.ww2.actions.admin.user.SearchUserAction.getGroups(SearchUserAction.java:101)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:597)
      at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:616)
      at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:113)
      ... 169 more

      See Support issue (https://support.atlassian.com/browse/BSP-92)

      Attachments

        Issue Links

          Activity

            People

              mark@atlassian.com MarkC
              asridhar AjayA
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - 1h
                  1h
                  Remaining:
                  Remaining Estimate - 1h
                  1h
                  Logged:
                  Time Spent - Not Specified
                  Not Specified