Yep, definitely a bug. It looks like resourceLoader.newInstance() is fundamentally not thread safe.
-Yonik http://www.lucidimagination.com On Fri, Feb 26, 2010 at 2:48 PM, Yonik Seeley <yo...@lucidimagination.com> wrote: > Could you open a JIRA issue for this? > > After a quick look, it could be firstSearcher / newSearcher events > that are being executed concurrently that change the list? > Could you try commenting out firstSearcher/newSearcher events in > solrconfig.xml and see if that fixes it? > > It could be that a lazy loaded component is triggered by a > firstSearcher/newSearcher event, which happen in other threads, > causing another bean to be added. > > -Yonik > http://www.lucidimagination.com > > > > On Fri, Feb 26, 2010 at 2:28 PM, Dan Hertz (Insight 49, LLC) > <insigh...@gmail.com> wrote: >> Hi guys, >> >> SOLR 1.4 (final) and 1.5 nightly work fine on a Windows box, but on our >> Centos 5 box, we're getting a ConcurrentModificationException when starting >> Tomcat 6. >> >> Any tips on how to solve this and/or troubleshoot? >> >> Made sure there are no duplicate libs in Tomcat and solr/lib, and tried to >> cut down contrib stuff to see if it helped, but no luck. >> >> Thanks, Dan. >> >> = = = Log Below: = = = >> >> INFO | jvm 1 | 2010/02/24 21:27:04 | SEVERE: >> java.util.ConcurrentModificationException >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> java.util.AbstractList$Itr.checkForComodification(AbstractList.java:372) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> java.util.AbstractList$Itr.next(AbstractList.java:343) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> org.apache.solr.core.SolrResourceLoader.inform(SolrResourceLoader.java:507) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> org.apache.solr.core.SolrCore.<init>(SolrCore.java:606) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> org.apache.solr.core.CoreContainer.create(CoreContainer.java:429) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> org.apache.solr.core.CoreContainer.load(CoreContainer.java:285) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> org.apache.solr.core.CoreContainer$Initializer.initialize(CoreContainer.java:117) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> org.apache.solr.servlet.SolrDispatchFilter.init(SolrDispatchFilter.java:86) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:275) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:397) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:108) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3800) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> org.apache.catalina.core.StandardContext.start(StandardContext.java:4450) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> org.apache.catalina.core.StandardHost.addChild(StandardHost.java:526) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:630) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:556) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:491) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> org.apache.catalina.startup.HostConfig.start(HostConfig.java:1206) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:314) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> org.apache.catalina.core.StandardHost.start(StandardHost.java:722) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> org.apache.catalina.core.StandardService.start(StandardService.java:516) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> org.apache.catalina.core.StandardServer.start(StandardServer.java:710) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> org.apache.catalina.startup.Catalina.start(Catalina.java:583) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> java.lang.reflect.Method.invoke(Method.java:597) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> java.lang.reflect.Method.invoke(Method.java:597) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> org.tanukisoftware.wrapper.WrapperStartStopApp.run(WrapperStartStopApp.java:242) >> INFO | jvm 1 | 2010/02/24 21:27:04 | at >> java.lang.Thread.run(Thread.java:619) >> >> >