Uploaded image for project: 'Hippo CMS'
  1. Hippo CMS
  2. CMS-9342

takes too long to load group members in user settings

    XMLWordPrintable

Details

    Description

      In (user settings -> groups -> set group members) it takes too long to populate user list. And the reason for that that every user in group causes extra two sql queries. So with growing user number (approx. 250) loading time goes above one minute.

      In attachment there is a script to generate n number of users

      the exception user gets on loading group members is as follows

      [INFO] [talledLocalContainer] 09.06.2015 01:10:24 WARN  http-bio-8080-exec-11 [PageAccessSynchronizer.lockPage:132] Thread 'http-bio-8080-exec-11' failed to acquire lock to page with id '1',
      attempted for 1 minute out of allowed 1 minute. The thread that holds the lock has name 'http-bio-8080-exec-1'.
      [INFO] [talledLocalContainer] 09.06.2015 01:10:24 WARN  http-bio-8080-exec-11 [Threads.dumpSingleThread:114] "http-bio-8080-exec-1" daemon prio=5 tid=58 state=RUNNABLE
      [INFO] [talledLocalContainer] org.apache.wicket.util.lang.Threads$ThreadDump
      [INFO] [talledLocalContainer]   at org.apache.lucene.index.SegmentTermEnum.term(SegmentTermEnum.java:184)
      [INFO] [talledLocalContainer]   at org.apache.lucene.index.TermInfosReader.get(TermInfosReader.java:192)
      [INFO] [talledLocalContainer]   at org.apache.lucene.index.TermInfosReader.get(TermInfosReader.java:172)
      [INFO] [talledLocalContainer]   at org.apache.lucene.index.SegmentTermDocs.seek(SegmentTermDocs.java:66)
      [INFO] [talledLocalContainer]   at org.apache.lucene.index.IndexReader.termDocs(IndexReader.java:1306)
      [INFO] [talledLocalContainer]   at org.apache.lucene.index.SegmentReader.termDocs(SegmentReader.java:505)
      [INFO] [talledLocalContainer]   at org.apache.lucene.index.DirectoryReader.termDocs(DirectoryReader.java:727)
      [INFO] [talledLocalContainer]   at org.apache.jackrabbit.core.query.lucene.TermDocsCache.termDocs(TermDocsCache.java:98)
      [INFO] [talledLocalContainer]   at org.apache.jackrabbit.core.query.lucene.CachingIndexReader.termDocs(CachingIndexReader.java:342)
      [INFO] [talledLocalContainer]   at org.apache.jackrabbit.core.query.lucene.SharedIndexReader.termDocs(SharedIndexReader.java:76)
      [INFO] [talledLocalContainer]   at org.apache.jackrabbit.core.query.lucene.ReadOnlyIndexReader.termDocs(ReadOnlyIndexReader.java:204)
      [INFO] [talledLocalContainer]   at org.apache.lucene.search.TermQuery$TermWeight.scorer(TermQuery.java:102)
      [INFO] [talledLocalContainer]   at org.apache.jackrabbit.core.query.lucene.JackrabbitTermQuery$JackrabbitTermWeight.createScorer(JackrabbitTermQuery.java:72)
      [INFO] [talledLocalContainer]   at org.apache.jackrabbit.core.query.lucene.AbstractWeight.scorer(AbstractWeight.java:85)
      [INFO] [talledLocalContainer]   at org.apache.jackrabbit.core.query.lucene.AbstractWeight.scorer(AbstractWeight.java:80)
      [INFO] [talledLocalContainer]   at org.apache.lucene.search.BooleanQuery$BooleanWeight.scorer(BooleanQuery.java:298)
      [INFO] [talledLocalContainer]   at org.apache.lucene.search.BooleanQuery$BooleanWeight.scorer(BooleanQuery.java:298)
      [INFO] [talledLocalContainer]   at org.hippoecm.repository.query.lucene.HippoLuceneQueryHits.<init>(HippoLuceneQueryHits.java:58)
      [INFO] [talledLocalContainer]   at org.hippoecm.repository.query.lucene.HippoIndexSearcher.evaluate(HippoIndexSearcher.java:54)
      [INFO] [talledLocalContainer]   at org.apache.jackrabbit.core.query.lucene.JackrabbitIndexSearcher.execute(JackrabbitIndexSearcher.java:86)
      [INFO] [talledLocalContainer]   at org.hippoecm.repository.query.lucene.ServicingSearchIndex.executeQuery(ServicingSearchIndex.java:213)
      [INFO] [talledLocalContainer]   at org.hippoecm.repository.query.lucene.HippoQueryResult.executeQuery(HippoQueryResult.java:78)
      [INFO] [talledLocalContainer]   at org.apache.jackrabbit.core.query.lucene.QueryResultImpl.getResults(QueryResultImpl.java:284)
      [INFO] [talledLocalContainer]   at org.hippoecm.repository.query.lucene.HippoQueryResult.<init>(HippoQueryResult.java:70)
      [INFO] [talledLocalContainer]   at org.hippoecm.repository.query.lucene.ServicingSearchIndex$3.execute(ServicingSearchIndex.java:302)
      [INFO] [talledLocalContainer]   at org.apache.jackrabbit.core.query.QueryImpl$1.perform(QueryImpl.java:132)
      [INFO] [talledLocalContainer]   at org.apache.jackrabbit.core.query.QueryImpl$1.perform(QueryImpl.java:129)
      [INFO] [talledLocalContainer]   at org.apache.jackrabbit.core.session.SessionState.perform(SessionState.java:216)
      [INFO] [talledLocalContainer]   at org.apache.jackrabbit.core.query.QueryImpl.execute(QueryImpl.java:128)
      [INFO] [talledLocalContainer]   at org.hippoecm.repository.impl.QueryDecorator.execute(QueryDecorator.java:393)
      [INFO] [talledLocalContainer]   at org.hippoecm.repository.impl.QueryDecorator.execute(QueryDecorator.java:90)
      [INFO] [talledLocalContainer]   at org.hippoecm.frontend.plugins.cms.admin.users.User.userExists(User.java:144)
      [INFO] [talledLocalContainer]   at org.hippoecm.frontend.plugins.cms.admin.groups.Group.getMembers(Group.java:242)
      [INFO] [talledLocalContainer]   at org.hippoecm.frontend.plugins.cms.admin.groups.Group.getMembers(Group.java:233)
      [INFO] [talledLocalContainer]   at sun.reflect.GeneratedMethodAccessor102.invoke(Unknown Source)
      [INFO] [talledLocalContainer]   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      [INFO] [talledLocalContainer]   at java.lang.reflect.Method.invoke(Method.java:606)
      [INFO] [talledLocalContainer]   at org.apache.wicket.core.util.lang.PropertyResolver$MethodGetAndSet.getValue(PropertyResolver.java:1147)
      [INFO] [talledLocalContainer]   at org.apache.wicket.core.util.lang.PropertyResolver$ObjectAndGetSetter.getValue(PropertyResolver.java:652)
      [INFO] [talledLocalContainer]   at org.apache.wicket.core.util.lang.PropertyResolver.getValue(PropertyResolver.java:103)
      [INFO] [talledLocalContainer]   at org.apache.wicket.model.AbstractPropertyModel.getObject(AbstractPropertyModel.java:86)
      [INFO] [talledLocalContainer]   at org.apache.wicket.Component.getDefaultModelObject(Component.java:1627)
      [INFO] [talledLocalContainer]   at org.apache.wicket.markup.html.list.ListView.getModelObject(ListView.java:643)
      [INFO] [talledLocalContainer]   at org.apache.wicket.markup.html.list.ListItemModel.getObject(ListItemModel.java:59)
      [INFO] [talledLocalContainer]   at org.apache.wicket.Component.getDefaultModelObject(Component.java:1627)
      [INFO] [talledLocalContainer]   at org.apache.wicket.markup.html.list.ListItem.getModelObject(ListItem.java:92)
      [INFO] [talledLocalContainer]   at org.hippoecm.frontend.plugins.cms.admin.groups.SetMembersPanel$MembershipsListEditView.populateItem(SetMembersPanel.java:170)
      [INFO] [talledLocalContainer]   at org.apache.wicket.markup.html.list.ListView.onPopulate(ListView.java:523)
      [INFO] [talledLocalContainer]   at org.apache.wicket.markup.repeater.AbstractRepeater.onBeforeRender(AbstractRepeater.java:116)
      [INFO] [talledLocalContainer]   at org.apache.wicket.Component.internalBeforeRender(Component.java:923)
      [INFO] [talledLocalContainer]   at org.apache.wicket.Component.beforeRender(Component.java:991)
      [INFO] [talledLocalContainer]   at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1682)
      [INFO] [talledLocalContainer]   at org.apache.wicket.Component.onBeforeRender(Component.java:3853)
      [INFO] [talledLocalContainer]   at org.apache.wicket.Component.internalBeforeRender(Component.java:923)
      [INFO] [talledLocalContainer]   at org.apache.wicket.Component.beforeRender(Component.java:991)
      [INFO] [talledLocalContainer]   at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1682)
      [INFO] [talledLocalContainer]   at org.apache.wicket.Component.onBeforeRender(Component.java:3853)
      [INFO] [talledLocalContainer]   at org.hippoecm.frontend.service.render.AbstractRenderService.onBeforeRender(AbstractRenderService.java:543)
      [INFO] [talledLocalContainer]   at org.apache.wicket.Component.internalBeforeRender(Component.java:923)
      [INFO] [talledLocalContainer]   at org.apache.wicket.Component.beforeRender(Component.java:991)
      [INFO] [talledLocalContainer]   at org.apache.wicket.Component.internalPrepareForRender(Component.java:2216)
      [INFO] [talledLocalContainer]   at org.apache.wicket.Component.prepareForRender(Component.java:2255)
      [INFO] [talledLocalContainer]   at org.apache.wicket.ajax.XmlAjaxResponse.writeComponent(XmlAjaxResponse.java:107)
      [INFO] [talledLocalContainer]   at org.apache.wicket.ajax.AbstractAjaxResponse.writeComponents(AbstractAjaxResponse.java:218)
      [INFO] [talledLocalContainer]   at org.apache.wicket.ajax.AbstractAjaxResponse.writeTo(AbstractAjaxResponse.java:150)
      [INFO] [talledLocalContainer]   at org.apache.wicket.ajax.AjaxRequestHandler.respond(AjaxRequestHandler.java:359)
      [INFO] [talledLocalContainer]   at org.hippoecm.frontend.PluginRequestTarget.respond(PluginRequestTarget.java:150)
      [INFO] [talledLocalContainer]   at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:862)
      [INFO] [talledLocalContainer]   at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
      [INFO] [talledLocalContainer]   at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:97)
      [INFO] [talledLocalContainer]   at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:261)
      [INFO] [talledLocalContainer]   at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:218)
      [INFO] [talledLocalContainer]   at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:289)
      [INFO] [talledLocalContainer]   at org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:259)
      [INFO] [talledLocalContainer]   at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:201)
      [INFO] [talledLocalContainer]   at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:282)
      [INFO] [talledLocalContainer]   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
      [INFO] [talledLocalContainer]   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
      [INFO] [talledLocalContainer]   at org.hippoecm.frontend.plugins.login.ConcurrentLoginFilter.doFilter(ConcurrentLoginFilter.java:54)
      [INFO] [talledLocalContainer]   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
      [INFO] [talledLocalContainer]   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
      [INFO] [talledLocalContainer]   at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
      [INFO] [talledLocalContainer]   at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
      [INFO] [talledLocalContainer]   at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501)
      [INFO] [talledLocalContainer]   at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
      [INFO] [talledLocalContainer]   at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
      [INFO] [talledLocalContainer]   at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
      [INFO] [talledLocalContainer]   at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
      [INFO] [talledLocalContainer]   at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
      [INFO] [talledLocalContainer]   at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1040)
      [INFO] [talledLocalContainer]   at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
      [INFO] [talledLocalContainer]   at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:314)
      [INFO] [talledLocalContainer]   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
      [INFO] [talledLocalContainer]   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
      [INFO] [talledLocalContainer]   at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
      [INFO] [talledLocalContainer]   at java.lang.Thread.run(Thread.java:744)
      [INFO] [talledLocalContainer] 09.06.2015 01:10:24 ERROR http-bio-8080-exec-11 [DefaultExceptionMapper.internalMap:129] Unexpected error occurred
      [INFO] [talledLocalContainer] org.apache.wicket.page.CouldNotLockPageException: Could not lock page 1. Attempt lasted 1 minute
      [INFO] [talledLocalContainer]   at org.apache.wicket.page.PageAccessSynchronizer.lockPage(PageAccessSynchronizer.java:155)
      [INFO] [talledLocalContainer]   at org.apache.wicket.page.PageAccessSynchronizer$2.getPage(PageAccessSynchronizer.java:233)
      [INFO] [talledLocalContainer]   at org.apache.wicket.DefaultMapperContext.getPageInstance(DefaultMapperContext.java:148)
      [INFO] [talledLocalContainer]   at org.apache.wicket.core.request.handler.PageProvider.getStoredPage(PageProvider.java:296)
      [INFO] [talledLocalContainer]   at org.apache.wicket.core.request.handler.PageProvider.resolvePageInstance(PageProvider.java:261)
      [INFO] [talledLocalContainer]   at org.apache.wicket.core.request.handler.PageProvider.getPageInstance(PageProvider.java:166)
      [INFO] [talledLocalContainer]   at org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.getPage(ListenerInterfaceRequestHandler.java:96)
      [INFO] [talledLocalContainer]   at org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.respond(ListenerInterfaceRequestHandler.java:157)
      [INFO] [talledLocalContainer]   at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:862)
      [INFO] [talledLocalContainer]   at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
      [INFO] [talledLocalContainer]   at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:261)
      [INFO] [talledLocalContainer]   at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:218)
      [INFO] [talledLocalContainer]   at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:289)
      [INFO] [talledLocalContainer]   at org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:259)
      [INFO] [talledLocalContainer]   at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:201)
      [INFO] [talledLocalContainer]   at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:282)
      [INFO] [talledLocalContainer]   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
      [INFO] [talledLocalContainer]   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
      [INFO] [talledLocalContainer]   at org.hippoecm.frontend.plugins.login.ConcurrentLoginFilter.doFilter(ConcurrentLoginFilter.java:54)
      [INFO] [talledLocalContainer]   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
      [INFO] [talledLocalContainer]   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
      [INFO] [talledLocalContainer]   at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
      [INFO] [talledLocalContainer]   at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
      [INFO] [talledLocalContainer]   at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501)
      [INFO] [talledLocalContainer]   at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
      [INFO] [talledLocalContainer]   at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
      [INFO] [talledLocalContainer]   at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
      [INFO] [talledLocalContainer]   at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
      [INFO] [talledLocalContainer]   at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
      [INFO] [talledLocalContainer]   at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1040)
      [INFO] [talledLocalContainer]   at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
      [INFO] [talledLocalContainer]   at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:314)
      [INFO] [talledLocalContainer]   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
      [INFO] [talledLocalContainer]   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
      [INFO] [talledLocalContainer]   at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
      [INFO] [talledLocalContainer]   at java.lang.Thread.run(Thread.java:744)
      

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              imurasko Ilja Murasko (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: