java.util.ConcurrentModificationException

Kuali JIRA | Eric Westfall | 9 years ago
  1. 0

    This is related to the "thin java client" for workflow. Essentially, it lazily creates a RiceConfigurer the first time a WorkflowDocument or WorkflowInfo method is invoked (if a RiceConfigurer has not already been configured). What I'm seeing in the load tests at the very beginning (if I set the ramp up to 1 second) is the error below. It goes away after the first few threads but it's obviously a concurrency issue with the lazy initailization of the thin client resource loading: java.util.ConcurrentModificationException at java.util.AbstractList$Itr.checkForComodification(AbstractList.java:449) at java.util.AbstractList$Itr.next(AbstractList.java:420) at org.kuali.rice.resourceloader.ResourceLoaderContainer.getService(ResourceLoaderContainer.java:150) at org.kuali.rice.resourceloader.GlobalResourceLoader.getService(GlobalResourceLoader.java:120) at org.kuali.rice.resourceloader.GlobalResourceLoader.getService(GlobalResourceLoader.java:127) at edu.iu.uis.eden.clientapp.WorkflowDocument.getWorkflowDocumentActions(WorkflowDocument.java:162) at edu.iu.uis.eden.clientapp.WorkflowDocument.getDocumentContent(WorkflowDocument.java:210) at org.kuali.rice.loadtests.RouteDocumentTest.runKewTest(RouteDocumentTest.java:20) at org.kuali.rice.loadtests.KewLoadTestBase.runTest(KewLoadTestBase.java:105) at org.apache.jmeter.protocol.java.sampler.JavaSampler.sample(JavaSampler.java:165) at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:298) at java.lang.Thread.run(Thread.java:613) java.util.ConcurrentModificationException at java.util.AbstractList$Itr.checkForComodification(AbstractList.java:449) at java.util.AbstractList$Itr.next(AbstractList.java:420) at org.kuali.rice.resourceloader.ResourceLoaderContainer.start(ResourceLoaderContainer.java:51) at org.kuali.rice.resourceloader.GlobalResourceLoader.start(GlobalResourceLoader.java:65) at org.kuali.rice.resourceloader.RootResourceLoaderLifecycle.start(RootResourceLoaderLifecycle.java:40) at org.kuali.rice.lifecycle.BaseCompositeLifecycle.start(BaseCompositeLifecycle.java:33) at org.kuali.rice.config.RiceConfigurer.start(RiceConfigurer.java:78) at edu.iu.uis.eden.clientapp.WorkflowDocument.initializeBus(WorkflowDocument.java:178) at edu.iu.uis.eden.clientapp.WorkflowDocument.getWorkflowDocumentActions(WorkflowDocument.java:161) at edu.iu.uis.eden.clientapp.WorkflowDocument.getDocumentContent(WorkflowDocument.java:210) at org.kuali.rice.loadtests.RouteDocumentTest.runKewTest(RouteDocumentTest.java:20) at org.kuali.rice.loadtests.KewLoadTestBase.runTest(KewLoadTestBase.java:105) at org.apache.jmeter.protocol.java.sampler.JavaSampler.sample(JavaSampler.java:165) at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:298) at java.lang.Thread.run(Thread.java:613)

    Kuali JIRA | 9 years ago | Eric Westfall
    java.util.ConcurrentModificationException
  2. 0

    This is related to the "thin java client" for workflow. Essentially, it lazily creates a RiceConfigurer the first time a WorkflowDocument or WorkflowInfo method is invoked (if a RiceConfigurer has not already been configured). What I'm seeing in the load tests at the very beginning (if I set the ramp up to 1 second) is the error below. It goes away after the first few threads but it's obviously a concurrency issue with the lazy initailization of the thin client resource loading: java.util.ConcurrentModificationException at java.util.AbstractList$Itr.checkForComodification(AbstractList.java:449) at java.util.AbstractList$Itr.next(AbstractList.java:420) at org.kuali.rice.resourceloader.ResourceLoaderContainer.getService(ResourceLoaderContainer.java:150) at org.kuali.rice.resourceloader.GlobalResourceLoader.getService(GlobalResourceLoader.java:120) at org.kuali.rice.resourceloader.GlobalResourceLoader.getService(GlobalResourceLoader.java:127) at edu.iu.uis.eden.clientapp.WorkflowDocument.getWorkflowDocumentActions(WorkflowDocument.java:162) at edu.iu.uis.eden.clientapp.WorkflowDocument.getDocumentContent(WorkflowDocument.java:210) at org.kuali.rice.loadtests.RouteDocumentTest.runKewTest(RouteDocumentTest.java:20) at org.kuali.rice.loadtests.KewLoadTestBase.runTest(KewLoadTestBase.java:105) at org.apache.jmeter.protocol.java.sampler.JavaSampler.sample(JavaSampler.java:165) at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:298) at java.lang.Thread.run(Thread.java:613) java.util.ConcurrentModificationException at java.util.AbstractList$Itr.checkForComodification(AbstractList.java:449) at java.util.AbstractList$Itr.next(AbstractList.java:420) at org.kuali.rice.resourceloader.ResourceLoaderContainer.start(ResourceLoaderContainer.java:51) at org.kuali.rice.resourceloader.GlobalResourceLoader.start(GlobalResourceLoader.java:65) at org.kuali.rice.resourceloader.RootResourceLoaderLifecycle.start(RootResourceLoaderLifecycle.java:40) at org.kuali.rice.lifecycle.BaseCompositeLifecycle.start(BaseCompositeLifecycle.java:33) at org.kuali.rice.config.RiceConfigurer.start(RiceConfigurer.java:78) at edu.iu.uis.eden.clientapp.WorkflowDocument.initializeBus(WorkflowDocument.java:178) at edu.iu.uis.eden.clientapp.WorkflowDocument.getWorkflowDocumentActions(WorkflowDocument.java:161) at edu.iu.uis.eden.clientapp.WorkflowDocument.getDocumentContent(WorkflowDocument.java:210) at org.kuali.rice.loadtests.RouteDocumentTest.runKewTest(RouteDocumentTest.java:20) at org.kuali.rice.loadtests.KewLoadTestBase.runTest(KewLoadTestBase.java:105) at org.apache.jmeter.protocol.java.sampler.JavaSampler.sample(JavaSampler.java:165) at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:298) at java.lang.Thread.run(Thread.java:613)

    Kuali JIRA | 9 years ago | Eric Westfall
    java.util.ConcurrentModificationException
  3. 0

    loop on list with remove

    Stack Overflow | 7 years ago | enguerran
    java.util.ConcurrentModificationException
  4. Speed up your debug routine!

    Automated exception search integrated into your IDE

  5. 0

    How to deal with Concurrent Modification Exception (Threads forum at Coderanch)

    coderanch.com | 5 months ago
    java.util.ConcurrentModificationException

    3 unregistered visitors
    Not finding the right solution?
    Take a tour to get the most out of Samebug.

    Tired of useless tips?

    Automated exception search integrated into your IDE

    Root Cause Analysis

    1. java.util.ConcurrentModificationException

      No message provided

      at java.util.AbstractList$Itr.checkForComodification()
    2. Java RT
      AbstractList$Itr.next
      1. java.util.AbstractList$Itr.checkForComodification(AbstractList.java:449)
      2. java.util.AbstractList$Itr.next(AbstractList.java:420)
      2 frames
    3. org.kuali.rice
      RiceConfigurer.start
      1. org.kuali.rice.resourceloader.ResourceLoaderContainer.start(ResourceLoaderContainer.java:51)
      2. org.kuali.rice.resourceloader.GlobalResourceLoader.start(GlobalResourceLoader.java:65)
      3. org.kuali.rice.resourceloader.RootResourceLoaderLifecycle.start(RootResourceLoaderLifecycle.java:40)
      4. org.kuali.rice.lifecycle.BaseCompositeLifecycle.start(BaseCompositeLifecycle.java:33)
      5. org.kuali.rice.config.RiceConfigurer.start(RiceConfigurer.java:78)
      5 frames
    4. edu.iu.uis
      WorkflowDocument.getDocumentContent
      1. edu.iu.uis.eden.clientapp.WorkflowDocument.initializeBus(WorkflowDocument.java:178)
      2. edu.iu.uis.eden.clientapp.WorkflowDocument.getWorkflowDocumentActions(WorkflowDocument.java:161)
      3. edu.iu.uis.eden.clientapp.WorkflowDocument.getDocumentContent(WorkflowDocument.java:210)
      3 frames
    5. org.kuali.rice
      KewLoadTestBase.runTest
      1. org.kuali.rice.loadtests.RouteDocumentTest.runKewTest(RouteDocumentTest.java:20)
      2. org.kuali.rice.loadtests.KewLoadTestBase.runTest(KewLoadTestBase.java:105)
      2 frames
    6. Apache JMeter Java
      JavaSampler.sample
      1. org.apache.jmeter.protocol.java.sampler.JavaSampler.sample(JavaSampler.java:165)
      1 frame
    7. Apache JMeter Core
      JMeterThread.run
      1. org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:298)
      1 frame
    8. Java RT
      Thread.run
      1. java.lang.Thread.run(Thread.java:613)
      1 frame