Hi Arne!

The stack trace tells you that another thread has the global
read/write lock. So, correctly speaking this is a "live lock". The
reason most likely is a thread that still runs and has forgotten to
release this lock.

Having said this, even switching to a deadlock free solution will not
help, as you have no deadlocks here.

Cheers

Oliver

2007/4/17, Arne v.Irmer <[EMAIL PROTECTED]>:
Hi,
we are using slide in our e-learning platform
http://ews2.uni-dortmund.de in a production environment. We get into
deep trouble with deadlocks in Slide!
I checked out Silde 2.2pre1. In the RELEASE-NOTES-2.2 there is the sentence:
"- New option for a fine grained, deadlock-less locking scheme"
My question is:
- Should I change to 2.2pre1 for my productive environment? How can I
switch back if we discover other problems with this pre-release?
- Is there a patch for version 2.1. that fixes these deadlocks?

Please help.
Thanks in advance
 Arne v.Irmer

Our configuration:
Slide 2.1 with fixed hasmap "suspendedLocks" in
org.apache.slide.store.ExtendedStore.
using a filestore in Tomcat 5.5

Here are some stacktraces from the jconsole in the case of the deadlocks:

Name: http-129.217.205.43-8080-Processor3
State: TIMED_WAITING on
[EMAIL PROTECTED]
Total blocked: 273  Total waited: 332

Stack trace:
java.lang.Object.wait(Native Method)
org.apache.commons.transaction.locking.GenericLock.acquire(GenericLock.java:241)
org.apache.commons.transaction.locking.GenericLock.acquire(GenericLock.java:165)
org.apache.slide.webdav.method.AbstractWebdavMethod.assureGlobalWriteLock(AbstractWebdavMethod.java:847)
org.apache.slide.webdav.method.AbstractWebdavMethod.run(AbstractWebdavMethod.java:362)
org.apache.slide.webdav.WebdavServlet.service(WebdavServlet.java:155)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
org.apache.slide.webdav.filter.LogFilter.doFilter(LogFilter.java:141)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:524)
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:419)
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
java.lang.Thread.run(Thread.java:595)

Name: http-129.217.205.43-8080-Processor3
State: TIMED_WAITING on
[EMAIL PROTECTED]
Total blocked: 44  Total waited: 80

Stack trace:
java.lang.Object.wait(Native Method)
org.apache.commons.transaction.locking.GenericLock.acquire(GenericLock.java:241)
org.apache.commons.transaction.locking.GenericLock.acquire(GenericLock.java:165)
org.apache.slide.webdav.method.AbstractWebdavMethod.assureGlobalReadLock(AbstractWebdavMethod.java:838)
org.apache.slide.webdav.method.AbstractWebdavMethod.run(AbstractWebdavMethod.java:360)
org.apache.slide.webdav.WebdavServlet.service(WebdavServlet.java:155)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
org.apache.slide.webdav.filter.LogFilter.doFilter(LogFilter.java:141)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:524)
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:419)
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
java.lang.Thread.run(Thread.java:595)

--
Dipl.-Phys. Arne v.Irmer
Medienzentrum Universität Dortmund
Emil-Figge-Straße 50
44227 Dortmund
Tel.: ++49 231 755 7127
Fax : ++49 231 755 4597


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

Reply via email to