[Mondrian] Re: Cron <jhyde at marmalade> nice bash --login /home/jhyde/open2/mondrian/bin/megatest --nightly

Zelaine Fong zfong at lucidera.com
Mon May 5 11:43:19 EDT 2008


Which database does the failures below occur in?  I just ran the test 
against Derby and MySQL with the properties you specified, and the tests 
pass for me.

I'll try the tests from your first email against Oracle to see if I can 
reproduce those.

Note that even *before* I checked in my changes, I noticed that a number 
of these tests that depend on the test generating a specific SQL 
statement pattern were failing for me for both Derby and MySQL when run 
against JDK 1.6.  Because of the order of data returned by the db and 
the order in which data is stored in Java hash sets, those tests 
appeared to be unreliable.  The order of elements in the WHERE clause 
ended up being shuffled around, and therefore different from the 
expected SQL.  I'm not sure if that's also the reason why these tests 
are failing under certain configurations.

-- Zelaine

Julian Hyde wrote:
> Likewise, if you set mondrian.test.ExpDependencies=10
> mondrian.rolap.evaluate.MaxEvalDepth=6 mondrian.test.random.seed=-1
> mondrian.expCache.enable=false, there are 2 failures present in 10937 that
> are absent in 10936. Can you look into these also.
> 
>      [java] 2)
> testDistinctCountAggHappensInGSQueryForSubsetOfMembers(mondrian.rolap.agg.Ag
> gregationOnDistinctCountMeasuresTest)junit.framework.AssertionFailedError:
> expected query [select "store"."store_state" as "c0",
> "time_by_day"."the_year" as "c1", count(distinct
> "sales_fact_1997"."customer_id") as "m0", grouping("store"."store_state") as
> "g0" from "store" "store", "sales_fact_1997" "sales_fact_1997",
> "time_by_day" "time_by_day" where "sales_fact_1997"."store_id" =
> "store"."store_id" and "store"."store_state" in ('CA', 'OR') and
> "sales_fact_1997"."time_id" = "time_by_day"."time_id" and
> "time_by_day"."the_year" = 1997 group by grouping sets
> (("store"."store_state","time_by_day"."the_year"),("time_by_day"."the_year")
> )] did not occur
>      [java] 	at
> mondrian.rolap.BatchTestCase.assertQuerySqlOrNot(BatchTestCase.java:380)
>      [java] 	at
> mondrian.rolap.BatchTestCase.assertQuerySql(BatchTestCase.java:263)
>      [java] 	at
> mondrian.rolap.agg.AggregationOnDistinctCountMeasuresTest.testDistinctCountA
> ggHappensInGSQueryForSubsetOfMembers(AggregationOnDistinctCountMeasuresTest.
> java:799)
>      [java] 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> Method)
>      [java] 	at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39
> )
>      [java] 	at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl
> .java:25)
>      [java] 	at
> mondrian.test.MondrianTestRunner$2.run(MondrianTestRunner.java:130)
>      [java] 	at java.lang.Thread.run(Thread.java:595)
>      [java] 3)
> testAggregateDistinctCount3(mondrian.rolap.FastBatchingCellReaderTest)junit.
> framework.AssertionFailedError: expected query [select
> "time_by_day"."the_year" as "c0", "time_by_day"."quarter" as "c1",
> "promotion"."media_type" as "c2", count(distinct
> "sales_fact_1997"."customer_id") as "m0" from "time_by_day" "time_by_day",
> "sales_fact_1997" "sales_fact_1997", "promotion" "promotion" where
> "sales_fact_1997"."time_id" = "time_by_day"."time_id" and
> "time_by_day"."the_year" = 1997 and "time_by_day"."quarter" = 'Q1' and
> "sales_fact_1997"."promotion_id" = "promotion"."promotion_id" and
> "promotion"."media_type" in ('Radio', 'TV') group by
> "time_by_day"."the_year", "time_by_day"."quarter", "promotion"."media_type"]
> did not occur
>      [java] 	at
> mondrian.rolap.BatchTestCase.assertQuerySqlOrNot(BatchTestCase.java:380)
>      [java] 	at
> mondrian.rolap.BatchTestCase.assertQuerySql(BatchTestCase.java:263)
>      [java] 	at
> mondrian.rolap.FastBatchingCellReaderTest.testAggregateDistinctCount3(FastBa
> tchingCellReaderTest.java:1322)
>      [java] 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> Method)
>      [java] 	at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39
> )
>      [java] 	at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl
> .java:25)
>      [java] 	at
> mondrian.test.MondrianTestRunner$2.run(MondrianTestRunner.java:130)
>      [java] 	at java.lang.Thread.run(Thread.java:595)
> 
> Julian
>  
> 
>> -----Original Message-----
>> From: Julian Hyde [mailto:jhyde at pentaho.com] 
>> Sent: Sunday, May 04, 2008 11:03 AM
>> To: 'Zelaine Fong'
>> Cc: 'mondrian at pentaho.org'
>> Subject: FW: Cron <jhyde at marmalade> nice bash --login 
>> /home/jhyde/open2/mondrian/bin/megatest --nightly
>>
>> Zelaine,
>>
>> These two errors started occurring against oracle/JDK 1.5 
>> (and other configurations - but interestingly not oracle/JDK 
>> 1.6) with your change 10937. Can you take a look at them please.
>>
>> Running test with JDK=jdk1.5 retroweave= database=oracle props={}
>>      [java] 1) 
>> testDistinctCountAggHappensInGSQueryForSubsetOfMembers(mondria
>> n.rolap.agg.AggregationOnDistinctCountMeasuresTest)junit.frame
>> work.AssertionFailedError: expected query [select 
>> "store"."store_state" as "c0", "time_by_day"."the_year" as 
>> "c1", count(distinct "sales_fact_1997"."customer_id") as 
>> "m0", grouping("store"."store_state") as "g0" from "store" 
>> "store", "sales_fact_1997" "sales_fact_1997", "time_by_day" 
>> "time_by_day" where "sales_fact_1997"."store_id" = 
>> "store"."store_id" and "store"."store_state" in ('CA', 'OR') 
>> and "sales_fact_1997"."time_id" = "time_by_day"."time_id" and 
>> "time_by_day"."the_year" = 1997 group by grouping sets 
>> (("store"."store_state","time_by_day"."the_year"),("time_by_da
>> y"."the_year"))] did not occur
>>      [java] 2) 
>> testAggregateDistinctCount3(mondrian.rolap.FastBatchingCellRea
>> derTest)junit.framework.AssertionFailedError: expected query 
>> [select "time_by_day"."the_year" as "c0", 
>> "time_by_day"."quarter" as "c1", "promotion"."media_type" as 
>> "c2", count(distinct "sales_fact_1997"."customer_id") as "m0" 
>> from "time_by_day" "time_by_day", "sales_fact_1997" 
>> "sales_fact_1997", "promotion" "promotion" where 
>> "sales_fact_1997"."time_id" = "time_by_day"."time_id" and 
>> "time_by_day"."the_year" = 1997 and "time_by_day"."quarter" = 
>> 'Q1' and "sales_fact_1997"."promotion_id" = 
>> "promotion"."promotion_id" and "promotion"."media_type" in 
>> ('Radio', 'TV') group by "time_by_day"."the_year", 
>> "time_by_day"."quarter", "promotion"."media_type"] did not occur
>>
>> Julian
>>
> 





More information about the Mondrian mailing list