Asankha,

I saw your fix, which solves the problem of multiple threads from activating
the TimeoutHandler.
This is a one reason for the CoccurentModificationException.

But it could also occur if SynapseCallbackReceiver removes a callback, while
the TimeoutHandler
is processing an iterator of the callbackStore. I synchronized the iterator
access code for callbackStore
with callbackStore as the lock object to prevent this problem.

Chathura


On 4/29/07, Asankha C. Perera <[EMAIL PROTECTED]> wrote:

Chathura

I had checked in a fix for this already that prevented multiple threads
from actually even getting queued to process timeouts, if one instance
is already running..  So this should be fine now anyway.. Paul.. can you
confirm this from your tests?

asankha

Chathura Ekanayake wrote:
> Hi Paul,
>
> The exception you have pointed out is caused by a concurrent issue in
> the TimeoutHandler.
> It accesses an iterator of the callbackStore, which can also be
> modified concurrently by the SynaspeCallbackReceiver.
>
> I made it synchronized, so that it should not occur now.
>
> Chathura
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Reply via email to