> >> Exception in thread "Timer-0" 
java.util.ConcurrentModificationException
> >>         at java.util.HashMap$HashIterator.nextEntry(Unknown Source)
> >>         at java.util.HashMap$ValueIterator.next(Unknown Source)
> >>         at 
> >> org.apache.cocoon.components.flow.ContinuationsManagerImpl.
> invalidateContinuations( 
> >> ContinuationsManagerImpl.java:390)
> >>         at 
> >> org.apache.cocoon.components.flow.
> ContinuationsManagerImpl$WebContinuationsHolder.valueUnbound( 
> >> ContinuationsManagerImpl.java:548)
> >>         at 
> >> org.mortbay.jetty.servlet.AbstractSessionManager$Session.unbindValue(
> >> AbstractSessionManager.java:1125)
> > 
> > It's a new bug I introduced with [1]. Reviewing the changes I did I 
> > found that I "optimized" some code. :-) It's around line 390 [2]. I'll 

> > have a look on how to fix it. Sorry for the inconveniences.
> 
> Two different proposals:
> 1. Reintroducing the original workaround using 
> continuationsHolder.holder.values().toArray() in 
> invalidateContinuations(..).
> 
> 2. Adding iter.remove() directly after iter.next() in line 390. The 
> later problematic call to remove the continuation from the map would 
> just not do anything.
> 
> WDYT?

+1 for first proposal) this seems much cleaner to me, than calling 
iter.next() and afterwards iter.remove()....

cheers,gabriel

Reply via email to