Vadim Gritsenko wrote:
> 
> MRUStore synchronization is on my list. In current version I do not
> expect issues except some exceptions, but I will change it to be
> properly synchronized.
> 
Hmm, all hanging threads log the following lines from the hold()
method:
        if (getLogger().isDebugEnabled()) {
            getLogger().debug("Holding object in memory:");
            getLogger().debug("  key: " + key);
            getLogger().debug("  value: " + value);
        }
And then nothing is logged. The next message in the log would
be the release of the xml serializer but this never shows up,
so I guess this is a synchronization problem in the MRUStore.

Carsten

> Vadim
> 
> > From: Carsten Ziegeler [mailto:[EMAIL PROTECTED]]
> > 
> > Hi Team,
> > 
> > after investigating a little bit in some lockups I found out that
> > the MRUStore is not synchronized. Is this by intention?
> > 
> > It seems that under high load and with a little bit of luck all
> threads
> > hang in this loop in the hold() method:
> > 
> > while (this.mrulist.size() >= this.maxobjects) {
> >             /** ...ok, heapsize is reached, remove the last element...
> */
> >             this.free();
> > }
> > 
> > This is only an assumption. Anyone if this might be possible with
> let's say
> > 100 concurrent threads?
> > 
> > Carsten
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, email: [EMAIL PROTECTED]
> 

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

Reply via email to