[Mondrian] Flush(Cube) does not flush the Evaluated members like.Members and .Children

Venkatesh U venkatesh20 at gmail.com
Tue Apr 5 13:17:23 EDT 2011


Hi Julian,
 I tried setting the mondrian.properties configuration
mondrian.rolap.EnableRolapCubeMemberCache<http://mondrian.pentaho.com/api/mondrian/olap/MondrianProperties.html#EnableRolapCubeMemberCache>
to
false and tried using the MemberEditCommand, I created a deletecommand and
tried to execute it, it throws an NPE. It does not seem to work. Is there
any test available which i can run to verify if this feature works?

Thanks,
Venki

On Tue, Apr 5, 2011 at 9:35 PM, Julian Hyde <jhyde at pentaho.com> wrote:

>  The cache control API only affects cells. That is by design.
>
> There are is some beta functionality to flush members of dimensions. See
> http://mondrian.pentaho.com/api/mondrian/olap/CacheControl.html, in
> particular methods involving MemberEditCommand and  MemberSet.
>
> Julian
>
>
>  ------------------------------
> *From:* mondrian-bounces at pentaho.org [mailto:mondrian-bounces at pentaho.org]
> *On Behalf Of *Venkatesh U
> *Sent:* Tuesday, April 05, 2011 3:06 AM
> *To:* Mondrian developer mailing list
> *Subject:* [Mondrian] Flush(Cube) does not flush the Evaluated members
> like.Members and .Children
>
> Hi All,
>   I have a situation, where after flushing a Cube through cache control
> API, the cube's data does get flushed. But the members of Evaluated
> functions like [Level].Members and [Level].Children does not get flushed.
> Please see the below log, I am able to get the value for the newly inserted
> dimension value [D1_4], when accessed through absolute reference, but
> [D1].Members does not include the newly added value [D1_4], though the cube
> is flushed.
>
> Attachment:Caching.zip contains simple java file I used for testing, log
> file output, Schema file, mondrian.properties and log4j properties
>
> The scenario is
> 1. Dimension tables get added with new values.
> 2. Flush the cube through flush(Cube) API
>
> Below is what happens
>
>  1. Before Flushing:
> Mdx QuerySELECT [Measures].[Value] ON COLUMNS,
>  {[D1].Members} on 1
> FROM [testCube]
>              Value
> ======= ==== =======
> All D1s      264,600
>         D1_1  10,800
>         D1_2 243,000
>         D1_3  10,800
>
> Inserted a row in TEST_DIM_1:sql:insert into TEST_DIM_1 values(4,'D1_4')
> Inserted a row in TEST_FACT sql:insert into TEST_FACT values(4,3,3,900)
> Commited the changed to DB
>
> 2. After Flushing:
> Mdx QuerySELECT [Measures].[Value] ON COLUMNS,
>  {[D1].Members} on 1
> FROM [testCube]
>              Value
> ======= ==== =======
> All D1s      265,500
>         D1_1  10,800
>         D1_2 243,000
>         D1_3  10,800
>
> 3. After Flushing:
> Mdx QuerySELECT  {[D1].[D1_4]} on 0
> FROM [testCube]
> mondrian.rolap.RolapAllCubeMember
> D1_4
> ====
>  900
>
>
> _______________________________________________
> Mondrian mailing list
> Mondrian at pentaho.org
> http://lists.pentaho.org/mailman/listinfo/mondrian
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.pentaho.org/pipermail/mondrian/attachments/20110405/398e1f16/attachment.html 


More information about the Mondrian mailing list