[ https://issues.apache.org/jira/browse/SOLR-1797?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Yonik Seeley updated SOLR-1797: ------------------------------- Attachment: SOLR-1797.patch Patch attached: - makes lists synchronized for thread safety - adds an isLive that does not add to aware* lists after a core is done initializing... this probably represented a memory leak before - adds a while loop around callbacks, in case that those callbacks could cause more entries to be added This should fix the issues people have been seeing. > ConcurrentModificationException > ------------------------------- > > Key: SOLR-1797 > URL: https://issues.apache.org/jira/browse/SOLR-1797 > Project: Solr > Issue Type: Bug > Components: Build > Affects Versions: 1.4, 1.5 > Environment: Centos 5, Tomcat 6 > Reporter: Dan Hertz > Priority: Blocker > Attachments: SOLR-1797.patch > > > 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. > Yonik Seeley asked me to start a JIRA bug report, mentioning that, "It looks > like resourceLoader.newInstance() is fundamentally not thread safe." > (SOLR-USER) > = = = 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) -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.