<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=us-ascii">
<META content="MSHTML 6.00.6001.18226" name=GENERATOR></HEAD>
<BODY>
<DIV><SPAN class=193494619-19052009><FONT face="Lucida Sans" color=#000080 
size=2>I don't know if there would be integrity issues if two users were using 
the same URL but ended up with different schema objects. Obviously it would be 
inefficient: each schema would have its own cache.</FONT></SPAN></DIV>
<DIV><SPAN class=193494619-19052009><FONT face="Lucida Sans" color=#000080 
size=2></FONT></SPAN>&nbsp;</DIV>
<DIV><SPAN class=193494619-19052009><FONT face="Lucida Sans" color=#000080 
size=2>The ideal behavior would be for user B to wait if it needs the same 
schema that A is currently loading. But if C comes along and wants a different 
schema, there should be a very short critical section where the system figures 
out that the schema does not exist and needs to be loaded.</FONT></SPAN></DIV>
<DIV><SPAN class=193494619-19052009><FONT face="Lucida Sans" color=#000080 
size=2></FONT></SPAN>&nbsp;</DIV>
<DIV><SPAN class=193494619-19052009><FONT face="Lucida Sans" color=#000080 
size=2>Can you please log a bug for this issue?</FONT></SPAN></DIV>
<DIV><SPAN class=193494619-19052009><FONT face="Lucida Sans" color=#000080 
size=2></FONT></SPAN>&nbsp;</DIV>
<DIV><SPAN class=193494619-19052009><FONT face="Lucida Sans" color=#000080 
size=2>Julian</FONT></SPAN></DIV><BR>
<BLOCKQUOTE dir=ltr 
style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #000080 2px solid; MARGIN-RIGHT: 0px">
  <DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left>
  <HR tabIndex=-1>
  <FONT face=Tahoma size=2><B>From:</B> mondrian-bounces@pentaho.org 
  [mailto:mondrian-bounces@pentaho.org] <B>On Behalf Of </B>Matt 
  Campbell<BR><B>Sent:</B> Tuesday, May 19, 2009 10:46 AM<BR><B>To:</B> Mondrian 
  developer mailing list<BR><B>Subject:</B> [Mondrian] 
  Pool.get()<BR></FONT><BR></DIV>
  <DIV></DIV>The static class Pool has .get methods to retrieve RolapSchemas. 
  &nbsp;These methods are synchronized. &nbsp;Are they synchronized to prevent 
  data integrity issues that might arise if the same schema was loaded multiple 
  times simultaneously?
  <DIV><BR></DIV>
  <DIV>We have been running concurrent usage testing and have noticed that when 
  multiple users all simultaneously begin using the system (each connecting to 
  different catalogs) that there is a bottleneck as schemas are 
loaded.</DIV></BLOCKQUOTE></BODY></HTML>