<div dir="ltr">This stack tells us that the Actor has received a notification from an external event. A new segment must be indexed. The Actor is waiting on the RolapSchemaPool to free up so that it can grap a Star instance and pin the segment.<div><br></div><div>What other threads are waiting on that same monitor? (<span style="font-family:Calibri,sans-serif;font-size:14.6667px">0x00007f1ad965f000)</span></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Mar 30, 2016 at 9:14 AM, Wright, Jeff <span dir="ltr">&lt;<a href="mailto:jeff.s.wright@truvenhealth.com" target="_blank">jeff.s.wright@truvenhealth.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">





<div lang="EN-US" link="#0563C1" vlink="#954F72">
<div>
<p class="MsoNormal">We’ve seen our application hang a couple times. Looking at thread dumps, I’m suspicious of this excerpt:<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">&quot;mondrian.rolap.agg.SegmentCacheManager$ACTOR&quot; daemon prio=10 tid=0x00007f1b34170000 nid=0xf25 waiting for monitor entry [0x00007f1ad965f000]<u></u><u></u></p>
<p class="MsoNormal">   java.lang.Thread.State: BLOCKED (on object monitor)<u></u><u></u></p>
<p class="MsoNormal">                at mondrian.rolap.RolapSchemaPool.getRolapSchemas(RolapSchemaPool.java:420)<u></u><u></u></p>
<p class="MsoNormal">                - waiting to lock &lt;0x00000005e23c2028&gt; (a mondrian.rolap.RolapSchemaPool)<u></u><u></u></p>
<p class="MsoNormal">                at mondrian.rolap.RolapSchema.getRolapSchemas(RolapSchema.java:930)<u></u><u></u></p>
<p class="MsoNormal">                at mondrian.rolap.agg.SegmentCacheManager.getStar(SegmentCacheManager.java:1621)<u></u><u></u></p>
<p class="MsoNormal">                at mondrian.rolap.agg.SegmentCacheManager$Handler.visit(SegmentCacheManager.java:661)<u></u><u></u></p>
<p class="MsoNormal">                at mondrian.rolap.agg.SegmentCacheManager$ExternalSegmentCreatedEvent.acceptWithoutResponse(SegmentCacheManager.java:1222)<u></u><u></u></p>
<p class="MsoNormal">                at mondrian.rolap.agg.SegmentCacheManager$Actor.run(SegmentCacheManager.java:1019)<u></u><u></u></p>
<p class="MsoNormal">                at java.lang.Thread.run(Thread.java:724)<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">I don’t fully understand SegmentCacheManager, but based on Julian’s 2012 blog post I get the impression the Actor thread is supposed to run very. If that corresponds to the stack trace above, that’s a big problem - we see schema loads take
 minutes.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">I also see that there were some code changes in August last year for MONDRIAN-2390, to make locking for schema load lower level. We don’t have that code.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Btw we have a distributed cache.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Does it sound like I’m on to a problem in our environment? Maybe even a general problem?<span class="HOEnZb"><font color="#888888"><u></u><u></u></font></span></p><span class="HOEnZb"><font color="#888888">
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">--Jeff Wright<u></u><u></u></p>
</font></span></div>
</div>

<br>_______________________________________________<br>
Mondrian mailing list<br>
<a href="mailto:Mondrian@pentaho.org">Mondrian@pentaho.org</a><br>
<a href="http://lists.pentaho.org/mailman/listinfo/mondrian" rel="noreferrer" target="_blank">http://lists.pentaho.org/mailman/listinfo/mondrian</a><br>
<br></blockquote></div><br></div>