[Mondrian] Usage of PinSet class

Julian Hyde julianhyde at speakeasy.net
Mon May 7 15:24:50 EDT 2007


That probably is the only usage - but it is sufficient. Segments are
normally held using weak/soft references (I forget which) but a hard
reference in the pin set is sufficient to prevent it from being
garbage-collected for the duration of the query.
 
Julian


  _____  

From: mondrian-bounces at pentaho.org [mailto:mondrian-bounces at pentaho.org]
On Behalf Of Thiyagu Palanisamy
Sent: Monday, May 07, 2007 7:46 AM
To: mondrian at pentaho.org
Subject: [Mondrian] Usage of PinSet class



Hello, 

  PinSetImpl stores reference to all the Segments which are used in a
query, but stored references are used only at 

 Aggregation: line no 655. 

                // avoid to call wouldContain - its slow 
                if (pinSet != null 
                        && !((AggregationManager.PinSetImpl)
pinSet).contains(segment) 
                        && segment.wouldContain(keys)) 
                { 
                    ((AggregationManager.PinSetImpl)
pinSet).add(segment); 
                } 

And this too is to add it to the list. 

Can you please let me know if I'm missing any other usage of PinSet? 

Thanks, 
Thiyagu 


 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.pentaho.org/pipermail/mondrian/attachments/20070507/987f1114/attachment.html 


More information about the Mondrian mailing list