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)
>>
>>
>

Reply via email to