FW: [Mondrian] deadlock in MemberCacheHelper

Julian Hyde jhyde at pentaho.com
Thu Apr 3 13:53:13 EDT 2008

The deadlock is a cyclic wait between two MemberCacheHelper objects. One
thread holds A and waits for B, another holds B and waits for A.
Usually deadlocks can be solved by agreeing a locking order by object type
(e.g. first lock the RolapSchema then lock the MemberCacheHelper) but that
won't work in this case, because both locked objects are the same type.
We need to figure out what operation would ever need to lock two different
MCHs. Thoughts on this?
PS Nicely formatted stack trace is attached.


From: mondrian-bounces at pentaho.org [mailto:mondrian-bounces at pentaho.org] On
Behalf Of Julian Hyde
Sent: Wednesday, April 02, 2008 9:45 PM
To: 'Mondrian developer mailing list'
Subject: RE: [Mondrian] deadlock in MemberCacheHelper

Logged bug 1932920
5302&atid=414613> Deadlock in MemberCacheHelper. Will take a look tomorrow.

> -----Original Message-----
> From: mondrian-bounces at pentaho.org
> [mailto:mondrian-bounces at pentaho.org] On Behalf Of John V. Sichi
> Sent: Wednesday, April 02, 2008 5:31 PM
> To: mondrian at pentaho.org
> Subject: [Mondrian] deadlock in MemberCacheHelper
> A concurrency scenario for LucidEra perf tests (run as part of
> validating the mainline Mondrian codebase for integration)
> ran into the
> deadlock below.  The code being tested was fairly recent (I
> can dig up
> the change number if any line numbers don't match).

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.pentaho.org/pipermail/mondrian/attachments/20080403/3202d450/attachment.html 
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: trace.txt
Url: http://lists.pentaho.org/pipermail/mondrian/attachments/20080403/3202d450/attachment.txt 

More information about the Mondrian mailing list