Wiki Markup |
---|
h2. Requirement for OLE DocStore
{color:#000000}Requirement for OLE DocStore/Discovery system based on IU's current{color}
{color:#000000}library system:{color}
{color:#000000}Store up to 25-50M records, but more close to 25M (currently IU library{color}
{color:#000000}has less than 25M records){color}
{color:#000000}Incremental loading: 10K records{color}
{color:#000000}Concurrent reads: 500{color}
{color:#000000}Concurrent writes: 20 per minute (or 1 per 1-3 second){color}
h2. Evaluation Plan
{color:#000000}1) Build and install the app{color}
{color:#000000}2) Use debuggers and profilers to analyze the running app (locally){color}
{color:#000000}3) Build profiling scripts to push the app to the failure point (locally){color}
{color:#000000}4) Run the profiling scripts against the test server and develop an app profile{color}
{color:#000000}5) Check the code in the areas where performance issues are identified{color}
{color:#000000}6) Write up overall recommendations around setup, architecture, performance, and code practices{color}
{color:#000000}7) If time remains, add aspects in the code to do method profiling and generate a report of method performance under load{color}
h2. Problems found by Unicon
h3. DocStore Shutdown Issues:
{color:#000000}These are all memory cleanup issues. If the app is shutdown or{color}
{color:#000000}redeployed without shutting down the server then these will cause the{color}
{color:#000000}server to eventually run out of memory and crash.{color}
{color:#000000}SEVERE: The web application \[/oledocstore\] registered the JDBC driver{color}
{color:#000000}\[org.apache.derby.jdbc.AutoloadedDriver\] but failed to unregister it{color}
{color:#000000}when the web application was stopped. To prevent a memory leak, the{color}
{color:#000000}JDBC Driver has been forcibly unregistered.{color}
{color:#000000}May 21, 2012 2:54:56 PM org.apache.catalina.loader.WebappClassLoader{color}
{color:#000000}clearReferencesThreads{color}
{color:#000000}SEVERE: The web application \[/oledocstore\] appears to have started a{color}
{color:#000000}thread named \[Timer-3\] but has failed to stop it. This is very likely{color}
{color:#000000}to create a memory leak.{color}
{color:#000000}May 21, 2012 2:54:56 PM org.apache.catalina.loader.WebappClassLoader{color}
{color:#000000}clearReferencesThreads{color}
{color:#000000}SEVERE: The web application \[/oledocstore\] appears to have started a{color}
{color:#000000}thread named \[DynamicPooledExecutor\] but has failed to stop it. This{color}
{color:#000000}is very likely to create a memory leak.{color}
{color:#000000}May 21, 2012 2:54:56 PM org.apache.catalina.loader.WebappClassLoader{color}
{color:#000000}clearThreadLocalMap{color}
{color:#000000}SEVERE: The web application \[/oledocstore\] created a ThreadLocal with{color}
{color:#000000}key of type \[org.apache.derby.iapi.sql.dictionary.TableDescriptor$1\]{color}
{color:#000000}(value \[org.apache.derby.iapi.sql.dictionary.TableDescriptor$1@5dbdedf8\]){color}
{color:#000000}and a value of type \[java.util.WeakHashMap\] (value \[{=null, =null,{color}
{color:#000000}={color}
{1, 2, 3}{color:#000000}, =null, =null, =null, ={color}{1, 2, 3}{color:#000000}, =null, =null}\]) but{color}
{color:#000000}failed to remove it when the web application was stopped. This is very{color}
{color:#000000}likely to create a memory leak.{color}
{color:#000000}May 21, 2012 2:54:56 PM org.apache.catalina.loader.WebappClassLoader{color}
{color:#000000}clearThreadLocalMap{color}
{color:#000000}SEVERE: The web application \[/oledocstore\] created a ThreadLocal with{color}
{color:#000000}key of type \[java.lang.ThreadLocal\] (value{color}
{color:#000000}\[java.lang.ThreadLocal@605264dc\]) and a value of type{color}
{color:#000000}\[org.apache.derby.iapi.services.context.ContextManager\] (value{color}
{color:#000000}\[org.apache.derby.iapi.services.context.ContextManager@3499c4cc\]) but{color}
{color:#000000}failed to remove it when the web application was stopped. This is very{color}
{color:#000000}likely to create a memory leak.{color}
h3. {color:#000000}Warnings{color}
{color:#000000}WARN org.apache.jackrabbit.core.query.lucene.SearchIndex.setTextFilterClasses():Line{color}
{color:#000000}2087: The textFilterClasses configuration parameter has been{color}
{color:#000000}deprecated, and the configured value will be ignored:{color}
h3. {color:#000000}Strange dir in tomcat_home (or whatever dir that tomcat is started from){color}
{color:#000000}It looks like someone is trying to create a windows directory path{color}
{color:#000000}(\OLE-SOLR\Indexes). I don't think this is causing a problem but it{color}
{color:#000000}indicates some bad code exists.{color}
{color:#000000}AZMBP:tomcat6 azeckoski$ ls \-al{color}
{color:#000000}total 136{color}
{color:#000000}drwxr-xr-x 15 azeckoski admin 510 21 May 14:50 .{color}
{color:#000000}drwxr-xr-x 7 azeckoski admin 238 21 May 09:47 ..{color}
{color:#000000}\-rw-r\-{color}{color:#000000}{-}r{-}{color}{color:#000000}\-@ 1 azeckoski admin 37951 20 Feb 17:23 LICENSE{color}
{color:#000000}\-rw-r\-{color}{color:#000000}{-}r{-}{color}{color:#000000}\-@ 1 azeckoski admin 558 20 Feb 17:23 NOTICE{color}
{color:#000000}\-rw-r\-{color}{color:#000000}{-}r{-}{color}{color:#000000}\-@ 1 azeckoski admin 8680 20 Feb 17:23 RELEASE-NOTES{color}
{color:#000000}\-rw-r\-{color}{color:#000000}{-}r{-}{color}{color:#000000}\-@ 1 azeckoski admin 6670 20 Feb 17:23 RUNNING.txt{color}
{color:#000000}drwxr-xr-x 6 azeckoski admin 204 21 May 14:50 \OLE-SOLR\Indexes\auth{color}
{color:#000000}drwxr-xr-x@ 25 azeckoski admin 850 21 May 10:00 bin{color}
{color:#000000}drwxr-xr-x@ 9 azeckoski admin 306 20 Feb 17:23 conf{color}
{color:#000000}\-rw-r\-{color}{color:#000000}{-}r{-}{color}{color:#000000}\- 1 azeckoski admin 1565 21 May 14:54 derby.log{color}
{color:#000000}drwxr-xr-x@ 18 azeckoski admin 612 20 Feb 17:23 lib{color}
{color:#000000}drwxr-xr-x@ 11 azeckoski admin 374 21 May 14:50 logs{color}
{color:#000000}drwxr-xr-x@ 4 azeckoski admin 136 21 May 14:50 temp{color}
{color:#000000}drwxr-xr-x@ 6 azeckoski admin 204 21 May 14:26 webapps{color}
{color:#000000}drwxr-xr-x@ 3 azeckoski admin 102 21 May 14:50 work{color}
{color:#000000}AZMBP:tomcat6 azeckoski$ find "\OLE-SOLR\Indexes\auth"{color}
{color:#000000}\OLE-SOLR\Indexes\auth{color}
{color:#000000}\OLE-SOLR\Indexes\auth/index{color}
{color:#000000}\OLE-SOLR\Indexes\auth/index/segments.gen{color}
{color:#000000}\OLE-SOLR\Indexes\auth/index/segments_1{color}
{color:#000000}\OLE-SOLR\Indexes\auth/spellchecker1{color}
{color:#000000}\OLE-SOLR\Indexes\auth/spellchecker1/segments.gen{color}
{color:#000000}\OLE-SOLR\Indexes\auth/spellchecker1/segments_1{color}
{color:#000000}\OLE-SOLR\Indexes\auth/spellchecker2{color}
{color:#000000}\OLE-SOLR\Indexes\auth/spellchecker2/segments.gen{color}
{color:#000000}\OLE-SOLR\Indexes\auth/spellchecker2/segments_1{color}
{color:#000000}\OLE-SOLR\Indexes\auth/spellcheckerFile{color}
{color:#000000}\OLE-SOLR\Indexes\auth/spellcheckerFile/segments.gen{color}
{color:#000000}\OLE-SOLR\Indexes\auth/spellcheckerFile/segments_1{color}
h3. {color:#000000}println in log ("in aadvancedSearch.jsp"){color}
{color:#000000}Looks like someone left in a println statement by accident. Should use{color}
{color:#000000}log.debug instead.{color}
{color:#000000}May 21, 2012 2:50:51 PM org.apache.jk.server.JkMain start{color}
{color:#000000}INFO: Jk running ID=0 time=0/12 config=null{color}
{color:#000000}May 21, 2012 2:50:51 PM org.apache.catalina.startup.Catalina start{color}
{color:#000000}INFO: Server startup in 6749 ms{color}
{color:#000000}in aadvancedSearch.jsp{color}
{color:#000000}in aadvancedSearch.jsp{color}
{color:#000000}May 21, 2012 2:54:54 PM org.apache.coyote.http11.Http11Protocol pause{color}
{color:#000000}INFO: Pausing Coyote HTTP/1.1 on http-8080{color}
h3. Session closing issue:
{color:#000000}2012-05-21 15:36:13,886 \[Finalizer\] WARN{color}
{color:#000000}org.apache.jackrabbit.core.SessionImpl.finalize():Line 1326: Unclosed{color}
{color:#000000}session detected. The session was opened here:{color}
{color:#000000}java.lang.Exception: Stack Trace{color} {color:#000000}at org.apache.jackrabbit.core.SessionImpl.<init>(SessionImpl.java:222){color} {color:#000000}at org.apache.jackrabbit.core.SessionImpl.<init>(SessionImpl.java:239){color} {color:#000000}at org.apache.jackrabbit.core.XASessionImpl.<init>(XASessionImpl.java:99){color} {color:#000000}at org.apache.jackrabbit.core.RepositoryImpl.createSessionInstance(RepositoryImpl.java:1573){color} {color:#000000}at org.apache.jackrabbit.core.RepositoryImpl.createSession(RepositoryImpl.java:923){color} {color:#000000}at org.apache.jackrabbit.core.RepositoryImpl.login(RepositoryImpl.java:1461){color} {color:#000000}at org.apache.jackrabbit.core.TransientRepository.login(TransientRepository.java:381){color} {color:#000000}at org.apache.jackrabbit.commons.AbstractRepository.login(AbstractRepository.java:123){color} {color:#000000}at org.kuali.ole.RepositoryManager.getSession(RepositoryManager.java:71){color} {color:#000000}at org.kuali.ole.RepositoryBrowser.generateNodeCount(RepositoryBrowser.java:488){color} {color:#000000}at org.apache.jsp.nodeCount_jsp._jspService(nodeCount_jsp.java:96){color} {color:#000000}at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70){color} {color:#000000}at javax.servlet.http.HttpServlet.service(HttpServlet.java:717){color} {color:#000000}at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388){color} {color:#000000}at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313){color} {color:#000000}at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260){color} {color:#000000}at javax.servlet.http.HttpServlet.service(HttpServlet.java:717){color} {color:#000000}at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290){color} {color:#000000}at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206){color} {color:#000000}at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:185){color} {color:#000000}at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:159){color} {color:#000000}at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235){color} {color:#000000}at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206){color} {color:#000000}at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233){color} {color:#000000}at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191){color} {color:#000000}at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127){color} {color:#000000}at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102){color} {color:#000000}at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109){color} {color:#000000}at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293){color} {color:#000000}at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859){color} {color:#000000}at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602){color} {color:#000000}at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489){color} {color:#000000}at java.lang.Thread.run(Thread.java:680){color}
{color:#000000}2012-05-21 15:36:13,888 \[Finalizer\] INFO{color}
{color:#000000}org.apache.jackrabbit.core.TransientRepository.loggedOut():Line 424:{color}
{color:#000000}Session closed{color}
{color:#ff0000}HTC has patched the code at {color}[https://svn.kuali.org/repos/ole/tags/OLE-0.6-1/DocumentStore|https://svn.kuali.org/repos/ole/tags/OLE-0.6-1/DocumentStore]{color:#ff0000}. There are{color}{color:#ff0000} 2 files have {color}{color:#ff0000}changed, RepositoryManager and RepositoryBrowser.{color} |
Page Comparison
General
Content
Integrations