[jira] Commented: (SOLR-745) CoreAdminHandler in bad state after UNLOADing core
[ https://issues.apache.org/jira/browse/SOLR-745?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=12627419#action_12627419 ] Henri Biestro commented on SOLR-745: Part of it might be in 'getAdminHandler()' which should check that the (previous) admin core is not closed before attempting to (re)use it. Adding a check for isClosed() seems necessary. Something like: {code} public SolrCore getAdminCore() { synchronized (cores) { SolrCore core = adminCore != null ? adminCore.get() : null; if (core != null !core.isClosed()) { core.open(); } else { {code} CoreAdminHandler in bad state after UNLOADing core -- Key: SOLR-745 URL: https://issues.apache.org/jira/browse/SOLR-745 Project: Solr Issue Type: Bug Affects Versions: 1.3 Reporter: Hoss Man Fix For: 1.3 using 1.3-rc1... # Start up the multicore example...{noformat} cd example java -Dsolr.solr.home=multicore -jar start.jar {noformat} # Hit the status URL repeatedly: http://localhost:8983/solr/admin/cores?action=STATUS # Note: no problems in the log # unload core0: http://localhost:8983/solr/admin/cores?action=UNLOADcore=core0 # shift-reload on the status URL: http://localhost:8983/solr/admin/cores?action=STATUS # Note the following exception each time...{noformat} SEVERE: java.util.concurrent.RejectedExecutionException at java.util.concurrent.ThreadPoolExecutor$AbortPolicy.rejectedExecution(ThreadPoolExecutor.java:1477) at java.util.concurrent.ThreadPoolExecutor.reject(ThreadPoolExecutor.java:384) at java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:856) at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:45) at java.util.concurrent.Executors$DelegatedExecutorService.submit(Executors.java:606) at org.apache.solr.core.SolrCore.getSearcher(SolrCore.java:1062) at org.apache.solr.core.SolrCore.getSearcher(SolrCore.java:821) at org.apache.solr.request.SolrQueryRequestBase.getSearcher(SolrQueryRequestBase.java:208) at org.apache.solr.servlet.cache.HttpCacheHeaderUtil.calcLastModified(HttpCacheHeaderUtil.java:146) at org.apache.solr.servlet.cache.HttpCacheHeaderUtil.doCacheHeaderValidation(HttpCacheHeaderUtil.java:220) at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:224) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1089) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:365) at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712) at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405) at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:211) at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139) at org.mortbay.jetty.Server.handle(Server.java:285) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:502) at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:821) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:513) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:208) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:378) at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:226) at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442) {noformat} # Note that the exception doesn't just happen the first time you reload the status URL, but everytime. Marking Fix in 1.3 until someone smarter then me about CoreAdminHandler says it's no big deal. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (SOLR-745) CoreAdminHandler in bad state after UNLOADing core
[ https://issues.apache.org/jira/browse/SOLR-745?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=12627577#action_12627577 ] Hoss Man commented on SOLR-745: --- Maybe i'm missing something but haven't i seen some docs saying that SolrCores are now ref counted? if CoreContainer is setting the adminCore properly, then shouldn't it be impossible for anyone else to completely close it? CoreAdminHandler in bad state after UNLOADing core -- Key: SOLR-745 URL: https://issues.apache.org/jira/browse/SOLR-745 Project: Solr Issue Type: Bug Affects Versions: 1.3 Reporter: Hoss Man Fix For: 1.3 Attachments: solr-745.patch using 1.3-rc1... # Start up the multicore example...{noformat} cd example java -Dsolr.solr.home=multicore -jar start.jar {noformat} # Hit the status URL repeatedly: http://localhost:8983/solr/admin/cores?action=STATUS # Note: no problems in the log # unload core0: http://localhost:8983/solr/admin/cores?action=UNLOADcore=core0 # shift-reload on the status URL: http://localhost:8983/solr/admin/cores?action=STATUS # Note the following exception each time...{noformat} SEVERE: java.util.concurrent.RejectedExecutionException at java.util.concurrent.ThreadPoolExecutor$AbortPolicy.rejectedExecution(ThreadPoolExecutor.java:1477) at java.util.concurrent.ThreadPoolExecutor.reject(ThreadPoolExecutor.java:384) at java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:856) at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:45) at java.util.concurrent.Executors$DelegatedExecutorService.submit(Executors.java:606) at org.apache.solr.core.SolrCore.getSearcher(SolrCore.java:1062) at org.apache.solr.core.SolrCore.getSearcher(SolrCore.java:821) at org.apache.solr.request.SolrQueryRequestBase.getSearcher(SolrQueryRequestBase.java:208) at org.apache.solr.servlet.cache.HttpCacheHeaderUtil.calcLastModified(HttpCacheHeaderUtil.java:146) at org.apache.solr.servlet.cache.HttpCacheHeaderUtil.doCacheHeaderValidation(HttpCacheHeaderUtil.java:220) at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:224) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1089) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:365) at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712) at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405) at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:211) at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139) at org.mortbay.jetty.Server.handle(Server.java:285) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:502) at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:821) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:513) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:208) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:378) at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:226) at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442) {noformat} # Note that the exception doesn't just happen the first time you reload the status URL, but everytime. Marking Fix in 1.3 until someone smarter then me about CoreAdminHandler says it's no big deal. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (SOLR-745) CoreAdminHandler in bad state after UNLOADing core
[ https://issues.apache.org/jira/browse/SOLR-745?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=12627364#action_12627364 ] Hoss Man commented on SOLR-745: --- On the surface, part of the problem is that CoreAdminHandler should probably be calling SolrQueryResponse.setHttpCaching(false) ... but since it isn't, HttpCacheHeaderUtil is attempting to get a searcher to determine some headers -- this should be done relative the adminCore picked by CoreContainer (at least as far as i can and something seems to get wonky about coreAdmin when a core is UNLOADed. In this specific example, it's just affecting the cache headers, but this seems like it could be simptomatic of a larger more generic problem relating to the adminCore ... and i'm not sure how bad that is. CoreAdminHandler in bad state after UNLOADing core -- Key: SOLR-745 URL: https://issues.apache.org/jira/browse/SOLR-745 Project: Solr Issue Type: Bug Affects Versions: 1.3 Reporter: Hoss Man Fix For: 1.3 using 1.3-rc1... # Start up the multicore example...{noformat} cd example java -Dsolr.solr.home=multicore -jar start.jar {noformat} # Hit the status URL repeatedly: http://localhost:8983/solr/admin/cores?action=STATUS # Note: no problems in the log # unload core0: http://localhost:8983/solr/admin/cores?action=UNLOADcore=core0 # shift-reload on the status URL: http://localhost:8983/solr/admin/cores?action=STATUS # Note the following exception each time...{noformat} SEVERE: java.util.concurrent.RejectedExecutionException at java.util.concurrent.ThreadPoolExecutor$AbortPolicy.rejectedExecution(ThreadPoolExecutor.java:1477) at java.util.concurrent.ThreadPoolExecutor.reject(ThreadPoolExecutor.java:384) at java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:856) at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:45) at java.util.concurrent.Executors$DelegatedExecutorService.submit(Executors.java:606) at org.apache.solr.core.SolrCore.getSearcher(SolrCore.java:1062) at org.apache.solr.core.SolrCore.getSearcher(SolrCore.java:821) at org.apache.solr.request.SolrQueryRequestBase.getSearcher(SolrQueryRequestBase.java:208) at org.apache.solr.servlet.cache.HttpCacheHeaderUtil.calcLastModified(HttpCacheHeaderUtil.java:146) at org.apache.solr.servlet.cache.HttpCacheHeaderUtil.doCacheHeaderValidation(HttpCacheHeaderUtil.java:220) at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:224) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1089) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:365) at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712) at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405) at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:211) at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139) at org.mortbay.jetty.Server.handle(Server.java:285) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:502) at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:821) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:513) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:208) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:378) at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:226) at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442) {noformat} # Note that the exception doesn't just happen the first time you reload the status URL, but everytime. Marking Fix in 1.3 until someone smarter then me about CoreAdminHandler says it's no big deal. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.