New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[MONDRIAN-2530] Native Filter can exclude null members #795
Conversation
Build Completed❌ This pull request has errors. They will need to be addressed before it can be accepted. See below for more details. Some links are also available below for further assistance in addressing those issues. Build Commandsmvn -B -fn -DrunITs=true -f pom.xml clean install && mvn -B -f pom.xml site Cleanup Commandsmvn -B -f pom.xml build-helper:remove-project-artifact Changed files mondrian/src/it/java/mondrian/test/CompoundSlicerTest.java
mondrian/src/main/java/mondrian/spi/impl/ImpalaDialect.java
mondrian/src/main/java/mondrian/spi/impl/MySqlDialect.java
mondrian/src/main/java/mondrian/spi/impl/OracleDialect.java
mondrian/src/main/java/mondrian/spi/impl/PostgreSqlDialect.java Newly Broken Tests:mondrian.rolap.aggmatcher.MultipleColsInTupleAggTest.testNativeFilterWithoutMeasuresAndLevelWithProps:🔴 junit.framework.AssertionFailedError:
expected query [select
`cat`.`cat` as `c0`,
`cat`.`cap` as `c1`,
`cat`.`ord` as `c2`,
`cat`.`name3` as `c3`,
`product_cat`.`name2` as `c4`,
`product_cat`.`cap` as `c5`,
`product_cat`.`ord` as `c6`,
`test_lp_xx2_fact`.`prodname` as `c7`,
`product_csv`.`color` as `c8`
from
`product_csv` as `product_csv`,
`product_cat` as `product_cat`,
`cat` as `cat`,
`test_lp_xx2_fact` as `test_lp_xx2_fact`
where
`produ mondrian.rolap.NativeFilterMatchingTest.testNegativeMatching:🔴 junit.framework.AssertionFailedError: expected query [select `customer`.`country` as `c0`, `customer`.`state_province` as `c1`, `customer`.`city` as `c2`, `customer`.`customer_id` as `c3`, CONCAT(`customer`.`fname`, ' ', `customer`.`lname`) as `c4`, CONCAT(`customer`.`fname`, ' ', `customer`.`lname`) as `c5`, `customer`.`gender` as `c6`, `customer`.`marital_status` as `c7`, `customer`.`education` as `c8`, `customer`.`yearly_income` as `c9` from `customer` as `customer` group by `customer`.`count mondrian.rolap.NativeFilterMatchingTest.testPositiveMatching:🔴 junit.framework.AssertionFailedError: expected query [select `customer`.`country` as `c0`, `customer`.`state_province` as `c1`, `customer`.`city` as `c2`, `customer`.`customer_id` as `c3`, CONCAT(`customer`.`fname`, ' ', `customer`.`lname`) as `c4`, CONCAT(`customer`.`fname`, ' ', `customer`.`lname`) as `c5`, `customer`.`gender` as `c6`, `customer`.`marital_status` as `c7`, `customer`.`education` as `c8`, `customer`.`yearly_income` as `c9` from `customer` as `customer` group by `customer`.`count mondrian.rolap.NonEmptyTest.testMondrian1133:🔴 junit.framework.AssertionFailedError:
expected query [select
`store`.`store_country` as `c0`,
`store`.`store_state` as `c1`
from
`store` as `store`
group by
`store`.`store_country`,
`store`.`store_state`
having
UPPER(c1) REGEXP '.*CA.*'
order by
ISNULL(`store`.`store_country`) ASC, `store`.`store_country` ASC,
ISNULL(`store`.`store_state`) ASC, `store`.`store_state` ASC] did not occur
at junit.framework.Assert.fail(Assert.java:47)
at mondrian.rolap.BatchTestCas mondrian.rolap.NonEmptyTest.testMondrian1133WithAggs:🔴 junit.framework.AssertionFailedError:
expected query [select
`store`.`store_country` as `c0`,
`store`.`store_state` as `c1`
from
`store` as `store`
group by
`store`.`store_country`,
`store`.`store_state`
having
UPPER(c1) REGEXP '.*CA.*'
order by
ISNULL(`store`.`store_country`) ASC, `store`.`store_country` ASC,
ISNULL(`store`.`store_state`) ASC, `store`.`store_state` ASC] did not occur
at junit.framework.Assert.fail(Assert.java:47)
at mondrian.rolap.BatchTestCas mondrian.test.CompoundSlicerTest.testBugMondrian899:🔴 junit.framework.ComparisonFailure:
Expected:
Axis #0:
{[Time].[1997].[Q1].[2]}
{[Time].[1997].[Q1].[3]}
{[Time].[1997].[Q2].[4]}
{[Time].[1997].[Q2].[5]}
{[Time].[1997].[Q2].[6]}
{[Time].[1997].[Q3].[7]}
{[Time].[1997].[Q3].[8]}
{[Time].[1997].[Q3].[9]}
{[Time].[1997].[Q4].[10]}
{[Time].[1997].[Q4].[11]}
Axis #1:
{[Measures].[Unit Sales]}
Axis #2:
{[Customers].[USA].[WA].[Spokane].[Wildon Cameron]}
{[Customers].[USA].[WA].[Spokane].[Emily Barela]}
{[Customers].[USA].[WA].[Spokane].[Dauna Barton mondrian.test.CompoundSlicerTest.testCompoundAggCalcMemberInSlicer1:🔴 junit.framework.ComparisonFailure:
Compound aggregated member should return same results with native filter on/off expected:<...Janis Strunk]}
{[Customers].[USA].[OR].[Albany].[L. Albert Wall]}
{[Customers].[USA].[OR].[Albany].[Norman Arnold]}
{[Customers].[USA].[OR].[Albany].[Pauline Kubitschek]}
{[Customers].[USA].[OR].[Albany].[Peggy Denton]}
{[Customers].[USA].[OR].[Albany].[Roslyn Jasper]}
{[Customers].[USA].[OR].[Albany].[Tina Heidi]}
{[Customers].[USA].[OR].[Albany].[Veronica Sulkind]}
{ mondrian.test.NamedSetTest.testHierarchizeNamedSetImmutable:🔴 junit.framework.ComparisonFailure:
Expected:
Axis #0:
{}
Axis #1:
{[Measures].[Unit Sales]}
Axis #2:
{[Customers].[USA].[WA].[Yakima].[Tracy Meyer], [Store].[USA].[WA].[Yakima].[Store 23]}
{[Customers].[USA].[WA].[Yakima].[Vanessa Thompson], [Store].[USA].[WA].[Yakima].[Store 23]}
{[Customers].[USA].[WA].[Yakima].[Velma Lykes], [Store].[USA].[WA].[Yakima].[Store 23]}
{[Customers].[USA].[WA].[Yakima].[William Battaglia], [Store].[USA].[WA].[Yakima].[Store 23]}
{[Customers].[USA].[WA].[Yakima].[W mondrian.test.NamedSetTest.testNamedSetRangeInSlicerPrimed:🔴 junit.framework.ComparisonFailure:
Expected:
Axis #0:
{[Time].[1997].[Q1].[2]}
{[Time].[1997].[Q1].[3]}
{[Time].[1997].[Q2].[4]}
{[Time].[1997].[Q2].[5]}
{[Time].[1997].[Q2].[6]}
{[Time].[1997].[Q3].[7]}
{[Time].[1997].[Q3].[8]}
{[Time].[1997].[Q3].[9]}
{[Time].[1997].[Q4].[10]}
{[Time].[1997].[Q4].[11]}
Axis #1:
{[Measures].[Unit Sales]}
Axis #2:
{[Customers].[USA].[WA].[Spokane].[Wildon Cameron]}
{[Customers].[USA].[WA].[Spokane].[Emily Barela]}
{[Customers].[USA].[WA].[Spokane].[Dauna Barton Still Broken Tests:mondrian.rolap.agg.SegmentBuilderTest.testSameRollupRegardlessOfSegmentOrderNoWildcards:🔴 junit.framework.AssertionFailedError:
SegmentMap is empty. No segmentIds matched test parameters. Full segment cache: [*Segment Header
Schema:[FoodMart]
Checksum:[4079ae1a3e5190690712b752a45ee209]
Cube:[Sales]
Measure:[Unit Sales]
Axes:[
{product_class.product_department=('Dairy')}
{product_class.product_family=('Drink')}
{time_by_day.the_year=('1997')}]
Excluded Regions:[]
Compound Predicates:[]
ID:[85d83d3e873198a09ac235cfdb2864b8d310b6b4de8d0c2dbd2e94801f21e204]
, *Segment Header mondrian.rolap.agg.SegmentBuilderTest.testSameRollupRegardlessOfSegmentOrderThreeSegs:🔴 junit.framework.AssertionFailedError:
SegmentMap is empty. No segmentIds matched test parameters. Full segment cache: [*Segment Header
Schema:[FoodMart]
Checksum:[4079ae1a3e5190690712b752a45ee209]
Cube:[Sales]
Measure:[Unit Sales]
Axes:[
{product_class.product_department=('Dairy')}
{product_class.product_family=('Drink')}
{time_by_day.the_year=('1997')}]
Excluded Regions:[]
Compound Predicates:[]
ID:[85d83d3e873198a09ac235cfdb2864b8d310b6b4de8d0c2dbd2e94801f21e204]
, *Segment Header mondrian.rolap.agg.SegmentBuilderTest.testSameRollupRegardlessOfSegmentOrderWithData:🔴 junit.framework.AssertionFailedError:
SegmentMap is empty. No segmentIds matched test parameters. Full segment cache: [*Segment Header
Schema:[FoodMart]
Checksum:[4079ae1a3e5190690712b752a45ee209]
Cube:[Sales]
Measure:[Unit Sales]
Axes:[
{product_class.product_department=('Dairy')}
{product_class.product_family=('Drink')}
{time_by_day.the_year=('1997')}]
Excluded Regions:[]
Compound Predicates:[]
ID:[85d83d3e873198a09ac235cfdb2864b8d310b6b4de8d0c2dbd2e94801f21e204]
, *Segment Header mondrian.rolap.agg.SegmentBuilderTest.testSameRollupRegardlessOfSegmentOrderWithEmptySegmentBody:🔴 junit.framework.AssertionFailedError:
SegmentMap is empty. No segmentIds matched test parameters. Full segment cache: [*Segment Header
Schema:[FoodMart]
Checksum:[4079ae1a3e5190690712b752a45ee209]
Cube:[Sales]
Measure:[Unit Sales]
Axes:[
{time_by_day.month_of_year=('2','3','4','5','6','7')}
{time_by_day.quarter=('Q1','Q2','Q3')}
{time_by_day.the_year=('1998')}]
Excluded Regions:[]
Compound Predicates:[]
ID:[208c5162e6bb49ceb217eab3621f4fc0209f73265c291a3f8aa673aee775de81]
, *Segment mondrian.rolap.CacheControlTest.testFlush:🔴 junit.framework.ComparisonFailure:
expected:<...7b4af973b0d21f364b0a746f5565cb03]
Cube:[Sales]
Measure:[Unit Sales]
Axes:[
{product_class.product_family=(*)}
{time_by_day.quarter=(*)}
{time_by_day.the_year=(*)}]
Excluded Regions:[]
Compound Predicates:[]
ID:[81b691ea51d52148d99bccac888d5eebc210cfd1a3424b4f59b2ad59323da286]
*Segment Header
Schema:[FoodMart]
Checksum:[7b4af973b0d21f364b0a746f5565cb03]
Cube:[Sales]
Measure:[Unit Sales]
Axes:[
{product_class.product_family=(*)}
mondrian.rolap.CacheControlTest.testMondrian1094:🔴 junit.framework.ComparisonFailure:
expected:<...7b4af973b0d21f364b0a746f5565cb03]
Cube:[Sales]
Measure:[Unit Sales]
Axes:[
{store.store_country=('USA')}
{time_by_day.the_year=('1997')}]
Excluded Regions:[]
Compound Predicates:[]
ID:[1491d28d8de0649874b1c13ef4f142406776a2ed46ad27fd21dff9e9306c75d7]
discard segment - it cannot be constrained and maintain consistency:
*Segment Header
Schema:[FoodMart]
Checksum:[7b4af973b0d21f364b0a746f5565cb03]
Cube:[Sales]
Measure:[Unit Sales]
Axes:[
mondrian.rolap.CacheControlTest.testPartialFlush:🔴 junit.framework.ComparisonFailure:
expected:<...7b4af973b0d21f364b0a746f5565cb03]
Cube:[Sales]
Measure:[Unit Sales]
Axes:[
{product_class.product_family=(*)}
{time_by_day.quarter=(*)}
{time_by_day.the_year=(*)}]
Excluded Regions:[]
Compound Predicates:[]
ID:[81b691ea51d52148d99bccac888d5eebc210cfd1a3424b4f59b2ad59323da286]
*Segment Header
Schema:[FoodMart]
Checksum:[7b4af973b0d21f364b0a746f5565cb03]
Cube:[Sales]
Measure:[Unit Sales]
Axes:[
{product_class.product_family=(*)}
mondrian.rolap.CacheControlTest.testPartialFlush_2:🔴 junit.framework.ComparisonFailure:
expected:<...7b4af973b0d21f364b0a746f5565cb03]
Cube:[Sales]
Measure:[Unit Sales]
Axes:[
{customer.gender=('M')}
{time_by_day.the_year=('1997')}]
Excluded Regions:[]
Compound Predicates:[]
ID:[956eb6693e4890a305b086aab9fa5f3b33f541e8eb1321e2e4c5f01cff475fa4]
Cache state after flush:
*Segment Header
Schema:[FoodMart]
Checksum:[7b4af973b0d21f364b0a746f5565cb03]
Cube:[Sales]
Measure:[Unit Sales]
Axes:[
{customer.gender=('M')}
{time_by_day.the_year= mondrian.rolap.CacheControlTest.testPartialFlushRange:🔴 junit.framework.ComparisonFailure:
expected:<...7b4af973b0d21f364b0a746f5565cb03]
Cube:[Sales]
Measure:[Unit Sales]
Axes:[
{product_class.product_family=(*)}
{time_by_day.quarter=(*)}
{time_by_day.the_year=(*)}]
Excluded Regions:[]
Compound Predicates:[]
ID:[81b691ea51d52148d99bccac888d5eebc210cfd1a3424b4f59b2ad59323da286]
*Segment Header
Schema:[FoodMart]
Checksum:[7b4af973b0d21f364b0a746f5565cb03]
Cube:[Sales]
Measure:[Unit Sales]
Axes:[
{product_class.product_family=(*)}
Integration test coverage changeThese statistics help you identify how your changes have affected the coverage of the following files. If a file is not in this list, then its coverage was not affected by your changes. To get some help interpreting these metrics, please refer to Jacoco's documentation. mondrian.olap.ParameterImpl.new ParameterSlot() {...}
mondrian.olap.Util
mondrian.olap.Util.Flat3List
mondrian.rolap.BatchLoader.BatchComparator
mondrian.rolap.cache.SegmentCacheIndexImpl
mondrian.rolap.FastBatchingCellReader
mondrian.rolap.RolapUtil
mondrian.server.MonitorImpl.Handler
mondrian.spi.impl.ImpalaDialect
mondrian.spi.impl.MySqlDialect
mondrian.spi.impl.OracleDialect
mondrian.spi.impl.PostgreSqlDialect
mondrian.util.CacheMap
mondrian.util.FilteredIterableList
|
7b504b3
to
d936696
Compare
d936696
to
c8fe286
Compare
c8fe286
to
d314f43
Compare
-try to fix wingman
Build Failed❌ Something went wrong while validating this pull request. Stdout log(last 100 lines)Config enriched: If no api token specified, use environment variable
Config enriched: Set the slackbot url
Config enriched: If github SourceControlType and null StatusUpdateType, use github
Config enriched: If github SourceControlType and StatusUpdaterType and null Organization, use the one from SourceRetriever
Config enriched: If github SourceControlType and StatusUpdaterType and null Repository, use the one from SourceRetriever
Config enriched: If github SourceControlType and StatusUpdaterType and null PullRequest, use the one from SourceRetriever
Config enriched: CheckstyleAnalyzer is enabled by default
Config enriched: Do not run CheckstyleAnalyzer on mondrian
Retrieving source with org.pentaho.build.buddy.bundles.source.github.SlackbotGithubSourceRetriever@5bf62682
Git clone: [git, clone, --depth=10, --branch, master, https://[GITHUB TOKEN]@github.com/pentaho/mondrian.git, mondrian-base-795-f70175c3-9744-4bb1-b459-400bd8056de5]
Git fetch: [git, fetch, --depth=12, origin, pull/795/head:pullRequest]
Git merge: [git, merge, --no-edit, --no-ff, -Xtheirs, -Xignore-space-change, pullRequest] Stderr log(last 100 lines)Cloning into 'mondrian-base-795-f70175c3-9744-4bb1-b459-400bd8056de5'...
From https://github.com/pentaho/mondrian
* [new ref] refs/pull/795/head -> pullRequest
error: Your local changes to the following files would be overwritten by merge:
mondrian/src/it/java/mondrian/rolap/NonEmptyTest.java
Please, commit your changes or stash them before you can merge.
Aborting
java.lang.Exception: java.io.IOException: java.io.IOException: Exit code: 128 for command: [git, merge, --no-edit, --no-ff, -Xtheirs, -Xignore-space-change, pullRequest]
at org.pentaho.build.buddy.bundles.orchestrator.OrchestratorImpl.orchestrate(OrchestratorImpl.java:369)
at Proxyff41e6fb_6e3d_40fa_bffd_63e02e15b250.orchestrate(Unknown Source)
at org.pentaho.build.buddy.bundles.rest.OrchestratorRestService$1.write(OrchestratorRestService.java:62)
at org.apache.cxf.jaxrs.provider.BinaryDataProvider.writeTo(BinaryDataProvider.java:172)
at org.apache.cxf.jaxrs.utils.JAXRSUtils.writeMessageBody(JAXRSUtils.java:1381)
at org.apache.cxf.jaxrs.interceptor.JAXRSOutInterceptor.serializeMessage(JAXRSOutInterceptor.java:244)
at org.apache.cxf.jaxrs.interceptor.JAXRSOutInterceptor.processResponse(JAXRSOutInterceptor.java:120)
at org.apache.cxf.jaxrs.interceptor.JAXRSOutInterceptor.handleMessage(JAXRSOutInterceptor.java:83)
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:308)
at org.apache.cxf.interceptor.OutgoingChainInterceptor.handleMessage(OutgoingChainInterceptor.java:83)
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:308)
at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)
at org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:253)
at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:234)
at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:208)
at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:160)
at org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:180)
at org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:298)
at org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:217)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
at org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:273)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:812)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:587)
at org.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.doHandle(HttpServiceServletHandler.java:70)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
at org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.doHandle(HttpServiceContext.java:271)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
at org.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.handle(JettyServerHandlerCollection.java:80)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
at org.eclipse.jetty.server.Server.handle(Server.java:499)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.io.IOException: java.io.IOException: Exit code: 128 for command: [git, merge, --no-edit, --no-ff, -Xtheirs, -Xignore-space-change, pullRequest]
at org.pentaho.build.buddy.bundles.source.github.GithubSourceRetriever.retrieveSource(GithubSourceRetriever.java:166)
at Proxy7c25eaba_d5f6_472f_9ff3_956b6f945730.retrieveSource(Unknown Source)
at org.pentaho.build.buddy.bundles.orchestrator.OrchestratorImpl.orchestrate(OrchestratorImpl.java:313)
... 41 more
Caused by: java.io.IOException: Exit code: 128 for command: [git, merge, --no-edit, --no-ff, -Xtheirs, -Xignore-space-change, pullRequest]
at org.pentaho.build.buddy.util.shell.ShellUtil.executeAndCheck(ShellUtil.java:59)
at org.pentaho.build.buddy.bundles.source.github.GithubSourceRetriever.retrieveSource(GithubSourceRetriever.java:117)
... 43 more
|
-fixed
please don't merge before wingman's check