On 30 Sep 2010, at 17:16, Ian Boston wrote: > > On 30 Sep 2010, at 16:50, Ian Boston wrote: > >> Looking in the code most of those methods are synchronised, which feels >> wrong as it will make the server single threaded to read, write I can >> understand, but not read. I thought Jackrabbit was multithreaded on read? >> Do you know the reasoning behind this ? > > Hang on, isn't the ItemManagerImpl bound to session ? (there is a session > property there)
Wearing sack cloth and ashes at the moment, if I take Sling OOTB with no modifications YourKit reports no thread synchronization issues associated with request processing. The largest cause of blocking on a monitor is in the classloader itself, with 50 threads running for the past 20 minutes flat out I am seeing 76K instances of a block in the classloader all from a Class.forName(...) inside the HttpServlet presumably syncing on the classloader. ItemManager has blocked, but only 161 times, So my problems are caused by something I have done outside Sling in my own code, almost certainly related to sharing a Session between threads. Sorry for causing alarm (if I did). Ian > > Which means that a session is being shared between threads, making it block > threads ? > Does that make sense ? > Ian > >
