You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lens.apache.org by Sushil Mohanty <su...@gmail.com> on 2017/03/31 10:02:21 UTC

Review Request 58102: LENS-1381 : Support Fact to Fact Union

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/58102/
-----------------------------------------------------------

Review request for lens.


Bugs: LENS-1381
    https://issues.apache.org/jira/browse/LENS-1381


Repository: lens


Description
-------

This is a neew feature to support union across multiple facts.


Diffs
-----

  lens-api/src/main/java/org/apache/lens/api/ToXMLString.java e74adc9 
  lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 14fc4aa 
  lens-api/src/main/java/org/apache/lens/api/metastore/SchemaTraverser.java PRE-CREATION 
  lens-api/src/main/resources/cube-0.1.xsd 060eb43 
  lens-cli/src/main/java/org/apache/lens/cli/commands/LensSchemaCommands.java feabf9c 
  lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java b2568ff 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeFactTable.java 896a7a1 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeMetastoreClient.java 087c203 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/DateUtil.java 7717081 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java 1694b80 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/JAXBUtils.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/TimeRange.java bf6cc5c 
  lens-cube/src/main/java/org/apache/lens/cube/parse/AbridgedTimeRangeWriter.java 8681e90 
  lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java 9658100 
  lens-cube/src/main/java/org/apache/lens/cube/parse/BetweenTimeRangeWriter.java c8b8129 
  lens-cube/src/main/java/org/apache/lens/cube/parse/Candidate.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateDim.java 4dcdbcf 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateFact.java b42262d 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java e001ca4 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java bd6e27c 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java e9270ea 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateUtil.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CheckTableNames.java 8586262 
  lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnLifetimeChecker.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnResolver.java 87e094a 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryContext.java 125b432 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryRewriter.java b612173 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CubeSemanticAnalyzer.java fc96055 
  lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultAliasDecider.java 80ceae4 
  lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultQueryAST.java c9993f3 
  lens-cube/src/main/java/org/apache/lens/cube/parse/DenormalizationResolver.java cb26878 
  lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java 0ea0b1c 
  lens-cube/src/main/java/org/apache/lens/cube/parse/FieldValidator.java 48af0c9 
  lens-cube/src/main/java/org/apache/lens/cube/parse/GroupbyResolver.java 216ae52 
  lens-cube/src/main/java/org/apache/lens/cube/parse/JoinCandidate.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/JoinResolver.java 7b865bf 
  lens-cube/src/main/java/org/apache/lens/cube/parse/LeastPartitionResolver.java a53e994 
  lens-cube/src/main/java/org/apache/lens/cube/parse/LightestFactResolver.java 97accbb 
  lens-cube/src/main/java/org/apache/lens/cube/parse/MaxCoveringFactResolver.java 45824fe 
  lens-cube/src/main/java/org/apache/lens/cube/parse/MultiFactHQLContext.java 979c24b 
  lens-cube/src/main/java/org/apache/lens/cube/parse/PruneCauses.java 9b5a52f 
  lens-cube/src/main/java/org/apache/lens/cube/parse/QueriedPhraseContext.java 34a562d 
  lens-cube/src/main/java/org/apache/lens/cube/parse/QueryAST.java 7298604 
  lens-cube/src/main/java/org/apache/lens/cube/parse/SimpleHQLContext.java 62ceb12 
  lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactMultiStorageHQLContext.java 9b48213 
  lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactSingleStorageHQLContext.java dbc84ed 
  lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java cdf6812 
  lens-cube/src/main/java/org/apache/lens/cube/parse/StorageUtil.java f9636d1 
  lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRangeChecker.java f18ae36 
  lens-cube/src/main/java/org/apache/lens/cube/parse/UnionCandidate.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/UnionHQLContext.java e6ee989 
  lens-cube/src/main/java/org/apache/lens/cube/parse/UnionQueryWriter.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/join/AutoJoinContext.java 3d5c5ac 
  lens-cube/src/main/java/org/apache/lens/cube/parse/join/BridgeTableJoinContext.java cf74634 
  lens-cube/src/main/java/org/apache/lens/driver/cube/RewriterPlan.java fd6c30d 
  lens-cube/src/test/java/org/apache/lens/cube/metadata/DateFactory.java 3bdc047 
  lens-cube/src/test/java/org/apache/lens/cube/parse/CubeTestSetup.java 9b29083 
  lens-cube/src/test/java/org/apache/lens/cube/parse/FieldsCannotBeQueriedTogetherTest.java 1a5bd0d 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestAggregateResolver.java dd0b6dc 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java dbb8fa3 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java 450605b 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java 2f00244 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java 98b021b 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java 5505ed4 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestExpressionResolver.java 5d4e87f 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestJoinResolver.java 677d641 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestQueryMetrics.java 27a18f4 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestRewriterPlan.java 7f26b24 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java 280a8c4 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeWriterWithQuery.java 7010849 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java PRE-CREATION 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionQueries.java d5bc81c 
  lens-cube/src/test/resources/schema/cubes/base/basecube.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/cubes/base/testcube.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/cubes/derived/der1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/cubes/derived/der2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/cubes/derived/der3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/cubes/derived/derivedcube.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/cubes/derived/union_join_ctx_der1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/citydim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/countrydim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/cycledim1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/cycledim2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/daydim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/hourdim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/sports.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/statedim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/testdim2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/testdim3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/testdim4.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/unreachabledim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/user_interests.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/userdim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/zipdim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/citytable.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/citytable2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/citytable3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/citytable4.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/countrytable.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/countrytable_partitioned.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/cycledim1tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/cycledim2tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/daydimtbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/hourdimtbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/sports_tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/statetable.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/statetable_partitioned.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/testdim2tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/testdim2tbl2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/testdim2tbl3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/testdim3tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/testdim4tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/unreachabledimtable.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/user_interests_tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/usertable.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/ziptable.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/cheapfact.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/summary1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/summary2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/summary3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/summary4.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact1_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact1_raw_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact2_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact2_raw.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact2_raw_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact3_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact3_raw_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact4_raw_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact5_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact5_raw_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact6_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact_continuous.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact_deprecated.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfactmonthly.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/union_join_ctx_fact1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/union_join_ctx_fact2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/union_join_ctx_fact3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/union_join_ctx_fact5.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/union_join_ctx_fact6.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/segmentations/seg1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c0.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c4.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c5.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c99.xml PRE-CREATION 
  lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/ColumnarSQLRewriter.java 75153f6 
  lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/DruidSQLRewriter.java 2351fb3 
  lens-server/src/main/java/org/apache/lens/server/metastore/CubeMetastoreServiceImpl.java 24660e1 
  lens-server/src/main/java/org/apache/lens/server/metastore/JAXBUtils.java 7d54c7b 
  lens-server/src/test/java/org/apache/lens/server/common/RestAPITestUtil.java 02e2f8b 
  lens-server/src/test/java/org/apache/lens/server/common/TestDataUtils.java 0400519 
  lens-server/src/test/java/org/apache/lens/server/query/QueryAPIErrorResponseTest.java 567c929 


Diff: https://reviews.apache.org/r/58102/diff/1/


Testing
-------


Thanks,

Sushil Mohanty


Re: Review Request 58102: LENS-1381 : Support Fact to Fact Union

Posted by Amareshwari Sriramadasu <am...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/58102/#review170954
-----------------------------------------------------------




lens-cube/src/main/java/org/apache/lens/cube/parse/CubeSemanticAnalyzer.java
Line 42 (original), 39 (patched)
<https://reviews.apache.org/r/58102/#comment243796>

    Can we avoid this change? Please see https://issues.apache.org/jira/browse/LENS-408 for details.


- Amareshwari Sriramadasu


On March 31, 2017, 10:02 a.m., Sushil Mohanty wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/58102/
> -----------------------------------------------------------
> 
> (Updated March 31, 2017, 10:02 a.m.)
> 
> 
> Review request for lens.
> 
> 
> Bugs: LENS-1381
>     https://issues.apache.org/jira/browse/LENS-1381
> 
> 
> Repository: lens
> 
> 
> Description
> -------
> 
> This is a neew feature to support union across multiple facts.
> 
> 
> Diffs
> -----
> 
>   lens-api/src/main/java/org/apache/lens/api/ToXMLString.java e74adc9 
>   lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 14fc4aa 
>   lens-api/src/main/java/org/apache/lens/api/metastore/SchemaTraverser.java PRE-CREATION 
>   lens-api/src/main/resources/cube-0.1.xsd 060eb43 
>   lens-cli/src/main/java/org/apache/lens/cli/commands/LensSchemaCommands.java feabf9c 
>   lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java b2568ff 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeFactTable.java 896a7a1 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeMetastoreClient.java 087c203 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/DateUtil.java 7717081 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java 1694b80 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/JAXBUtils.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/TimeRange.java bf6cc5c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AbridgedTimeRangeWriter.java 8681e90 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java 9658100 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/BetweenTimeRangeWriter.java c8b8129 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/Candidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateDim.java 4dcdbcf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateFact.java b42262d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java e001ca4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java bd6e27c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java e9270ea 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateUtil.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CheckTableNames.java 8586262 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnLifetimeChecker.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnResolver.java 87e094a 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryContext.java 125b432 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryRewriter.java b612173 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeSemanticAnalyzer.java fc96055 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultAliasDecider.java 80ceae4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultQueryAST.java c9993f3 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DenormalizationResolver.java cb26878 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java 0ea0b1c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/FieldValidator.java 48af0c9 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/GroupbyResolver.java 216ae52 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinResolver.java 7b865bf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LeastPartitionResolver.java a53e994 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LightestFactResolver.java 97accbb 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MaxCoveringFactResolver.java 45824fe 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MultiFactHQLContext.java 979c24b 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/PruneCauses.java 9b5a52f 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueriedPhraseContext.java 34a562d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueryAST.java 7298604 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SimpleHQLContext.java 62ceb12 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactMultiStorageHQLContext.java 9b48213 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactSingleStorageHQLContext.java dbc84ed 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java cdf6812 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageUtil.java f9636d1 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRangeChecker.java f18ae36 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionHQLContext.java e6ee989 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionQueryWriter.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/AutoJoinContext.java 3d5c5ac 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/BridgeTableJoinContext.java cf74634 
>   lens-cube/src/main/java/org/apache/lens/driver/cube/RewriterPlan.java fd6c30d 
>   lens-cube/src/test/java/org/apache/lens/cube/metadata/DateFactory.java 3bdc047 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/CubeTestSetup.java 9b29083 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/FieldsCannotBeQueriedTogetherTest.java 1a5bd0d 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestAggregateResolver.java dd0b6dc 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java dbb8fa3 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java 450605b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java 2f00244 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java 98b021b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java 5505ed4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestExpressionResolver.java 5d4e87f 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestJoinResolver.java 677d641 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestQueryMetrics.java 27a18f4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestRewriterPlan.java 7f26b24 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java 280a8c4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeWriterWithQuery.java 7010849 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java PRE-CREATION 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionQueries.java d5bc81c 
>   lens-cube/src/test/resources/schema/cubes/base/basecube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/base/testcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/derivedcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/union_join_ctx_der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/citydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/countrydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/daydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/hourdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/sports.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/statedim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/unreachabledim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/user_interests.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/userdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/zipdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim1tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/daydimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/hourdimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/sports_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim3tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim4tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/unreachabledimtable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/user_interests_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/usertable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/ziptable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/cheapfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact4_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact6_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_continuous.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_deprecated.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfactmonthly.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact6.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/segmentations/seg1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c0.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c99.xml PRE-CREATION 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/ColumnarSQLRewriter.java 75153f6 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/DruidSQLRewriter.java 2351fb3 
>   lens-server/src/main/java/org/apache/lens/server/metastore/CubeMetastoreServiceImpl.java 24660e1 
>   lens-server/src/main/java/org/apache/lens/server/metastore/JAXBUtils.java 7d54c7b 
>   lens-server/src/test/java/org/apache/lens/server/common/RestAPITestUtil.java 02e2f8b 
>   lens-server/src/test/java/org/apache/lens/server/common/TestDataUtils.java 0400519 
>   lens-server/src/test/java/org/apache/lens/server/query/QueryAPIErrorResponseTest.java 567c929 
> 
> 
> Diff: https://reviews.apache.org/r/58102/diff/1/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Sushil Mohanty
> 
>


Re: Review Request 58102: LENS-1381 : Support Fact to Fact Union

Posted by Sushil Mohanty <su...@gmail.com>.

> On March 31, 2017, 11:39 a.m., Amareshwari Sriramadasu wrote:
> > lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionQueries.java
> > Line 66 (original), 69 (patched)
> > <https://reviews.apache.org/r/58102/diff/1/?file=1681941#file1681941line69>
> >
> >     Need to enable all tests here.

Taken care as part of LENS-1408


- Sushil


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/58102/#review170705
-----------------------------------------------------------


On March 31, 2017, 10:02 a.m., Sushil Mohanty wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/58102/
> -----------------------------------------------------------
> 
> (Updated March 31, 2017, 10:02 a.m.)
> 
> 
> Review request for lens.
> 
> 
> Bugs: LENS-1381
>     https://issues.apache.org/jira/browse/LENS-1381
> 
> 
> Repository: lens
> 
> 
> Description
> -------
> 
> This is a neew feature to support union across multiple facts.
> 
> 
> Diffs
> -----
> 
>   lens-api/src/main/java/org/apache/lens/api/ToXMLString.java e74adc9 
>   lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 14fc4aa 
>   lens-api/src/main/java/org/apache/lens/api/metastore/SchemaTraverser.java PRE-CREATION 
>   lens-api/src/main/resources/cube-0.1.xsd 060eb43 
>   lens-cli/src/main/java/org/apache/lens/cli/commands/LensSchemaCommands.java feabf9c 
>   lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java b2568ff 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeFactTable.java 896a7a1 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeMetastoreClient.java 087c203 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/DateUtil.java 7717081 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java 1694b80 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/JAXBUtils.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/TimeRange.java bf6cc5c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AbridgedTimeRangeWriter.java 8681e90 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java 9658100 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/BetweenTimeRangeWriter.java c8b8129 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/Candidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateDim.java 4dcdbcf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateFact.java b42262d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java e001ca4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java bd6e27c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java e9270ea 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateUtil.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CheckTableNames.java 8586262 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnLifetimeChecker.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnResolver.java 87e094a 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryContext.java 125b432 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryRewriter.java b612173 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeSemanticAnalyzer.java fc96055 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultAliasDecider.java 80ceae4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultQueryAST.java c9993f3 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DenormalizationResolver.java cb26878 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java 0ea0b1c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/FieldValidator.java 48af0c9 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/GroupbyResolver.java 216ae52 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinResolver.java 7b865bf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LeastPartitionResolver.java a53e994 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LightestFactResolver.java 97accbb 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MaxCoveringFactResolver.java 45824fe 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MultiFactHQLContext.java 979c24b 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/PruneCauses.java 9b5a52f 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueriedPhraseContext.java 34a562d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueryAST.java 7298604 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SimpleHQLContext.java 62ceb12 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactMultiStorageHQLContext.java 9b48213 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactSingleStorageHQLContext.java dbc84ed 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java cdf6812 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageUtil.java f9636d1 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRangeChecker.java f18ae36 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionHQLContext.java e6ee989 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionQueryWriter.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/AutoJoinContext.java 3d5c5ac 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/BridgeTableJoinContext.java cf74634 
>   lens-cube/src/main/java/org/apache/lens/driver/cube/RewriterPlan.java fd6c30d 
>   lens-cube/src/test/java/org/apache/lens/cube/metadata/DateFactory.java 3bdc047 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/CubeTestSetup.java 9b29083 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/FieldsCannotBeQueriedTogetherTest.java 1a5bd0d 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestAggregateResolver.java dd0b6dc 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java dbb8fa3 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java 450605b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java 2f00244 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java 98b021b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java 5505ed4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestExpressionResolver.java 5d4e87f 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestJoinResolver.java 677d641 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestQueryMetrics.java 27a18f4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestRewriterPlan.java 7f26b24 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java 280a8c4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeWriterWithQuery.java 7010849 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java PRE-CREATION 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionQueries.java d5bc81c 
>   lens-cube/src/test/resources/schema/cubes/base/basecube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/base/testcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/derivedcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/union_join_ctx_der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/citydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/countrydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/daydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/hourdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/sports.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/statedim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/unreachabledim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/user_interests.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/userdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/zipdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim1tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/daydimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/hourdimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/sports_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim3tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim4tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/unreachabledimtable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/user_interests_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/usertable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/ziptable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/cheapfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact4_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact6_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_continuous.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_deprecated.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfactmonthly.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact6.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/segmentations/seg1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c0.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c99.xml PRE-CREATION 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/ColumnarSQLRewriter.java 75153f6 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/DruidSQLRewriter.java 2351fb3 
>   lens-server/src/main/java/org/apache/lens/server/metastore/CubeMetastoreServiceImpl.java 24660e1 
>   lens-server/src/main/java/org/apache/lens/server/metastore/JAXBUtils.java 7d54c7b 
>   lens-server/src/test/java/org/apache/lens/server/common/RestAPITestUtil.java 02e2f8b 
>   lens-server/src/test/java/org/apache/lens/server/common/TestDataUtils.java 0400519 
>   lens-server/src/test/java/org/apache/lens/server/query/QueryAPIErrorResponseTest.java 567c929 
> 
> 
> Diff: https://reviews.apache.org/r/58102/diff/1/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Sushil Mohanty
> 
>


Re: Review Request 58102: LENS-1381 : Support Fact to Fact Union

Posted by Sushil Mohanty <su...@gmail.com>.

> On March 31, 2017, 11:39 a.m., Amareshwari Sriramadasu wrote:
> > lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java
> > Line 104 (original), 100 (patched)
> > <https://reviews.apache.org/r/58102/diff/1/?file=1681929#file1681929line104>
> >
> >     We should put back the test which does column set comparison.

Enabled the commented checks.


- Sushil


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/58102/#review170705
-----------------------------------------------------------


On April 5, 2017, 5:38 a.m., Sushil Mohanty wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/58102/
> -----------------------------------------------------------
> 
> (Updated April 5, 2017, 5:38 a.m.)
> 
> 
> Review request for lens.
> 
> 
> Bugs: LENS-1381
>     https://issues.apache.org/jira/browse/LENS-1381
> 
> 
> Repository: lens
> 
> 
> Description
> -------
> 
> This is a neew feature to support union across multiple facts.
> 
> 
> Diffs
> -----
> 
>   lens-api/src/main/java/org/apache/lens/api/ToXMLString.java e74adc9 
>   lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 14fc4aa 
>   lens-api/src/main/java/org/apache/lens/api/metastore/SchemaTraverser.java PRE-CREATION 
>   lens-api/src/main/resources/cube-0.1.xsd 060eb43 
>   lens-cli/src/main/java/org/apache/lens/cli/commands/LensSchemaCommands.java feabf9c 
>   lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java b2568ff 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeFactTable.java 896a7a1 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeMetastoreClient.java 087c203 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/DateUtil.java 7717081 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java 1694b80 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/JAXBUtils.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/TimeRange.java bf6cc5c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AbridgedTimeRangeWriter.java 8681e90 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java 9658100 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/BetweenTimeRangeWriter.java c8b8129 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/Candidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateDim.java 4dcdbcf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateFact.java b42262d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java e001ca4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java bd6e27c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java e9270ea 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateUtil.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CheckTableNames.java 8586262 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnLifetimeChecker.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnResolver.java 87e094a 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryContext.java 125b432 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryRewriter.java b612173 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeSemanticAnalyzer.java fc96055 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultAliasDecider.java 80ceae4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultQueryAST.java c9993f3 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DenormalizationResolver.java cb26878 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java 0ea0b1c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/FieldValidator.java 48af0c9 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/GroupbyResolver.java 216ae52 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinResolver.java 7b865bf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LeastPartitionResolver.java a53e994 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LightestFactResolver.java 97accbb 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MaxCoveringFactResolver.java 45824fe 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MultiFactHQLContext.java 979c24b 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/PruneCauses.java 9b5a52f 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueriedPhraseContext.java 34a562d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueryAST.java 7298604 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SimpleHQLContext.java 62ceb12 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactMultiStorageHQLContext.java 9b48213 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactSingleStorageHQLContext.java dbc84ed 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java cdf6812 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageUtil.java f9636d1 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRangeChecker.java f18ae36 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionHQLContext.java e6ee989 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionQueryWriter.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/AutoJoinContext.java 3d5c5ac 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/BridgeTableJoinContext.java cf74634 
>   lens-cube/src/main/java/org/apache/lens/driver/cube/RewriterPlan.java fd6c30d 
>   lens-cube/src/test/java/org/apache/lens/cube/metadata/DateFactory.java 3bdc047 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/CubeTestSetup.java 9b29083 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/FieldsCannotBeQueriedTogetherTest.java 1a5bd0d 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestAggregateResolver.java dd0b6dc 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java dbb8fa3 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java 450605b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java 2f00244 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java 98b021b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java 5505ed4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestExpressionResolver.java 5d4e87f 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestJoinResolver.java 677d641 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestQueryMetrics.java 27a18f4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestRewriterPlan.java 7f26b24 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java 280a8c4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeWriterWithQuery.java 7010849 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java PRE-CREATION 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionQueries.java d5bc81c 
>   lens-cube/src/test/resources/schema/cubes/base/basecube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/base/testcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/derivedcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/union_join_ctx_der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/citydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/countrydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/daydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/hourdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/sports.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/statedim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/unreachabledim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/user_interests.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/userdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/zipdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim1tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/daydimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/hourdimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/sports_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim3tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim4tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/unreachabledimtable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/user_interests_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/usertable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/ziptable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/cheapfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact4_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact6_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_continuous.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_deprecated.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfactmonthly.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact6.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/segmentations/seg1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c0.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c99.xml PRE-CREATION 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/ColumnarSQLRewriter.java 75153f6 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/DruidSQLRewriter.java 2351fb3 
>   lens-server/src/main/java/org/apache/lens/server/metastore/CubeMetastoreServiceImpl.java 24660e1 
>   lens-server/src/main/java/org/apache/lens/server/metastore/JAXBUtils.java 7d54c7b 
>   lens-server/src/main/java/org/apache/lens/server/metastore/MetastoreResource.java 9d823da 
>   lens-server/src/test/java/org/apache/lens/server/common/RestAPITestUtil.java 02e2f8b 
>   lens-server/src/test/java/org/apache/lens/server/common/TestDataUtils.java 0400519 
>   lens-server/src/test/java/org/apache/lens/server/query/QueryAPIErrorResponseTest.java 567c929 
> 
> 
> Diff: https://reviews.apache.org/r/58102/diff/2/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Sushil Mohanty
> 
>


Re: Review Request 58102: LENS-1381 : Support Fact to Fact Union

Posted by Amareshwari Sriramadasu <am...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/58102/#review170705
-----------------------------------------------------------




lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java
Line 104 (original), 100 (patched)
<https://reviews.apache.org/r/58102/#comment243591>

    We should put back the test which does column set comparison.



lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java
Line 77 (original), 80 (patched)
<https://reviews.apache.org/r/58102/#comment243592>

    Can we avoid hardcoding date values here?



lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionQueries.java
Line 66 (original), 69 (patched)
<https://reviews.apache.org/r/58102/#comment243593>

    Need to enable all tests here.


- Amareshwari Sriramadasu


On March 31, 2017, 10:02 a.m., Sushil Mohanty wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/58102/
> -----------------------------------------------------------
> 
> (Updated March 31, 2017, 10:02 a.m.)
> 
> 
> Review request for lens.
> 
> 
> Bugs: LENS-1381
>     https://issues.apache.org/jira/browse/LENS-1381
> 
> 
> Repository: lens
> 
> 
> Description
> -------
> 
> This is a neew feature to support union across multiple facts.
> 
> 
> Diffs
> -----
> 
>   lens-api/src/main/java/org/apache/lens/api/ToXMLString.java e74adc9 
>   lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 14fc4aa 
>   lens-api/src/main/java/org/apache/lens/api/metastore/SchemaTraverser.java PRE-CREATION 
>   lens-api/src/main/resources/cube-0.1.xsd 060eb43 
>   lens-cli/src/main/java/org/apache/lens/cli/commands/LensSchemaCommands.java feabf9c 
>   lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java b2568ff 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeFactTable.java 896a7a1 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeMetastoreClient.java 087c203 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/DateUtil.java 7717081 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java 1694b80 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/JAXBUtils.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/TimeRange.java bf6cc5c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AbridgedTimeRangeWriter.java 8681e90 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java 9658100 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/BetweenTimeRangeWriter.java c8b8129 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/Candidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateDim.java 4dcdbcf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateFact.java b42262d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java e001ca4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java bd6e27c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java e9270ea 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateUtil.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CheckTableNames.java 8586262 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnLifetimeChecker.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnResolver.java 87e094a 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryContext.java 125b432 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryRewriter.java b612173 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeSemanticAnalyzer.java fc96055 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultAliasDecider.java 80ceae4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultQueryAST.java c9993f3 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DenormalizationResolver.java cb26878 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java 0ea0b1c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/FieldValidator.java 48af0c9 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/GroupbyResolver.java 216ae52 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinResolver.java 7b865bf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LeastPartitionResolver.java a53e994 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LightestFactResolver.java 97accbb 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MaxCoveringFactResolver.java 45824fe 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MultiFactHQLContext.java 979c24b 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/PruneCauses.java 9b5a52f 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueriedPhraseContext.java 34a562d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueryAST.java 7298604 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SimpleHQLContext.java 62ceb12 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactMultiStorageHQLContext.java 9b48213 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactSingleStorageHQLContext.java dbc84ed 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java cdf6812 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageUtil.java f9636d1 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRangeChecker.java f18ae36 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionHQLContext.java e6ee989 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionQueryWriter.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/AutoJoinContext.java 3d5c5ac 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/BridgeTableJoinContext.java cf74634 
>   lens-cube/src/main/java/org/apache/lens/driver/cube/RewriterPlan.java fd6c30d 
>   lens-cube/src/test/java/org/apache/lens/cube/metadata/DateFactory.java 3bdc047 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/CubeTestSetup.java 9b29083 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/FieldsCannotBeQueriedTogetherTest.java 1a5bd0d 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestAggregateResolver.java dd0b6dc 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java dbb8fa3 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java 450605b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java 2f00244 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java 98b021b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java 5505ed4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestExpressionResolver.java 5d4e87f 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestJoinResolver.java 677d641 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestQueryMetrics.java 27a18f4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestRewriterPlan.java 7f26b24 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java 280a8c4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeWriterWithQuery.java 7010849 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java PRE-CREATION 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionQueries.java d5bc81c 
>   lens-cube/src/test/resources/schema/cubes/base/basecube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/base/testcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/derivedcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/union_join_ctx_der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/citydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/countrydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/daydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/hourdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/sports.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/statedim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/unreachabledim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/user_interests.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/userdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/zipdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim1tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/daydimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/hourdimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/sports_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim3tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim4tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/unreachabledimtable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/user_interests_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/usertable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/ziptable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/cheapfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact4_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact6_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_continuous.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_deprecated.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfactmonthly.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact6.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/segmentations/seg1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c0.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c99.xml PRE-CREATION 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/ColumnarSQLRewriter.java 75153f6 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/DruidSQLRewriter.java 2351fb3 
>   lens-server/src/main/java/org/apache/lens/server/metastore/CubeMetastoreServiceImpl.java 24660e1 
>   lens-server/src/main/java/org/apache/lens/server/metastore/JAXBUtils.java 7d54c7b 
>   lens-server/src/test/java/org/apache/lens/server/common/RestAPITestUtil.java 02e2f8b 
>   lens-server/src/test/java/org/apache/lens/server/common/TestDataUtils.java 0400519 
>   lens-server/src/test/java/org/apache/lens/server/query/QueryAPIErrorResponseTest.java 567c929 
> 
> 
> Diff: https://reviews.apache.org/r/58102/diff/1/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Sushil Mohanty
> 
>


Re: Review Request 58102: LENS-1381 : Support Fact to Fact Union

Posted by Amareshwari Sriramadasu <am...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/58102/#review170707
-----------------------------------------------------------



I strongly feel StorageCandidate being top level in all resolvers like JoinResolver should be removed, Even if planned as follow up jira.
CandidateTablePruneCause error order needs to cleaned up

- Amareshwari Sriramadasu


On March 31, 2017, 10:02 a.m., Sushil Mohanty wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/58102/
> -----------------------------------------------------------
> 
> (Updated March 31, 2017, 10:02 a.m.)
> 
> 
> Review request for lens.
> 
> 
> Bugs: LENS-1381
>     https://issues.apache.org/jira/browse/LENS-1381
> 
> 
> Repository: lens
> 
> 
> Description
> -------
> 
> This is a neew feature to support union across multiple facts.
> 
> 
> Diffs
> -----
> 
>   lens-api/src/main/java/org/apache/lens/api/ToXMLString.java e74adc9 
>   lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 14fc4aa 
>   lens-api/src/main/java/org/apache/lens/api/metastore/SchemaTraverser.java PRE-CREATION 
>   lens-api/src/main/resources/cube-0.1.xsd 060eb43 
>   lens-cli/src/main/java/org/apache/lens/cli/commands/LensSchemaCommands.java feabf9c 
>   lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java b2568ff 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeFactTable.java 896a7a1 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeMetastoreClient.java 087c203 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/DateUtil.java 7717081 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java 1694b80 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/JAXBUtils.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/TimeRange.java bf6cc5c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AbridgedTimeRangeWriter.java 8681e90 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java 9658100 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/BetweenTimeRangeWriter.java c8b8129 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/Candidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateDim.java 4dcdbcf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateFact.java b42262d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java e001ca4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java bd6e27c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java e9270ea 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateUtil.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CheckTableNames.java 8586262 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnLifetimeChecker.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnResolver.java 87e094a 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryContext.java 125b432 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryRewriter.java b612173 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeSemanticAnalyzer.java fc96055 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultAliasDecider.java 80ceae4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultQueryAST.java c9993f3 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DenormalizationResolver.java cb26878 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java 0ea0b1c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/FieldValidator.java 48af0c9 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/GroupbyResolver.java 216ae52 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinResolver.java 7b865bf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LeastPartitionResolver.java a53e994 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LightestFactResolver.java 97accbb 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MaxCoveringFactResolver.java 45824fe 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MultiFactHQLContext.java 979c24b 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/PruneCauses.java 9b5a52f 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueriedPhraseContext.java 34a562d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueryAST.java 7298604 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SimpleHQLContext.java 62ceb12 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactMultiStorageHQLContext.java 9b48213 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactSingleStorageHQLContext.java dbc84ed 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java cdf6812 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageUtil.java f9636d1 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRangeChecker.java f18ae36 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionHQLContext.java e6ee989 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionQueryWriter.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/AutoJoinContext.java 3d5c5ac 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/BridgeTableJoinContext.java cf74634 
>   lens-cube/src/main/java/org/apache/lens/driver/cube/RewriterPlan.java fd6c30d 
>   lens-cube/src/test/java/org/apache/lens/cube/metadata/DateFactory.java 3bdc047 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/CubeTestSetup.java 9b29083 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/FieldsCannotBeQueriedTogetherTest.java 1a5bd0d 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestAggregateResolver.java dd0b6dc 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java dbb8fa3 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java 450605b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java 2f00244 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java 98b021b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java 5505ed4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestExpressionResolver.java 5d4e87f 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestJoinResolver.java 677d641 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestQueryMetrics.java 27a18f4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestRewriterPlan.java 7f26b24 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java 280a8c4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeWriterWithQuery.java 7010849 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java PRE-CREATION 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionQueries.java d5bc81c 
>   lens-cube/src/test/resources/schema/cubes/base/basecube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/base/testcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/derivedcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/union_join_ctx_der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/citydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/countrydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/daydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/hourdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/sports.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/statedim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/unreachabledim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/user_interests.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/userdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/zipdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim1tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/daydimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/hourdimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/sports_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim3tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim4tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/unreachabledimtable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/user_interests_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/usertable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/ziptable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/cheapfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact4_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact6_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_continuous.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_deprecated.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfactmonthly.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact6.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/segmentations/seg1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c0.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c99.xml PRE-CREATION 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/ColumnarSQLRewriter.java 75153f6 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/DruidSQLRewriter.java 2351fb3 
>   lens-server/src/main/java/org/apache/lens/server/metastore/CubeMetastoreServiceImpl.java 24660e1 
>   lens-server/src/main/java/org/apache/lens/server/metastore/JAXBUtils.java 7d54c7b 
>   lens-server/src/test/java/org/apache/lens/server/common/RestAPITestUtil.java 02e2f8b 
>   lens-server/src/test/java/org/apache/lens/server/common/TestDataUtils.java 0400519 
>   lens-server/src/test/java/org/apache/lens/server/query/QueryAPIErrorResponseTest.java 567c929 
> 
> 
> Diff: https://reviews.apache.org/r/58102/diff/1/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Sushil Mohanty
> 
>


Re: Review Request 58102: LENS-1381 : Support Fact to Fact Union

Posted by Amareshwari Sriramadasu <am...@apache.org>.

> On March 31, 2017, 11:09 a.m., Amareshwari Sriramadasu wrote:
> > lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java
> > Lines 36 (patched)
> > <https://reviews.apache.org/r/58102/diff/1/?file=1681873#file1681873line36>
> >
> >     Seems CubeQueryContext as instance variable is not required. Can we remove?
> 
> Sushil Mohanty wrote:
>     In few test cases its being used to get getLensExceptionInRewrite and assert eg: TestTimeRangeResolver#testFactValidity

rewriteCtx() in TestQueryRewrite would give handle to CubeQueryContext for the caller. We should be able to use that, instead of adding to the exception.


> On March 31, 2017, 11:09 a.m., Amareshwari Sriramadasu wrote:
> > lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java
> > Line 43 (original), 43 (patched)
> > <https://reviews.apache.org/r/58102/diff/1/?file=1681887#file1681887line43>
> >
> >     Can we still call it storageTable? Calling storageName will be confusing.
> 
> Sushil Mohanty wrote:
>     It's the name of the storage, hence renamed it.

I see the following code in CandidateDim, which is assuming this to be storageTable :

  public String getStorageString(String alias) {
    if (!dbResolved) {
      String database = SessionState.get().getCurrentDatabase();
      // Add database name prefix for non default database
      if (StringUtils.isNotBlank(database) && !"default".equalsIgnoreCase(database)) {
        storageName = database + "." + storageName;
      }
      dbResolved = true;
    }
    return storageName + " " + alias;
  }


- Amareshwari


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/58102/#review170696
-----------------------------------------------------------


On March 31, 2017, 10:02 a.m., Sushil Mohanty wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/58102/
> -----------------------------------------------------------
> 
> (Updated March 31, 2017, 10:02 a.m.)
> 
> 
> Review request for lens.
> 
> 
> Bugs: LENS-1381
>     https://issues.apache.org/jira/browse/LENS-1381
> 
> 
> Repository: lens
> 
> 
> Description
> -------
> 
> This is a neew feature to support union across multiple facts.
> 
> 
> Diffs
> -----
> 
>   lens-api/src/main/java/org/apache/lens/api/ToXMLString.java e74adc9 
>   lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 14fc4aa 
>   lens-api/src/main/java/org/apache/lens/api/metastore/SchemaTraverser.java PRE-CREATION 
>   lens-api/src/main/resources/cube-0.1.xsd 060eb43 
>   lens-cli/src/main/java/org/apache/lens/cli/commands/LensSchemaCommands.java feabf9c 
>   lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java b2568ff 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeFactTable.java 896a7a1 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeMetastoreClient.java 087c203 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/DateUtil.java 7717081 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java 1694b80 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/JAXBUtils.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/TimeRange.java bf6cc5c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AbridgedTimeRangeWriter.java 8681e90 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java 9658100 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/BetweenTimeRangeWriter.java c8b8129 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/Candidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateDim.java 4dcdbcf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateFact.java b42262d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java e001ca4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java bd6e27c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java e9270ea 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateUtil.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CheckTableNames.java 8586262 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnLifetimeChecker.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnResolver.java 87e094a 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryContext.java 125b432 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryRewriter.java b612173 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeSemanticAnalyzer.java fc96055 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultAliasDecider.java 80ceae4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultQueryAST.java c9993f3 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DenormalizationResolver.java cb26878 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java 0ea0b1c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/FieldValidator.java 48af0c9 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/GroupbyResolver.java 216ae52 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinResolver.java 7b865bf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LeastPartitionResolver.java a53e994 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LightestFactResolver.java 97accbb 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MaxCoveringFactResolver.java 45824fe 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MultiFactHQLContext.java 979c24b 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/PruneCauses.java 9b5a52f 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueriedPhraseContext.java 34a562d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueryAST.java 7298604 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SimpleHQLContext.java 62ceb12 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactMultiStorageHQLContext.java 9b48213 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactSingleStorageHQLContext.java dbc84ed 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java cdf6812 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageUtil.java f9636d1 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRangeChecker.java f18ae36 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionHQLContext.java e6ee989 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionQueryWriter.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/AutoJoinContext.java 3d5c5ac 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/BridgeTableJoinContext.java cf74634 
>   lens-cube/src/main/java/org/apache/lens/driver/cube/RewriterPlan.java fd6c30d 
>   lens-cube/src/test/java/org/apache/lens/cube/metadata/DateFactory.java 3bdc047 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/CubeTestSetup.java 9b29083 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/FieldsCannotBeQueriedTogetherTest.java 1a5bd0d 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestAggregateResolver.java dd0b6dc 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java dbb8fa3 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java 450605b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java 2f00244 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java 98b021b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java 5505ed4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestExpressionResolver.java 5d4e87f 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestJoinResolver.java 677d641 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestQueryMetrics.java 27a18f4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestRewriterPlan.java 7f26b24 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java 280a8c4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeWriterWithQuery.java 7010849 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java PRE-CREATION 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionQueries.java d5bc81c 
>   lens-cube/src/test/resources/schema/cubes/base/basecube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/base/testcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/derivedcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/union_join_ctx_der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/citydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/countrydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/daydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/hourdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/sports.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/statedim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/unreachabledim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/user_interests.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/userdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/zipdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim1tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/daydimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/hourdimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/sports_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim3tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim4tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/unreachabledimtable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/user_interests_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/usertable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/ziptable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/cheapfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact4_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact6_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_continuous.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_deprecated.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfactmonthly.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact6.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/segmentations/seg1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c0.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c99.xml PRE-CREATION 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/ColumnarSQLRewriter.java 75153f6 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/DruidSQLRewriter.java 2351fb3 
>   lens-server/src/main/java/org/apache/lens/server/metastore/CubeMetastoreServiceImpl.java 24660e1 
>   lens-server/src/main/java/org/apache/lens/server/metastore/JAXBUtils.java 7d54c7b 
>   lens-server/src/test/java/org/apache/lens/server/common/RestAPITestUtil.java 02e2f8b 
>   lens-server/src/test/java/org/apache/lens/server/common/TestDataUtils.java 0400519 
>   lens-server/src/test/java/org/apache/lens/server/query/QueryAPIErrorResponseTest.java 567c929 
> 
> 
> Diff: https://reviews.apache.org/r/58102/diff/1/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Sushil Mohanty
> 
>


Re: Review Request 58102: LENS-1381 : Support Fact to Fact Union

Posted by Sushil Mohanty <su...@gmail.com>.

> On March 31, 2017, 11:09 a.m., Amareshwari Sriramadasu wrote:
> > lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java
> > Lines 36 (patched)
> > <https://reviews.apache.org/r/58102/diff/1/?file=1681873#file1681873line36>
> >
> >     Seems CubeQueryContext as instance variable is not required. Can we remove?

In few test cases its being used to get getLensExceptionInRewrite and assert eg: TestTimeRangeResolver#testFactValidity


> On March 31, 2017, 11:09 a.m., Amareshwari Sriramadasu wrote:
> > lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java
> > Lines 56-69 (patched)
> > <https://reviews.apache.org/r/58102/diff/1/?file=1681884#file1681884line56>
> >
> >     Usually NoCandidateFactAvailableException is thrown after all the facts are pruned. And we were logging the details of why each fact was pruned in toHQL().
> >     
> >     This code was throwing NO_FACT_HAS_COLUMN error :
> >     https://github.com/apache/lens/blob/master/lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java#L333
> >     
> >     Can we summarize why the change was done?

Line 56 : Timerange is not answerable by neither a single candidate nor a range covering candidates(UnionCandidate) 
Line 69 : Queried meaaures are not answerable by neither a single candidate nor measure covering candidates(JoinCandidate) 
In both the cases it terminates the flow. The columns are passed for additional logging information.


> On March 31, 2017, 11:09 a.m., Amareshwari Sriramadasu wrote:
> > lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java
> > Line 43 (original), 43 (patched)
> > <https://reviews.apache.org/r/58102/diff/1/?file=1681887#file1681887line43>
> >
> >     Can we still call it storageTable? Calling storageName will be confusing.

It's the name of the storage, hence renamed it.


- Sushil


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/58102/#review170696
-----------------------------------------------------------


On March 31, 2017, 10:02 a.m., Sushil Mohanty wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/58102/
> -----------------------------------------------------------
> 
> (Updated March 31, 2017, 10:02 a.m.)
> 
> 
> Review request for lens.
> 
> 
> Bugs: LENS-1381
>     https://issues.apache.org/jira/browse/LENS-1381
> 
> 
> Repository: lens
> 
> 
> Description
> -------
> 
> This is a neew feature to support union across multiple facts.
> 
> 
> Diffs
> -----
> 
>   lens-api/src/main/java/org/apache/lens/api/ToXMLString.java e74adc9 
>   lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 14fc4aa 
>   lens-api/src/main/java/org/apache/lens/api/metastore/SchemaTraverser.java PRE-CREATION 
>   lens-api/src/main/resources/cube-0.1.xsd 060eb43 
>   lens-cli/src/main/java/org/apache/lens/cli/commands/LensSchemaCommands.java feabf9c 
>   lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java b2568ff 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeFactTable.java 896a7a1 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeMetastoreClient.java 087c203 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/DateUtil.java 7717081 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java 1694b80 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/JAXBUtils.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/TimeRange.java bf6cc5c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AbridgedTimeRangeWriter.java 8681e90 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java 9658100 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/BetweenTimeRangeWriter.java c8b8129 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/Candidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateDim.java 4dcdbcf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateFact.java b42262d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java e001ca4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java bd6e27c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java e9270ea 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateUtil.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CheckTableNames.java 8586262 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnLifetimeChecker.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnResolver.java 87e094a 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryContext.java 125b432 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryRewriter.java b612173 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeSemanticAnalyzer.java fc96055 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultAliasDecider.java 80ceae4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultQueryAST.java c9993f3 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DenormalizationResolver.java cb26878 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java 0ea0b1c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/FieldValidator.java 48af0c9 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/GroupbyResolver.java 216ae52 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinResolver.java 7b865bf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LeastPartitionResolver.java a53e994 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LightestFactResolver.java 97accbb 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MaxCoveringFactResolver.java 45824fe 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MultiFactHQLContext.java 979c24b 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/PruneCauses.java 9b5a52f 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueriedPhraseContext.java 34a562d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueryAST.java 7298604 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SimpleHQLContext.java 62ceb12 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactMultiStorageHQLContext.java 9b48213 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactSingleStorageHQLContext.java dbc84ed 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java cdf6812 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageUtil.java f9636d1 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRangeChecker.java f18ae36 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionHQLContext.java e6ee989 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionQueryWriter.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/AutoJoinContext.java 3d5c5ac 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/BridgeTableJoinContext.java cf74634 
>   lens-cube/src/main/java/org/apache/lens/driver/cube/RewriterPlan.java fd6c30d 
>   lens-cube/src/test/java/org/apache/lens/cube/metadata/DateFactory.java 3bdc047 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/CubeTestSetup.java 9b29083 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/FieldsCannotBeQueriedTogetherTest.java 1a5bd0d 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestAggregateResolver.java dd0b6dc 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java dbb8fa3 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java 450605b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java 2f00244 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java 98b021b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java 5505ed4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestExpressionResolver.java 5d4e87f 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestJoinResolver.java 677d641 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestQueryMetrics.java 27a18f4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestRewriterPlan.java 7f26b24 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java 280a8c4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeWriterWithQuery.java 7010849 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java PRE-CREATION 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionQueries.java d5bc81c 
>   lens-cube/src/test/resources/schema/cubes/base/basecube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/base/testcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/derivedcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/union_join_ctx_der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/citydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/countrydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/daydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/hourdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/sports.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/statedim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/unreachabledim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/user_interests.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/userdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/zipdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim1tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/daydimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/hourdimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/sports_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim3tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim4tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/unreachabledimtable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/user_interests_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/usertable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/ziptable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/cheapfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact4_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact6_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_continuous.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_deprecated.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfactmonthly.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact6.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/segmentations/seg1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c0.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c99.xml PRE-CREATION 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/ColumnarSQLRewriter.java 75153f6 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/DruidSQLRewriter.java 2351fb3 
>   lens-server/src/main/java/org/apache/lens/server/metastore/CubeMetastoreServiceImpl.java 24660e1 
>   lens-server/src/main/java/org/apache/lens/server/metastore/JAXBUtils.java 7d54c7b 
>   lens-server/src/test/java/org/apache/lens/server/common/RestAPITestUtil.java 02e2f8b 
>   lens-server/src/test/java/org/apache/lens/server/common/TestDataUtils.java 0400519 
>   lens-server/src/test/java/org/apache/lens/server/query/QueryAPIErrorResponseTest.java 567c929 
> 
> 
> Diff: https://reviews.apache.org/r/58102/diff/1/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Sushil Mohanty
> 
>


Re: Review Request 58102: LENS-1381 : Support Fact to Fact Union

Posted by Sushil Mohanty <su...@gmail.com>.

> On March 31, 2017, 11:09 a.m., Amareshwari Sriramadasu wrote:
> > lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java
> > Lines 56-69 (patched)
> > <https://reviews.apache.org/r/58102/diff/1/?file=1681884#file1681884line56>
> >
> >     Usually NoCandidateFactAvailableException is thrown after all the facts are pruned. And we were logging the details of why each fact was pruned in toHQL().
> >     
> >     This code was throwing NO_FACT_HAS_COLUMN error :
> >     https://github.com/apache/lens/blob/master/lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java#L333
> >     
> >     Can we summarize why the change was done?
> 
> Sushil Mohanty wrote:
>     Line 56 : Timerange is not answerable by neither a single candidate nor a range covering candidates(UnionCandidate) 
>     Line 69 : Queried meaaures are not answerable by neither a single candidate nor measure covering candidates(JoinCandidate) 
>     In both the cases it terminates the flow. The columns are passed for additional logging information.

Added below two LensErrorCode, LensException will be thrown with these error codes when no Union and Join candidates are found to answer the  query.
NO_UNION_CANDIDATE_AVAILABLE(3034,1501),
NO_JOIN_CANDIDATE_AVAILABLE(3035,1502),


- Sushil


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/58102/#review170696
-----------------------------------------------------------


On April 11, 2017, 5:08 p.m., Sushil Mohanty wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/58102/
> -----------------------------------------------------------
> 
> (Updated April 11, 2017, 5:08 p.m.)
> 
> 
> Review request for lens.
> 
> 
> Bugs: LENS-1381
>     https://issues.apache.org/jira/browse/LENS-1381
> 
> 
> Repository: lens
> 
> 
> Description
> -------
> 
> This is a neew feature to support union across multiple facts.
> 
> 
> Diffs
> -----
> 
>   lens-api/src/main/java/org/apache/lens/api/ToXMLString.java e74adc9 
>   lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 14fc4aa 
>   lens-api/src/main/java/org/apache/lens/api/metastore/SchemaTraverser.java PRE-CREATION 
>   lens-api/src/main/resources/cube-0.1.xsd 060eb43 
>   lens-api/src/main/resources/lens-errors.conf 29e24cf 
>   lens-cli/src/main/java/org/apache/lens/cli/commands/LensSchemaCommands.java feabf9c 
>   lens-cube/src/main/java/org/apache/lens/cube/error/LensCubeErrorCode.java 571b481 
>   lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java b2568ff 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeFactTable.java 896a7a1 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeMetastoreClient.java 087c203 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/DateUtil.java 7717081 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java 1694b80 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/JAXBUtils.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/TimeRange.java bf6cc5c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AbridgedTimeRangeWriter.java 8681e90 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java 9658100 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/BetweenTimeRangeWriter.java c8b8129 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/Candidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateDim.java 4dcdbcf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateFact.java b42262d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java e001ca4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java bd6e27c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java e9270ea 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateUtil.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CheckTableNames.java 8586262 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnLifetimeChecker.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnResolver.java 87e094a 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryContext.java 125b432 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryRewriter.java b612173 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeSemanticAnalyzer.java fc96055 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultAliasDecider.java 80ceae4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultQueryAST.java c9993f3 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DenormalizationResolver.java cb26878 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java 0ea0b1c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/FieldValidator.java 48af0c9 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/GroupbyResolver.java 216ae52 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinResolver.java 7b865bf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LeastPartitionResolver.java a53e994 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LightestFactResolver.java 97accbb 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MaxCoveringFactResolver.java 45824fe 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MultiFactHQLContext.java 979c24b 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/PruneCauses.java 9b5a52f 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueriedPhraseContext.java 34a562d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueryAST.java 7298604 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SimpleHQLContext.java 62ceb12 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactMultiStorageHQLContext.java 9b48213 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactSingleStorageHQLContext.java dbc84ed 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java cdf6812 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageUtil.java f9636d1 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRangeChecker.java f18ae36 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionHQLContext.java e6ee989 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionQueryWriter.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/AutoJoinContext.java 3d5c5ac 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/BridgeTableJoinContext.java cf74634 
>   lens-cube/src/main/java/org/apache/lens/driver/cube/RewriterPlan.java fd6c30d 
>   lens-cube/src/test/java/org/apache/lens/cube/metadata/DateFactory.java 3bdc047 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/CubeTestSetup.java 9b29083 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/FieldsCannotBeQueriedTogetherTest.java 1a5bd0d 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestAggregateResolver.java dd0b6dc 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java dbb8fa3 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java 450605b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java 2f00244 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java 98b021b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java 5505ed4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestExpressionResolver.java 5d4e87f 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestJoinResolver.java 677d641 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestQueryMetrics.java 27a18f4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestRewriterPlan.java 7f26b24 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java 280a8c4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeWriterWithQuery.java 7010849 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java PRE-CREATION 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionQueries.java d5bc81c 
>   lens-cube/src/test/resources/schema/cubes/base/basecube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/base/testcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/derivedcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/union_join_ctx_der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/citydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/countrydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/daydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/hourdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/sports.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/statedim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/unreachabledim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/user_interests.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/userdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/zipdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim1tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/daydimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/hourdimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/sports_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim3tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim4tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/unreachabledimtable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/user_interests_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/usertable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/ziptable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/cheapfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact4_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact6_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_continuous.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_deprecated.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfactmonthly.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact6.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/segmentations/seg1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c0.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c99.xml PRE-CREATION 
>   lens-examples/src/test/resources/yaml/city_subset.yaml cd5c8ad 
>   lens-examples/src/test/resources/yaml/city_table.yaml 92ce3ec 
>   lens-examples/src/test/resources/yaml/customer_table.yaml 4209bea 
>   lens-examples/src/test/resources/yaml/dim_table.yaml 37b50da 
>   lens-examples/src/test/resources/yaml/dim_table2.yaml 619625c 
>   lens-examples/src/test/resources/yaml/dim_table3.yaml 74cd367 
>   lens-examples/src/test/resources/yaml/dim_table4.yaml 03b2809 
>   lens-examples/src/test/resources/yaml/fact1.yaml 9c1c527 
>   lens-examples/src/test/resources/yaml/fact2.yaml 6fadd11 
>   lens-examples/src/test/resources/yaml/product_db_table.yaml 6b9461a 
>   lens-examples/src/test/resources/yaml/product_table.yaml 637db62 
>   lens-examples/src/test/resources/yaml/rawfact.yaml f7b2d55 
>   lens-examples/src/test/resources/yaml/sales-aggr-continuous-fact.yaml f95f91b 
>   lens-examples/src/test/resources/yaml/sales-aggr-fact1.yaml 02f65ff 
>   lens-examples/src/test/resources/yaml/sales-aggr-fact2.yaml ff47d36 
>   lens-examples/src/test/resources/yaml/sales-raw-fact.yaml 15becfc 
>   lens-server/src/main/java/org/apache/lens/server/metastore/CubeMetastoreServiceImpl.java 24660e1 
>   lens-server/src/main/java/org/apache/lens/server/metastore/JAXBUtils.java 7d54c7b 
>   lens-server/src/main/java/org/apache/lens/server/metastore/MetastoreResource.java 9d823da 
>   lens-server/src/test/java/org/apache/lens/server/common/RestAPITestUtil.java 02e2f8b 
>   lens-server/src/test/java/org/apache/lens/server/common/TestDataUtils.java 0400519 
>   lens-server/src/test/java/org/apache/lens/server/query/QueryAPIErrorResponseTest.java 567c929 
> 
> 
> Diff: https://reviews.apache.org/r/58102/diff/3/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Sushil Mohanty
> 
>


Re: Review Request 58102: LENS-1381 : Support Fact to Fact Union

Posted by Sushil Mohanty <su...@gmail.com>.

> On March 31, 2017, 11:09 a.m., Amareshwari Sriramadasu wrote:
> > lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java
> > Lines 36 (patched)
> > <https://reviews.apache.org/r/58102/diff/1/?file=1681873#file1681873line36>
> >
> >     Seems CubeQueryContext as instance variable is not required. Can we remove?
> 
> Sushil Mohanty wrote:
>     In few test cases its being used to get getLensExceptionInRewrite and assert eg: TestTimeRangeResolver#testFactValidity
> 
> Amareshwari Sriramadasu wrote:
>     rewriteCtx() in TestQueryRewrite would give handle to CubeQueryContext for the caller. We should be able to use that, instead of adding to the exception.

+1. Taken care.


> On March 31, 2017, 11:09 a.m., Amareshwari Sriramadasu wrote:
> > lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java
> > Line 43 (original), 43 (patched)
> > <https://reviews.apache.org/r/58102/diff/1/?file=1681887#file1681887line43>
> >
> >     Can we still call it storageTable? Calling storageName will be confusing.
> 
> Sushil Mohanty wrote:
>     It's the name of the storage, hence renamed it.
> 
> Amareshwari Sriramadasu wrote:
>     I see the following code in CandidateDim, which is assuming this to be storageTable :
>     
>       public String getStorageString(String alias) {
>         if (!dbResolved) {
>           String database = SessionState.get().getCurrentDatabase();
>           // Add database name prefix for non default database
>           if (StringUtils.isNotBlank(database) && !"default".equalsIgnoreCase(database)) {
>             storageName = database + "." + storageName;
>           }
>           dbResolved = true;
>         }
>         return storageName + " " + alias;
>       }

Taken care.


> On March 31, 2017, 11:09 a.m., Amareshwari Sriramadasu wrote:
> > lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java
> > Lines 59-63 (original), 98-102 (patched)
> > <https://reviews.apache.org/r/58102/diff/1/?file=1681888#file1681888line98>
> >
> >     These errors should be still moved up the above errors.

Taken care.


- Sushil


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/58102/#review170696
-----------------------------------------------------------


On March 31, 2017, 10:02 a.m., Sushil Mohanty wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/58102/
> -----------------------------------------------------------
> 
> (Updated March 31, 2017, 10:02 a.m.)
> 
> 
> Review request for lens.
> 
> 
> Bugs: LENS-1381
>     https://issues.apache.org/jira/browse/LENS-1381
> 
> 
> Repository: lens
> 
> 
> Description
> -------
> 
> This is a neew feature to support union across multiple facts.
> 
> 
> Diffs
> -----
> 
>   lens-api/src/main/java/org/apache/lens/api/ToXMLString.java e74adc9 
>   lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 14fc4aa 
>   lens-api/src/main/java/org/apache/lens/api/metastore/SchemaTraverser.java PRE-CREATION 
>   lens-api/src/main/resources/cube-0.1.xsd 060eb43 
>   lens-cli/src/main/java/org/apache/lens/cli/commands/LensSchemaCommands.java feabf9c 
>   lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java b2568ff 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeFactTable.java 896a7a1 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeMetastoreClient.java 087c203 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/DateUtil.java 7717081 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java 1694b80 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/JAXBUtils.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/TimeRange.java bf6cc5c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AbridgedTimeRangeWriter.java 8681e90 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java 9658100 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/BetweenTimeRangeWriter.java c8b8129 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/Candidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateDim.java 4dcdbcf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateFact.java b42262d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java e001ca4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java bd6e27c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java e9270ea 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateUtil.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CheckTableNames.java 8586262 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnLifetimeChecker.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnResolver.java 87e094a 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryContext.java 125b432 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryRewriter.java b612173 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeSemanticAnalyzer.java fc96055 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultAliasDecider.java 80ceae4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultQueryAST.java c9993f3 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DenormalizationResolver.java cb26878 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java 0ea0b1c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/FieldValidator.java 48af0c9 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/GroupbyResolver.java 216ae52 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinResolver.java 7b865bf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LeastPartitionResolver.java a53e994 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LightestFactResolver.java 97accbb 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MaxCoveringFactResolver.java 45824fe 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MultiFactHQLContext.java 979c24b 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/PruneCauses.java 9b5a52f 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueriedPhraseContext.java 34a562d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueryAST.java 7298604 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SimpleHQLContext.java 62ceb12 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactMultiStorageHQLContext.java 9b48213 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactSingleStorageHQLContext.java dbc84ed 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java cdf6812 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageUtil.java f9636d1 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRangeChecker.java f18ae36 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionHQLContext.java e6ee989 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionQueryWriter.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/AutoJoinContext.java 3d5c5ac 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/BridgeTableJoinContext.java cf74634 
>   lens-cube/src/main/java/org/apache/lens/driver/cube/RewriterPlan.java fd6c30d 
>   lens-cube/src/test/java/org/apache/lens/cube/metadata/DateFactory.java 3bdc047 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/CubeTestSetup.java 9b29083 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/FieldsCannotBeQueriedTogetherTest.java 1a5bd0d 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestAggregateResolver.java dd0b6dc 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java dbb8fa3 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java 450605b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java 2f00244 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java 98b021b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java 5505ed4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestExpressionResolver.java 5d4e87f 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestJoinResolver.java 677d641 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestQueryMetrics.java 27a18f4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestRewriterPlan.java 7f26b24 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java 280a8c4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeWriterWithQuery.java 7010849 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java PRE-CREATION 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionQueries.java d5bc81c 
>   lens-cube/src/test/resources/schema/cubes/base/basecube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/base/testcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/derivedcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/union_join_ctx_der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/citydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/countrydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/daydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/hourdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/sports.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/statedim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/unreachabledim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/user_interests.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/userdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/zipdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim1tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/daydimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/hourdimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/sports_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim3tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim4tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/unreachabledimtable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/user_interests_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/usertable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/ziptable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/cheapfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact4_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact6_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_continuous.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_deprecated.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfactmonthly.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact6.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/segmentations/seg1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c0.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c99.xml PRE-CREATION 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/ColumnarSQLRewriter.java 75153f6 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/DruidSQLRewriter.java 2351fb3 
>   lens-server/src/main/java/org/apache/lens/server/metastore/CubeMetastoreServiceImpl.java 24660e1 
>   lens-server/src/main/java/org/apache/lens/server/metastore/JAXBUtils.java 7d54c7b 
>   lens-server/src/test/java/org/apache/lens/server/common/RestAPITestUtil.java 02e2f8b 
>   lens-server/src/test/java/org/apache/lens/server/common/TestDataUtils.java 0400519 
>   lens-server/src/test/java/org/apache/lens/server/query/QueryAPIErrorResponseTest.java 567c929 
> 
> 
> Diff: https://reviews.apache.org/r/58102/diff/1/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Sushil Mohanty
> 
>


Re: Review Request 58102: LENS-1381 : Support Fact to Fact Union

Posted by Puneet Gupta <pu...@gmail.com>.

> On March 31, 2017, 11:09 a.m., Amareshwari Sriramadasu wrote:
> > lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java
> > Line 67 (original), 67 (patched)
> > <https://reviews.apache.org/r/58102/diff/1/?file=1681877#file1681877line67>
> >
> >     Why is this required? Can you add comment in code saying why we are creating FactPartition without containing?

Earlier this code was in AbridgedTimeRangeWriter. It was moved to FactPartition


- Puneet


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/58102/#review170696
-----------------------------------------------------------


On April 5, 2017, 5:38 a.m., Sushil Mohanty wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/58102/
> -----------------------------------------------------------
> 
> (Updated April 5, 2017, 5:38 a.m.)
> 
> 
> Review request for lens.
> 
> 
> Bugs: LENS-1381
>     https://issues.apache.org/jira/browse/LENS-1381
> 
> 
> Repository: lens
> 
> 
> Description
> -------
> 
> This is a neew feature to support union across multiple facts.
> 
> 
> Diffs
> -----
> 
>   lens-api/src/main/java/org/apache/lens/api/ToXMLString.java e74adc9 
>   lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 14fc4aa 
>   lens-api/src/main/java/org/apache/lens/api/metastore/SchemaTraverser.java PRE-CREATION 
>   lens-api/src/main/resources/cube-0.1.xsd 060eb43 
>   lens-cli/src/main/java/org/apache/lens/cli/commands/LensSchemaCommands.java feabf9c 
>   lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java b2568ff 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeFactTable.java 896a7a1 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeMetastoreClient.java 087c203 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/DateUtil.java 7717081 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java 1694b80 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/JAXBUtils.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/TimeRange.java bf6cc5c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AbridgedTimeRangeWriter.java 8681e90 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java 9658100 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/BetweenTimeRangeWriter.java c8b8129 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/Candidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateDim.java 4dcdbcf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateFact.java b42262d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java e001ca4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java bd6e27c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java e9270ea 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateUtil.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CheckTableNames.java 8586262 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnLifetimeChecker.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnResolver.java 87e094a 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryContext.java 125b432 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryRewriter.java b612173 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeSemanticAnalyzer.java fc96055 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultAliasDecider.java 80ceae4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultQueryAST.java c9993f3 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DenormalizationResolver.java cb26878 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java 0ea0b1c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/FieldValidator.java 48af0c9 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/GroupbyResolver.java 216ae52 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinResolver.java 7b865bf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LeastPartitionResolver.java a53e994 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LightestFactResolver.java 97accbb 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MaxCoveringFactResolver.java 45824fe 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MultiFactHQLContext.java 979c24b 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/PruneCauses.java 9b5a52f 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueriedPhraseContext.java 34a562d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueryAST.java 7298604 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SimpleHQLContext.java 62ceb12 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactMultiStorageHQLContext.java 9b48213 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactSingleStorageHQLContext.java dbc84ed 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java cdf6812 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageUtil.java f9636d1 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRangeChecker.java f18ae36 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionHQLContext.java e6ee989 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionQueryWriter.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/AutoJoinContext.java 3d5c5ac 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/BridgeTableJoinContext.java cf74634 
>   lens-cube/src/main/java/org/apache/lens/driver/cube/RewriterPlan.java fd6c30d 
>   lens-cube/src/test/java/org/apache/lens/cube/metadata/DateFactory.java 3bdc047 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/CubeTestSetup.java 9b29083 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/FieldsCannotBeQueriedTogetherTest.java 1a5bd0d 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestAggregateResolver.java dd0b6dc 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java dbb8fa3 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java 450605b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java 2f00244 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java 98b021b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java 5505ed4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestExpressionResolver.java 5d4e87f 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestJoinResolver.java 677d641 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestQueryMetrics.java 27a18f4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestRewriterPlan.java 7f26b24 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java 280a8c4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeWriterWithQuery.java 7010849 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java PRE-CREATION 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionQueries.java d5bc81c 
>   lens-cube/src/test/resources/schema/cubes/base/basecube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/base/testcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/derivedcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/union_join_ctx_der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/citydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/countrydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/daydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/hourdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/sports.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/statedim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/unreachabledim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/user_interests.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/userdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/zipdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim1tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/daydimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/hourdimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/sports_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim3tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim4tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/unreachabledimtable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/user_interests_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/usertable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/ziptable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/cheapfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact4_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact6_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_continuous.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_deprecated.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfactmonthly.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact6.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/segmentations/seg1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c0.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c99.xml PRE-CREATION 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/ColumnarSQLRewriter.java 75153f6 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/DruidSQLRewriter.java 2351fb3 
>   lens-server/src/main/java/org/apache/lens/server/metastore/CubeMetastoreServiceImpl.java 24660e1 
>   lens-server/src/main/java/org/apache/lens/server/metastore/JAXBUtils.java 7d54c7b 
>   lens-server/src/main/java/org/apache/lens/server/metastore/MetastoreResource.java 9d823da 
>   lens-server/src/test/java/org/apache/lens/server/common/RestAPITestUtil.java 02e2f8b 
>   lens-server/src/test/java/org/apache/lens/server/common/TestDataUtils.java 0400519 
>   lens-server/src/test/java/org/apache/lens/server/query/QueryAPIErrorResponseTest.java 567c929 
> 
> 
> Diff: https://reviews.apache.org/r/58102/diff/2/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Sushil Mohanty
> 
>


Re: Review Request 58102: LENS-1381 : Support Fact to Fact Union

Posted by Rajat Khandelwal <ra...@gmail.com>.

> On March 31, 2017, 4:39 p.m., Amareshwari Sriramadasu wrote:
> > lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java
> > Line 67 (original), 67 (patched)
> > <https://reviews.apache.org/r/58102/diff/1/?file=1681877#file1681877line67>
> >
> >     Why is this required? Can you add comment in code saying why we are creating FactPartition without containing?
> 
> Puneet Gupta wrote:
>     Earlier this code was in AbridgedTimeRangeWriter. It was moved to FactPartition

This is to do optimizations in time range writer. `FP(it=a, inner=FP(et=x)) + FP(it=b, inner=FP(et=x))` can be naively written as `((it = a and et = x) OR (it=b and et=x)`. The optimization is to write it as `(it=a or it=b) and (et=x)`. For implementing this, we need to extract out common inner partitions, and hence the need for a method like `withoutContaining`. The method was earliner in the time range write class. The only change is movement and explicit documentation in terms of method name.


- Rajat


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/58102/#review170696
-----------------------------------------------------------


On April 5, 2017, 11:08 a.m., Sushil Mohanty wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/58102/
> -----------------------------------------------------------
> 
> (Updated April 5, 2017, 11:08 a.m.)
> 
> 
> Review request for lens.
> 
> 
> Bugs: LENS-1381
>     https://issues.apache.org/jira/browse/LENS-1381
> 
> 
> Repository: lens
> 
> 
> Description
> -------
> 
> This is a neew feature to support union across multiple facts.
> 
> 
> Diffs
> -----
> 
>   lens-api/src/main/java/org/apache/lens/api/ToXMLString.java e74adc9 
>   lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 14fc4aa 
>   lens-api/src/main/java/org/apache/lens/api/metastore/SchemaTraverser.java PRE-CREATION 
>   lens-api/src/main/resources/cube-0.1.xsd 060eb43 
>   lens-cli/src/main/java/org/apache/lens/cli/commands/LensSchemaCommands.java feabf9c 
>   lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java b2568ff 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeFactTable.java 896a7a1 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeMetastoreClient.java 087c203 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/DateUtil.java 7717081 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java 1694b80 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/JAXBUtils.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/TimeRange.java bf6cc5c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AbridgedTimeRangeWriter.java 8681e90 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java 9658100 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/BetweenTimeRangeWriter.java c8b8129 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/Candidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateDim.java 4dcdbcf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateFact.java b42262d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java e001ca4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java bd6e27c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java e9270ea 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateUtil.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CheckTableNames.java 8586262 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnLifetimeChecker.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnResolver.java 87e094a 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryContext.java 125b432 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryRewriter.java b612173 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeSemanticAnalyzer.java fc96055 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultAliasDecider.java 80ceae4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultQueryAST.java c9993f3 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DenormalizationResolver.java cb26878 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java 0ea0b1c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/FieldValidator.java 48af0c9 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/GroupbyResolver.java 216ae52 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinResolver.java 7b865bf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LeastPartitionResolver.java a53e994 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LightestFactResolver.java 97accbb 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MaxCoveringFactResolver.java 45824fe 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MultiFactHQLContext.java 979c24b 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/PruneCauses.java 9b5a52f 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueriedPhraseContext.java 34a562d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueryAST.java 7298604 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SimpleHQLContext.java 62ceb12 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactMultiStorageHQLContext.java 9b48213 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactSingleStorageHQLContext.java dbc84ed 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java cdf6812 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageUtil.java f9636d1 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRangeChecker.java f18ae36 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionHQLContext.java e6ee989 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionQueryWriter.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/AutoJoinContext.java 3d5c5ac 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/BridgeTableJoinContext.java cf74634 
>   lens-cube/src/main/java/org/apache/lens/driver/cube/RewriterPlan.java fd6c30d 
>   lens-cube/src/test/java/org/apache/lens/cube/metadata/DateFactory.java 3bdc047 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/CubeTestSetup.java 9b29083 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/FieldsCannotBeQueriedTogetherTest.java 1a5bd0d 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestAggregateResolver.java dd0b6dc 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java dbb8fa3 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java 450605b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java 2f00244 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java 98b021b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java 5505ed4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestExpressionResolver.java 5d4e87f 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestJoinResolver.java 677d641 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestQueryMetrics.java 27a18f4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestRewriterPlan.java 7f26b24 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java 280a8c4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeWriterWithQuery.java 7010849 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java PRE-CREATION 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionQueries.java d5bc81c 
>   lens-cube/src/test/resources/schema/cubes/base/basecube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/base/testcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/derivedcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/union_join_ctx_der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/citydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/countrydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/daydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/hourdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/sports.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/statedim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/unreachabledim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/user_interests.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/userdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/zipdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim1tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/daydimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/hourdimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/sports_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim3tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim4tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/unreachabledimtable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/user_interests_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/usertable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/ziptable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/cheapfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact4_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact6_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_continuous.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_deprecated.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfactmonthly.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact6.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/segmentations/seg1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c0.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c99.xml PRE-CREATION 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/ColumnarSQLRewriter.java 75153f6 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/DruidSQLRewriter.java 2351fb3 
>   lens-server/src/main/java/org/apache/lens/server/metastore/CubeMetastoreServiceImpl.java 24660e1 
>   lens-server/src/main/java/org/apache/lens/server/metastore/JAXBUtils.java 7d54c7b 
>   lens-server/src/main/java/org/apache/lens/server/metastore/MetastoreResource.java 9d823da 
>   lens-server/src/test/java/org/apache/lens/server/common/RestAPITestUtil.java 02e2f8b 
>   lens-server/src/test/java/org/apache/lens/server/common/TestDataUtils.java 0400519 
>   lens-server/src/test/java/org/apache/lens/server/query/QueryAPIErrorResponseTest.java 567c929 
> 
> 
> Diff: https://reviews.apache.org/r/58102/diff/2/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Sushil Mohanty
> 
>


Re: Review Request 58102: LENS-1381 : Support Fact to Fact Union

Posted by Amareshwari Sriramadasu <am...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/58102/#review170696
-----------------------------------------------------------




lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java
Lines 36 (patched)
<https://reviews.apache.org/r/58102/#comment243582>

    Seems CubeQueryContext as instance variable is not required. Can we remove?



lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java
Line 67 (original), 67 (patched)
<https://reviews.apache.org/r/58102/#comment243584>

    Why is this required? Can you add comment in code saying why we are creating FactPartition without containing?



lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java
Lines 56-69 (patched)
<https://reviews.apache.org/r/58102/#comment243585>

    Usually NoCandidateFactAvailableException is thrown after all the facts are pruned. And we were logging the details of why each fact was pruned in toHQL().
    
    This code was throwing NO_FACT_HAS_COLUMN error :
    https://github.com/apache/lens/blob/master/lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java#L333
    
    Can we summarize why the change was done?



lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateDim.java
Line 41 (original), 41 (patched)
<https://reviews.apache.org/r/58102/#comment243586>

    Why is rename required? Seems its actually storageTable itself.



lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java
Line 43 (original), 43 (patched)
<https://reviews.apache.org/r/58102/#comment243587>

    Can we still call it storageTable? Calling storageName will be confusing.



lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java
Lines 59-63 (original), 98-102 (patched)
<https://reviews.apache.org/r/58102/#comment243588>

    These errors should be still moved up the above errors.


- Amareshwari Sriramadasu


On March 31, 2017, 10:02 a.m., Sushil Mohanty wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/58102/
> -----------------------------------------------------------
> 
> (Updated March 31, 2017, 10:02 a.m.)
> 
> 
> Review request for lens.
> 
> 
> Bugs: LENS-1381
>     https://issues.apache.org/jira/browse/LENS-1381
> 
> 
> Repository: lens
> 
> 
> Description
> -------
> 
> This is a neew feature to support union across multiple facts.
> 
> 
> Diffs
> -----
> 
>   lens-api/src/main/java/org/apache/lens/api/ToXMLString.java e74adc9 
>   lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 14fc4aa 
>   lens-api/src/main/java/org/apache/lens/api/metastore/SchemaTraverser.java PRE-CREATION 
>   lens-api/src/main/resources/cube-0.1.xsd 060eb43 
>   lens-cli/src/main/java/org/apache/lens/cli/commands/LensSchemaCommands.java feabf9c 
>   lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java b2568ff 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeFactTable.java 896a7a1 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeMetastoreClient.java 087c203 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/DateUtil.java 7717081 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java 1694b80 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/JAXBUtils.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/TimeRange.java bf6cc5c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AbridgedTimeRangeWriter.java 8681e90 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java 9658100 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/BetweenTimeRangeWriter.java c8b8129 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/Candidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateDim.java 4dcdbcf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateFact.java b42262d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java e001ca4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java bd6e27c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java e9270ea 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateUtil.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CheckTableNames.java 8586262 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnLifetimeChecker.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnResolver.java 87e094a 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryContext.java 125b432 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryRewriter.java b612173 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeSemanticAnalyzer.java fc96055 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultAliasDecider.java 80ceae4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultQueryAST.java c9993f3 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DenormalizationResolver.java cb26878 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java 0ea0b1c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/FieldValidator.java 48af0c9 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/GroupbyResolver.java 216ae52 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinResolver.java 7b865bf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LeastPartitionResolver.java a53e994 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LightestFactResolver.java 97accbb 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MaxCoveringFactResolver.java 45824fe 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MultiFactHQLContext.java 979c24b 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/PruneCauses.java 9b5a52f 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueriedPhraseContext.java 34a562d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueryAST.java 7298604 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SimpleHQLContext.java 62ceb12 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactMultiStorageHQLContext.java 9b48213 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactSingleStorageHQLContext.java dbc84ed 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java cdf6812 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageUtil.java f9636d1 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRangeChecker.java f18ae36 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionHQLContext.java e6ee989 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionQueryWriter.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/AutoJoinContext.java 3d5c5ac 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/BridgeTableJoinContext.java cf74634 
>   lens-cube/src/main/java/org/apache/lens/driver/cube/RewriterPlan.java fd6c30d 
>   lens-cube/src/test/java/org/apache/lens/cube/metadata/DateFactory.java 3bdc047 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/CubeTestSetup.java 9b29083 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/FieldsCannotBeQueriedTogetherTest.java 1a5bd0d 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestAggregateResolver.java dd0b6dc 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java dbb8fa3 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java 450605b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java 2f00244 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java 98b021b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java 5505ed4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestExpressionResolver.java 5d4e87f 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestJoinResolver.java 677d641 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestQueryMetrics.java 27a18f4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestRewriterPlan.java 7f26b24 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java 280a8c4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeWriterWithQuery.java 7010849 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java PRE-CREATION 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionQueries.java d5bc81c 
>   lens-cube/src/test/resources/schema/cubes/base/basecube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/base/testcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/derivedcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/union_join_ctx_der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/citydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/countrydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/daydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/hourdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/sports.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/statedim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/unreachabledim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/user_interests.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/userdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/zipdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim1tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/daydimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/hourdimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/sports_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim3tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim4tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/unreachabledimtable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/user_interests_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/usertable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/ziptable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/cheapfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact4_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact6_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_continuous.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_deprecated.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfactmonthly.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact6.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/segmentations/seg1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c0.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c99.xml PRE-CREATION 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/ColumnarSQLRewriter.java 75153f6 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/DruidSQLRewriter.java 2351fb3 
>   lens-server/src/main/java/org/apache/lens/server/metastore/CubeMetastoreServiceImpl.java 24660e1 
>   lens-server/src/main/java/org/apache/lens/server/metastore/JAXBUtils.java 7d54c7b 
>   lens-server/src/test/java/org/apache/lens/server/common/RestAPITestUtil.java 02e2f8b 
>   lens-server/src/test/java/org/apache/lens/server/common/TestDataUtils.java 0400519 
>   lens-server/src/test/java/org/apache/lens/server/query/QueryAPIErrorResponseTest.java 567c929 
> 
> 
> Diff: https://reviews.apache.org/r/58102/diff/1/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Sushil Mohanty
> 
>


Re: Review Request 58102: LENS-1381 : Support Fact to Fact Union

Posted by Amareshwari Sriramadasu <am...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/58102/#review171098
-----------------------------------------------------------




lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/ColumnarSQLRewriter.java
Line 203 (original), 203 (patched)
<https://reviews.apache.org/r/58102/#comment243979>

    Need to undo the change



lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/DruidSQLRewriter.java
Line 68 (original), 68 (patched)
<https://reviews.apache.org/r/58102/#comment243980>

    Need to undo the change



lens-server/src/main/java/org/apache/lens/server/metastore/MetastoreResource.java
Line 521 (original), 521 (patched)
<https://reviews.apache.org/r/58102/#comment243981>

    Wrong change here, need to storageName itself.


- Amareshwari Sriramadasu


On April 5, 2017, 5:38 a.m., Sushil Mohanty wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/58102/
> -----------------------------------------------------------
> 
> (Updated April 5, 2017, 5:38 a.m.)
> 
> 
> Review request for lens.
> 
> 
> Bugs: LENS-1381
>     https://issues.apache.org/jira/browse/LENS-1381
> 
> 
> Repository: lens
> 
> 
> Description
> -------
> 
> This is a neew feature to support union across multiple facts.
> 
> 
> Diffs
> -----
> 
>   lens-api/src/main/java/org/apache/lens/api/ToXMLString.java e74adc9 
>   lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 14fc4aa 
>   lens-api/src/main/java/org/apache/lens/api/metastore/SchemaTraverser.java PRE-CREATION 
>   lens-api/src/main/resources/cube-0.1.xsd 060eb43 
>   lens-cli/src/main/java/org/apache/lens/cli/commands/LensSchemaCommands.java feabf9c 
>   lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java b2568ff 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeFactTable.java 896a7a1 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeMetastoreClient.java 087c203 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/DateUtil.java 7717081 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java 1694b80 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/JAXBUtils.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/TimeRange.java bf6cc5c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AbridgedTimeRangeWriter.java 8681e90 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java 9658100 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/BetweenTimeRangeWriter.java c8b8129 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/Candidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateDim.java 4dcdbcf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateFact.java b42262d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java e001ca4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java bd6e27c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java e9270ea 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateUtil.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CheckTableNames.java 8586262 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnLifetimeChecker.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnResolver.java 87e094a 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryContext.java 125b432 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryRewriter.java b612173 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeSemanticAnalyzer.java fc96055 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultAliasDecider.java 80ceae4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultQueryAST.java c9993f3 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DenormalizationResolver.java cb26878 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java 0ea0b1c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/FieldValidator.java 48af0c9 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/GroupbyResolver.java 216ae52 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinResolver.java 7b865bf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LeastPartitionResolver.java a53e994 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LightestFactResolver.java 97accbb 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MaxCoveringFactResolver.java 45824fe 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MultiFactHQLContext.java 979c24b 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/PruneCauses.java 9b5a52f 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueriedPhraseContext.java 34a562d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueryAST.java 7298604 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SimpleHQLContext.java 62ceb12 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactMultiStorageHQLContext.java 9b48213 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactSingleStorageHQLContext.java dbc84ed 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java cdf6812 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageUtil.java f9636d1 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRangeChecker.java f18ae36 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionHQLContext.java e6ee989 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionQueryWriter.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/AutoJoinContext.java 3d5c5ac 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/BridgeTableJoinContext.java cf74634 
>   lens-cube/src/main/java/org/apache/lens/driver/cube/RewriterPlan.java fd6c30d 
>   lens-cube/src/test/java/org/apache/lens/cube/metadata/DateFactory.java 3bdc047 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/CubeTestSetup.java 9b29083 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/FieldsCannotBeQueriedTogetherTest.java 1a5bd0d 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestAggregateResolver.java dd0b6dc 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java dbb8fa3 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java 450605b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java 2f00244 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java 98b021b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java 5505ed4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestExpressionResolver.java 5d4e87f 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestJoinResolver.java 677d641 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestQueryMetrics.java 27a18f4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestRewriterPlan.java 7f26b24 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java 280a8c4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeWriterWithQuery.java 7010849 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java PRE-CREATION 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionQueries.java d5bc81c 
>   lens-cube/src/test/resources/schema/cubes/base/basecube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/base/testcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/derivedcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/union_join_ctx_der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/citydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/countrydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/daydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/hourdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/sports.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/statedim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/unreachabledim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/user_interests.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/userdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/zipdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim1tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/daydimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/hourdimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/sports_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim3tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim4tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/unreachabledimtable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/user_interests_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/usertable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/ziptable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/cheapfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact4_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact6_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_continuous.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_deprecated.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfactmonthly.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact6.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/segmentations/seg1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c0.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c99.xml PRE-CREATION 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/ColumnarSQLRewriter.java 75153f6 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/DruidSQLRewriter.java 2351fb3 
>   lens-server/src/main/java/org/apache/lens/server/metastore/CubeMetastoreServiceImpl.java 24660e1 
>   lens-server/src/main/java/org/apache/lens/server/metastore/JAXBUtils.java 7d54c7b 
>   lens-server/src/main/java/org/apache/lens/server/metastore/MetastoreResource.java 9d823da 
>   lens-server/src/test/java/org/apache/lens/server/common/RestAPITestUtil.java 02e2f8b 
>   lens-server/src/test/java/org/apache/lens/server/common/TestDataUtils.java 0400519 
>   lens-server/src/test/java/org/apache/lens/server/query/QueryAPIErrorResponseTest.java 567c929 
> 
> 
> Diff: https://reviews.apache.org/r/58102/diff/2/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Sushil Mohanty
> 
>


Re: Review Request 58102: LENS-1381 : Support Fact to Fact Union

Posted by Sushil Mohanty <su...@gmail.com>.

> On April 5, 2017, 6:13 a.m., Amareshwari Sriramadasu wrote:
> > lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java
> > Lines 83 (patched)
> > <https://reviews.apache.org/r/58102/diff/2/?file=1684812#file1684812line84>
> >
> >     Can we avoid throwing direct LensException like this?
> 
> Sushil Mohanty wrote:
>     The resolver flow work in multiple phases either with single StorageCandidate or complex Candidate(Join or Union). Object type check performed to ensure there is no type mismatch in the collection.

Instead doing assert.


- Sushil


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/58102/#review171090
-----------------------------------------------------------


On April 11, 2017, 5:08 p.m., Sushil Mohanty wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/58102/
> -----------------------------------------------------------
> 
> (Updated April 11, 2017, 5:08 p.m.)
> 
> 
> Review request for lens.
> 
> 
> Bugs: LENS-1381
>     https://issues.apache.org/jira/browse/LENS-1381
> 
> 
> Repository: lens
> 
> 
> Description
> -------
> 
> This is a neew feature to support union across multiple facts.
> 
> 
> Diffs
> -----
> 
>   lens-api/src/main/java/org/apache/lens/api/ToXMLString.java e74adc9 
>   lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 14fc4aa 
>   lens-api/src/main/java/org/apache/lens/api/metastore/SchemaTraverser.java PRE-CREATION 
>   lens-api/src/main/resources/cube-0.1.xsd 060eb43 
>   lens-api/src/main/resources/lens-errors.conf 29e24cf 
>   lens-cli/src/main/java/org/apache/lens/cli/commands/LensSchemaCommands.java feabf9c 
>   lens-cube/src/main/java/org/apache/lens/cube/error/LensCubeErrorCode.java 571b481 
>   lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java b2568ff 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeFactTable.java 896a7a1 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeMetastoreClient.java 087c203 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/DateUtil.java 7717081 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java 1694b80 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/JAXBUtils.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/TimeRange.java bf6cc5c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AbridgedTimeRangeWriter.java 8681e90 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java 9658100 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/BetweenTimeRangeWriter.java c8b8129 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/Candidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateDim.java 4dcdbcf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateFact.java b42262d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java e001ca4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java bd6e27c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java e9270ea 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateUtil.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CheckTableNames.java 8586262 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnLifetimeChecker.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnResolver.java 87e094a 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryContext.java 125b432 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryRewriter.java b612173 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeSemanticAnalyzer.java fc96055 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultAliasDecider.java 80ceae4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultQueryAST.java c9993f3 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DenormalizationResolver.java cb26878 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java 0ea0b1c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/FieldValidator.java 48af0c9 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/GroupbyResolver.java 216ae52 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinResolver.java 7b865bf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LeastPartitionResolver.java a53e994 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LightestFactResolver.java 97accbb 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MaxCoveringFactResolver.java 45824fe 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MultiFactHQLContext.java 979c24b 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/PruneCauses.java 9b5a52f 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueriedPhraseContext.java 34a562d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueryAST.java 7298604 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SimpleHQLContext.java 62ceb12 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactMultiStorageHQLContext.java 9b48213 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactSingleStorageHQLContext.java dbc84ed 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java cdf6812 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageUtil.java f9636d1 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRangeChecker.java f18ae36 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionHQLContext.java e6ee989 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionQueryWriter.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/AutoJoinContext.java 3d5c5ac 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/BridgeTableJoinContext.java cf74634 
>   lens-cube/src/main/java/org/apache/lens/driver/cube/RewriterPlan.java fd6c30d 
>   lens-cube/src/test/java/org/apache/lens/cube/metadata/DateFactory.java 3bdc047 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/CubeTestSetup.java 9b29083 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/FieldsCannotBeQueriedTogetherTest.java 1a5bd0d 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestAggregateResolver.java dd0b6dc 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java dbb8fa3 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java 450605b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java 2f00244 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java 98b021b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java 5505ed4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestExpressionResolver.java 5d4e87f 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestJoinResolver.java 677d641 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestQueryMetrics.java 27a18f4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestRewriterPlan.java 7f26b24 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java 280a8c4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeWriterWithQuery.java 7010849 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java PRE-CREATION 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionQueries.java d5bc81c 
>   lens-cube/src/test/resources/schema/cubes/base/basecube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/base/testcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/derivedcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/union_join_ctx_der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/citydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/countrydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/daydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/hourdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/sports.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/statedim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/unreachabledim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/user_interests.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/userdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/zipdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim1tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/daydimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/hourdimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/sports_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim3tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim4tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/unreachabledimtable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/user_interests_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/usertable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/ziptable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/cheapfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact4_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact6_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_continuous.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_deprecated.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfactmonthly.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact6.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/segmentations/seg1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c0.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c99.xml PRE-CREATION 
>   lens-examples/src/test/resources/yaml/city_subset.yaml cd5c8ad 
>   lens-examples/src/test/resources/yaml/city_table.yaml 92ce3ec 
>   lens-examples/src/test/resources/yaml/customer_table.yaml 4209bea 
>   lens-examples/src/test/resources/yaml/dim_table.yaml 37b50da 
>   lens-examples/src/test/resources/yaml/dim_table2.yaml 619625c 
>   lens-examples/src/test/resources/yaml/dim_table3.yaml 74cd367 
>   lens-examples/src/test/resources/yaml/dim_table4.yaml 03b2809 
>   lens-examples/src/test/resources/yaml/fact1.yaml 9c1c527 
>   lens-examples/src/test/resources/yaml/fact2.yaml 6fadd11 
>   lens-examples/src/test/resources/yaml/product_db_table.yaml 6b9461a 
>   lens-examples/src/test/resources/yaml/product_table.yaml 637db62 
>   lens-examples/src/test/resources/yaml/rawfact.yaml f7b2d55 
>   lens-examples/src/test/resources/yaml/sales-aggr-continuous-fact.yaml f95f91b 
>   lens-examples/src/test/resources/yaml/sales-aggr-fact1.yaml 02f65ff 
>   lens-examples/src/test/resources/yaml/sales-aggr-fact2.yaml ff47d36 
>   lens-examples/src/test/resources/yaml/sales-raw-fact.yaml 15becfc 
>   lens-server/src/main/java/org/apache/lens/server/metastore/CubeMetastoreServiceImpl.java 24660e1 
>   lens-server/src/main/java/org/apache/lens/server/metastore/JAXBUtils.java 7d54c7b 
>   lens-server/src/main/java/org/apache/lens/server/metastore/MetastoreResource.java 9d823da 
>   lens-server/src/test/java/org/apache/lens/server/common/RestAPITestUtil.java 02e2f8b 
>   lens-server/src/test/java/org/apache/lens/server/common/TestDataUtils.java 0400519 
>   lens-server/src/test/java/org/apache/lens/server/query/QueryAPIErrorResponseTest.java 567c929 
> 
> 
> Diff: https://reviews.apache.org/r/58102/diff/3/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Sushil Mohanty
> 
>


Re: Review Request 58102: LENS-1381 : Support Fact to Fact Union

Posted by Sushil Mohanty <su...@gmail.com>.

> On April 5, 2017, 6:13 a.m., Amareshwari Sriramadasu wrote:
> > lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java
> > Line 31 (original), 43 (patched)
> > <https://reviews.apache.org/r/58102/diff/2/?file=1684804#file1684804line43>
> >
> >     Why is the error message no more coming from briefCause ?

yes it is coming from briefCause, it's part of the constructor.
  public NoCandidateFactAvailableException(CubeQueryContext cubeql) {
    this(cubeql.getStoragePruningMsgs().getBriefCause(), cubeql);
  }


> On April 5, 2017, 6:13 a.m., Amareshwari Sriramadasu wrote:
> > lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java
> > Lines 83 (patched)
> > <https://reviews.apache.org/r/58102/diff/2/?file=1684812#file1684812line84>
> >
> >     Can we avoid throwing direct LensException like this?

The resolver flow work in multiple phases either with single StorageCandidate or complex Candidate(Join or Union). Object type check performed to ensure there is no type mismatch in the collection.


- Sushil


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/58102/#review171090
-----------------------------------------------------------


On April 5, 2017, 5:38 a.m., Sushil Mohanty wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/58102/
> -----------------------------------------------------------
> 
> (Updated April 5, 2017, 5:38 a.m.)
> 
> 
> Review request for lens.
> 
> 
> Bugs: LENS-1381
>     https://issues.apache.org/jira/browse/LENS-1381
> 
> 
> Repository: lens
> 
> 
> Description
> -------
> 
> This is a neew feature to support union across multiple facts.
> 
> 
> Diffs
> -----
> 
>   lens-api/src/main/java/org/apache/lens/api/ToXMLString.java e74adc9 
>   lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 14fc4aa 
>   lens-api/src/main/java/org/apache/lens/api/metastore/SchemaTraverser.java PRE-CREATION 
>   lens-api/src/main/resources/cube-0.1.xsd 060eb43 
>   lens-cli/src/main/java/org/apache/lens/cli/commands/LensSchemaCommands.java feabf9c 
>   lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java b2568ff 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeFactTable.java 896a7a1 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeMetastoreClient.java 087c203 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/DateUtil.java 7717081 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java 1694b80 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/JAXBUtils.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/TimeRange.java bf6cc5c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AbridgedTimeRangeWriter.java 8681e90 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java 9658100 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/BetweenTimeRangeWriter.java c8b8129 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/Candidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateDim.java 4dcdbcf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateFact.java b42262d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java e001ca4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java bd6e27c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java e9270ea 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateUtil.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CheckTableNames.java 8586262 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnLifetimeChecker.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnResolver.java 87e094a 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryContext.java 125b432 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryRewriter.java b612173 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeSemanticAnalyzer.java fc96055 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultAliasDecider.java 80ceae4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultQueryAST.java c9993f3 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DenormalizationResolver.java cb26878 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java 0ea0b1c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/FieldValidator.java 48af0c9 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/GroupbyResolver.java 216ae52 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinResolver.java 7b865bf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LeastPartitionResolver.java a53e994 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LightestFactResolver.java 97accbb 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MaxCoveringFactResolver.java 45824fe 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MultiFactHQLContext.java 979c24b 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/PruneCauses.java 9b5a52f 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueriedPhraseContext.java 34a562d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueryAST.java 7298604 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SimpleHQLContext.java 62ceb12 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactMultiStorageHQLContext.java 9b48213 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactSingleStorageHQLContext.java dbc84ed 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java cdf6812 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageUtil.java f9636d1 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRangeChecker.java f18ae36 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionHQLContext.java e6ee989 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionQueryWriter.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/AutoJoinContext.java 3d5c5ac 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/BridgeTableJoinContext.java cf74634 
>   lens-cube/src/main/java/org/apache/lens/driver/cube/RewriterPlan.java fd6c30d 
>   lens-cube/src/test/java/org/apache/lens/cube/metadata/DateFactory.java 3bdc047 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/CubeTestSetup.java 9b29083 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/FieldsCannotBeQueriedTogetherTest.java 1a5bd0d 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestAggregateResolver.java dd0b6dc 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java dbb8fa3 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java 450605b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java 2f00244 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java 98b021b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java 5505ed4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestExpressionResolver.java 5d4e87f 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestJoinResolver.java 677d641 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestQueryMetrics.java 27a18f4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestRewriterPlan.java 7f26b24 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java 280a8c4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeWriterWithQuery.java 7010849 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java PRE-CREATION 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionQueries.java d5bc81c 
>   lens-cube/src/test/resources/schema/cubes/base/basecube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/base/testcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/derivedcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/union_join_ctx_der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/citydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/countrydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/daydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/hourdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/sports.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/statedim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/unreachabledim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/user_interests.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/userdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/zipdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim1tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/daydimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/hourdimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/sports_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim3tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim4tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/unreachabledimtable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/user_interests_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/usertable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/ziptable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/cheapfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact4_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact6_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_continuous.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_deprecated.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfactmonthly.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact6.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/segmentations/seg1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c0.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c99.xml PRE-CREATION 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/ColumnarSQLRewriter.java 75153f6 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/DruidSQLRewriter.java 2351fb3 
>   lens-server/src/main/java/org/apache/lens/server/metastore/CubeMetastoreServiceImpl.java 24660e1 
>   lens-server/src/main/java/org/apache/lens/server/metastore/JAXBUtils.java 7d54c7b 
>   lens-server/src/main/java/org/apache/lens/server/metastore/MetastoreResource.java 9d823da 
>   lens-server/src/test/java/org/apache/lens/server/common/RestAPITestUtil.java 02e2f8b 
>   lens-server/src/test/java/org/apache/lens/server/common/TestDataUtils.java 0400519 
>   lens-server/src/test/java/org/apache/lens/server/query/QueryAPIErrorResponseTest.java 567c929 
> 
> 
> Diff: https://reviews.apache.org/r/58102/diff/2/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Sushil Mohanty
> 
>


Re: Review Request 58102: LENS-1381 : Support Fact to Fact Union

Posted by Amareshwari Sriramadasu <am...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/58102/#review171090
-----------------------------------------------------------




lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java
Line 31 (original), 43 (patched)
<https://reviews.apache.org/r/58102/#comment243959>

    Why is the error message no more coming from briefCause ?



lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeMetastoreClient.java
Line 352 (original), 425 (patched)
<https://reviews.apache.org/r/58102/#comment243960>

    Wrong update to the comment



lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java
Lines 83 (patched)
<https://reviews.apache.org/r/58102/#comment243961>

    Can we avoid throwing direct LensException like this?



lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java
Line 43 (original), 43 (patched)
<https://reviews.apache.org/r/58102/#comment243962>

    Since it is no more Set of storage tables, should the method be getStorageTable() ?


- Amareshwari Sriramadasu


On April 5, 2017, 5:38 a.m., Sushil Mohanty wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/58102/
> -----------------------------------------------------------
> 
> (Updated April 5, 2017, 5:38 a.m.)
> 
> 
> Review request for lens.
> 
> 
> Bugs: LENS-1381
>     https://issues.apache.org/jira/browse/LENS-1381
> 
> 
> Repository: lens
> 
> 
> Description
> -------
> 
> This is a neew feature to support union across multiple facts.
> 
> 
> Diffs
> -----
> 
>   lens-api/src/main/java/org/apache/lens/api/ToXMLString.java e74adc9 
>   lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 14fc4aa 
>   lens-api/src/main/java/org/apache/lens/api/metastore/SchemaTraverser.java PRE-CREATION 
>   lens-api/src/main/resources/cube-0.1.xsd 060eb43 
>   lens-cli/src/main/java/org/apache/lens/cli/commands/LensSchemaCommands.java feabf9c 
>   lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java b2568ff 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeFactTable.java 896a7a1 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeMetastoreClient.java 087c203 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/DateUtil.java 7717081 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java 1694b80 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/JAXBUtils.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/TimeRange.java bf6cc5c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AbridgedTimeRangeWriter.java 8681e90 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java 9658100 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/BetweenTimeRangeWriter.java c8b8129 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/Candidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateDim.java 4dcdbcf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateFact.java b42262d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java e001ca4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java bd6e27c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java e9270ea 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateUtil.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CheckTableNames.java 8586262 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnLifetimeChecker.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnResolver.java 87e094a 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryContext.java 125b432 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryRewriter.java b612173 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeSemanticAnalyzer.java fc96055 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultAliasDecider.java 80ceae4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultQueryAST.java c9993f3 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DenormalizationResolver.java cb26878 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java 0ea0b1c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/FieldValidator.java 48af0c9 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/GroupbyResolver.java 216ae52 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinResolver.java 7b865bf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LeastPartitionResolver.java a53e994 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LightestFactResolver.java 97accbb 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MaxCoveringFactResolver.java 45824fe 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MultiFactHQLContext.java 979c24b 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/PruneCauses.java 9b5a52f 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueriedPhraseContext.java 34a562d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueryAST.java 7298604 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SimpleHQLContext.java 62ceb12 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactMultiStorageHQLContext.java 9b48213 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactSingleStorageHQLContext.java dbc84ed 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java cdf6812 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageUtil.java f9636d1 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRangeChecker.java f18ae36 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionHQLContext.java e6ee989 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionQueryWriter.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/AutoJoinContext.java 3d5c5ac 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/BridgeTableJoinContext.java cf74634 
>   lens-cube/src/main/java/org/apache/lens/driver/cube/RewriterPlan.java fd6c30d 
>   lens-cube/src/test/java/org/apache/lens/cube/metadata/DateFactory.java 3bdc047 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/CubeTestSetup.java 9b29083 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/FieldsCannotBeQueriedTogetherTest.java 1a5bd0d 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestAggregateResolver.java dd0b6dc 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java dbb8fa3 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java 450605b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java 2f00244 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java 98b021b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java 5505ed4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestExpressionResolver.java 5d4e87f 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestJoinResolver.java 677d641 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestQueryMetrics.java 27a18f4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestRewriterPlan.java 7f26b24 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java 280a8c4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeWriterWithQuery.java 7010849 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java PRE-CREATION 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionQueries.java d5bc81c 
>   lens-cube/src/test/resources/schema/cubes/base/basecube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/base/testcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/derivedcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/union_join_ctx_der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/citydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/countrydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/daydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/hourdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/sports.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/statedim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/unreachabledim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/user_interests.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/userdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/zipdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim1tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/daydimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/hourdimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/sports_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim3tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim4tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/unreachabledimtable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/user_interests_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/usertable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/ziptable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/cheapfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact4_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact6_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_continuous.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_deprecated.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfactmonthly.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact6.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/segmentations/seg1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c0.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c99.xml PRE-CREATION 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/ColumnarSQLRewriter.java 75153f6 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/DruidSQLRewriter.java 2351fb3 
>   lens-server/src/main/java/org/apache/lens/server/metastore/CubeMetastoreServiceImpl.java 24660e1 
>   lens-server/src/main/java/org/apache/lens/server/metastore/JAXBUtils.java 7d54c7b 
>   lens-server/src/main/java/org/apache/lens/server/metastore/MetastoreResource.java 9d823da 
>   lens-server/src/test/java/org/apache/lens/server/common/RestAPITestUtil.java 02e2f8b 
>   lens-server/src/test/java/org/apache/lens/server/common/TestDataUtils.java 0400519 
>   lens-server/src/test/java/org/apache/lens/server/query/QueryAPIErrorResponseTest.java 567c929 
> 
> 
> Diff: https://reviews.apache.org/r/58102/diff/2/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Sushil Mohanty
> 
>


Re: Review Request 58102: LENS-1381 : Support Fact to Fact Union

Posted by Amareshwari Sriramadasu <am...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/58102/#review171099
-----------------------------------------------------------




lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java
Line 56 (original), 51 (patched)
<https://reviews.apache.org/r/58102/#comment243982>

    It should still fail early, but not with NoCandidateFactAvailableException



lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java
Line 67 (original), 77 (patched)
<https://reviews.apache.org/r/58102/#comment243984>

    Comment seems to be worngly updated



lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java
Line 68 (original), 78 (patched)
<https://reviews.apache.org/r/58102/#comment243983>

    Seems wrong message associated with INVALID_DENORM_TABLE



lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java
Line 268 (original), 266 (patched)
<https://reviews.apache.org/r/58102/#comment243985>

    If storageTables are passed here, constructing tableName again looks worng. Needs change.



lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java
Line 273 (original), 271 (patched)
<https://reviews.apache.org/r/58102/#comment243986>

    Same as above. Need to pass storageNames?



lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java
Line 480 (original), 478 (patched)
<https://reviews.apache.org/r/58102/#comment243987>

    Please check if it is storageName vs storageTable to be passed.



lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java
Line 971 (original), 969 (patched)
<https://reviews.apache.org/r/58102/#comment243988>

    Should pass storageName only.



lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java
Line 980 (original), 978 (patched)
<https://reviews.apache.org/r/58102/#comment243989>

    Should pass storageName only.



lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java
Line 1011 (original), 1009 (patched)
<https://reviews.apache.org/r/58102/#comment243990>

    Should pass storageName only



lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java
Line 274 (original), 274 (patched)
<https://reviews.apache.org/r/58102/#comment243991>

    Please check if it needs storageName or storageTable.



lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java
Line 286 (original), 286 (patched)
<https://reviews.apache.org/r/58102/#comment243992>

    Should be storageNames



lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java
Lines 335-340 (original), 335-340 (patched)
<https://reviews.apache.org/r/58102/#comment243993>

    Check if it needs to be storageName or storageTable.


- Amareshwari Sriramadasu


On April 5, 2017, 5:38 a.m., Sushil Mohanty wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/58102/
> -----------------------------------------------------------
> 
> (Updated April 5, 2017, 5:38 a.m.)
> 
> 
> Review request for lens.
> 
> 
> Bugs: LENS-1381
>     https://issues.apache.org/jira/browse/LENS-1381
> 
> 
> Repository: lens
> 
> 
> Description
> -------
> 
> This is a neew feature to support union across multiple facts.
> 
> 
> Diffs
> -----
> 
>   lens-api/src/main/java/org/apache/lens/api/ToXMLString.java e74adc9 
>   lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 14fc4aa 
>   lens-api/src/main/java/org/apache/lens/api/metastore/SchemaTraverser.java PRE-CREATION 
>   lens-api/src/main/resources/cube-0.1.xsd 060eb43 
>   lens-cli/src/main/java/org/apache/lens/cli/commands/LensSchemaCommands.java feabf9c 
>   lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java b2568ff 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeFactTable.java 896a7a1 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeMetastoreClient.java 087c203 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/DateUtil.java 7717081 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java 1694b80 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/JAXBUtils.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/TimeRange.java bf6cc5c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AbridgedTimeRangeWriter.java 8681e90 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java 9658100 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/BetweenTimeRangeWriter.java c8b8129 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/Candidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateDim.java 4dcdbcf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateFact.java b42262d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java e001ca4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java bd6e27c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java e9270ea 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateUtil.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CheckTableNames.java 8586262 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnLifetimeChecker.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnResolver.java 87e094a 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryContext.java 125b432 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryRewriter.java b612173 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeSemanticAnalyzer.java fc96055 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultAliasDecider.java 80ceae4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultQueryAST.java c9993f3 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DenormalizationResolver.java cb26878 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java 0ea0b1c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/FieldValidator.java 48af0c9 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/GroupbyResolver.java 216ae52 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinResolver.java 7b865bf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LeastPartitionResolver.java a53e994 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LightestFactResolver.java 97accbb 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MaxCoveringFactResolver.java 45824fe 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MultiFactHQLContext.java 979c24b 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/PruneCauses.java 9b5a52f 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueriedPhraseContext.java 34a562d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueryAST.java 7298604 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SimpleHQLContext.java 62ceb12 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactMultiStorageHQLContext.java 9b48213 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactSingleStorageHQLContext.java dbc84ed 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java cdf6812 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageUtil.java f9636d1 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRangeChecker.java f18ae36 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionHQLContext.java e6ee989 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionQueryWriter.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/AutoJoinContext.java 3d5c5ac 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/BridgeTableJoinContext.java cf74634 
>   lens-cube/src/main/java/org/apache/lens/driver/cube/RewriterPlan.java fd6c30d 
>   lens-cube/src/test/java/org/apache/lens/cube/metadata/DateFactory.java 3bdc047 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/CubeTestSetup.java 9b29083 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/FieldsCannotBeQueriedTogetherTest.java 1a5bd0d 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestAggregateResolver.java dd0b6dc 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java dbb8fa3 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java 450605b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java 2f00244 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java 98b021b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java 5505ed4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestExpressionResolver.java 5d4e87f 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestJoinResolver.java 677d641 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestQueryMetrics.java 27a18f4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestRewriterPlan.java 7f26b24 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java 280a8c4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeWriterWithQuery.java 7010849 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java PRE-CREATION 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionQueries.java d5bc81c 
>   lens-cube/src/test/resources/schema/cubes/base/basecube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/base/testcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/derivedcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/union_join_ctx_der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/citydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/countrydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/daydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/hourdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/sports.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/statedim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/unreachabledim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/user_interests.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/userdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/zipdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim1tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/daydimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/hourdimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/sports_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim3tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim4tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/unreachabledimtable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/user_interests_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/usertable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/ziptable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/cheapfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact4_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact6_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_continuous.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_deprecated.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfactmonthly.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact6.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/segmentations/seg1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c0.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c99.xml PRE-CREATION 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/ColumnarSQLRewriter.java 75153f6 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/DruidSQLRewriter.java 2351fb3 
>   lens-server/src/main/java/org/apache/lens/server/metastore/CubeMetastoreServiceImpl.java 24660e1 
>   lens-server/src/main/java/org/apache/lens/server/metastore/JAXBUtils.java 7d54c7b 
>   lens-server/src/main/java/org/apache/lens/server/metastore/MetastoreResource.java 9d823da 
>   lens-server/src/test/java/org/apache/lens/server/common/RestAPITestUtil.java 02e2f8b 
>   lens-server/src/test/java/org/apache/lens/server/common/TestDataUtils.java 0400519 
>   lens-server/src/test/java/org/apache/lens/server/query/QueryAPIErrorResponseTest.java 567c929 
> 
> 
> Diff: https://reviews.apache.org/r/58102/diff/2/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Sushil Mohanty
> 
>


Re: Review Request 58102: LENS-1381 : Support Fact to Fact Union

Posted by Sushil Mohanty <su...@gmail.com>.

> On April 5, 2017, 6:46 a.m., Amareshwari Sriramadasu wrote:
> > lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java
> > Line 325 (original), 314 (patched)
> > <https://reviews.apache.org/r/58102/diff/2/?file=1684820#file1684820line337>
> >
> >     Can we avoid such exceptions? it will result in 500 errors to users.

Instead doing assert.


- Sushil


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/58102/#review171091
-----------------------------------------------------------


On April 5, 2017, 5:38 a.m., Sushil Mohanty wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/58102/
> -----------------------------------------------------------
> 
> (Updated April 5, 2017, 5:38 a.m.)
> 
> 
> Review request for lens.
> 
> 
> Bugs: LENS-1381
>     https://issues.apache.org/jira/browse/LENS-1381
> 
> 
> Repository: lens
> 
> 
> Description
> -------
> 
> This is a neew feature to support union across multiple facts.
> 
> 
> Diffs
> -----
> 
>   lens-api/src/main/java/org/apache/lens/api/ToXMLString.java e74adc9 
>   lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 14fc4aa 
>   lens-api/src/main/java/org/apache/lens/api/metastore/SchemaTraverser.java PRE-CREATION 
>   lens-api/src/main/resources/cube-0.1.xsd 060eb43 
>   lens-cli/src/main/java/org/apache/lens/cli/commands/LensSchemaCommands.java feabf9c 
>   lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java b2568ff 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeFactTable.java 896a7a1 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeMetastoreClient.java 087c203 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/DateUtil.java 7717081 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java 1694b80 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/JAXBUtils.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/TimeRange.java bf6cc5c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AbridgedTimeRangeWriter.java 8681e90 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java 9658100 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/BetweenTimeRangeWriter.java c8b8129 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/Candidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateDim.java 4dcdbcf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateFact.java b42262d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java e001ca4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java bd6e27c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java e9270ea 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateUtil.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CheckTableNames.java 8586262 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnLifetimeChecker.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnResolver.java 87e094a 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryContext.java 125b432 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryRewriter.java b612173 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeSemanticAnalyzer.java fc96055 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultAliasDecider.java 80ceae4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultQueryAST.java c9993f3 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DenormalizationResolver.java cb26878 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java 0ea0b1c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/FieldValidator.java 48af0c9 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/GroupbyResolver.java 216ae52 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinResolver.java 7b865bf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LeastPartitionResolver.java a53e994 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LightestFactResolver.java 97accbb 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MaxCoveringFactResolver.java 45824fe 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MultiFactHQLContext.java 979c24b 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/PruneCauses.java 9b5a52f 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueriedPhraseContext.java 34a562d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueryAST.java 7298604 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SimpleHQLContext.java 62ceb12 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactMultiStorageHQLContext.java 9b48213 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactSingleStorageHQLContext.java dbc84ed 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java cdf6812 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageUtil.java f9636d1 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRangeChecker.java f18ae36 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionHQLContext.java e6ee989 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionQueryWriter.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/AutoJoinContext.java 3d5c5ac 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/BridgeTableJoinContext.java cf74634 
>   lens-cube/src/main/java/org/apache/lens/driver/cube/RewriterPlan.java fd6c30d 
>   lens-cube/src/test/java/org/apache/lens/cube/metadata/DateFactory.java 3bdc047 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/CubeTestSetup.java 9b29083 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/FieldsCannotBeQueriedTogetherTest.java 1a5bd0d 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestAggregateResolver.java dd0b6dc 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java dbb8fa3 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java 450605b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java 2f00244 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java 98b021b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java 5505ed4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestExpressionResolver.java 5d4e87f 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestJoinResolver.java 677d641 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestQueryMetrics.java 27a18f4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestRewriterPlan.java 7f26b24 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java 280a8c4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeWriterWithQuery.java 7010849 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java PRE-CREATION 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionQueries.java d5bc81c 
>   lens-cube/src/test/resources/schema/cubes/base/basecube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/base/testcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/derivedcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/union_join_ctx_der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/citydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/countrydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/daydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/hourdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/sports.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/statedim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/unreachabledim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/user_interests.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/userdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/zipdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim1tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/daydimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/hourdimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/sports_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim3tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim4tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/unreachabledimtable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/user_interests_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/usertable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/ziptable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/cheapfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact4_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact6_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_continuous.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_deprecated.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfactmonthly.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact6.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/segmentations/seg1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c0.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c99.xml PRE-CREATION 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/ColumnarSQLRewriter.java 75153f6 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/DruidSQLRewriter.java 2351fb3 
>   lens-server/src/main/java/org/apache/lens/server/metastore/CubeMetastoreServiceImpl.java 24660e1 
>   lens-server/src/main/java/org/apache/lens/server/metastore/JAXBUtils.java 7d54c7b 
>   lens-server/src/main/java/org/apache/lens/server/metastore/MetastoreResource.java 9d823da 
>   lens-server/src/test/java/org/apache/lens/server/common/RestAPITestUtil.java 02e2f8b 
>   lens-server/src/test/java/org/apache/lens/server/common/TestDataUtils.java 0400519 
>   lens-server/src/test/java/org/apache/lens/server/query/QueryAPIErrorResponseTest.java 567c929 
> 
> 
> Diff: https://reviews.apache.org/r/58102/diff/2/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Sushil Mohanty
> 
>


Re: Review Request 58102: LENS-1381 : Support Fact to Fact Union

Posted by Amareshwari Sriramadasu <am...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/58102/#review171091
-----------------------------------------------------------




lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java
Line 47 (original), 51 (patched)
<https://reviews.apache.org/r/58102/#comment243963>

    This should be after MORE_PARTITIONS.



lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java
Line 325 (original), 314 (patched)
<https://reviews.apache.org/r/58102/#comment243978>

    Can we avoid such exceptions? it will result in 500 errors to users.


- Amareshwari Sriramadasu


On April 5, 2017, 5:38 a.m., Sushil Mohanty wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/58102/
> -----------------------------------------------------------
> 
> (Updated April 5, 2017, 5:38 a.m.)
> 
> 
> Review request for lens.
> 
> 
> Bugs: LENS-1381
>     https://issues.apache.org/jira/browse/LENS-1381
> 
> 
> Repository: lens
> 
> 
> Description
> -------
> 
> This is a neew feature to support union across multiple facts.
> 
> 
> Diffs
> -----
> 
>   lens-api/src/main/java/org/apache/lens/api/ToXMLString.java e74adc9 
>   lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 14fc4aa 
>   lens-api/src/main/java/org/apache/lens/api/metastore/SchemaTraverser.java PRE-CREATION 
>   lens-api/src/main/resources/cube-0.1.xsd 060eb43 
>   lens-cli/src/main/java/org/apache/lens/cli/commands/LensSchemaCommands.java feabf9c 
>   lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java b2568ff 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeFactTable.java 896a7a1 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeMetastoreClient.java 087c203 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/DateUtil.java 7717081 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java 1694b80 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/JAXBUtils.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/TimeRange.java bf6cc5c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AbridgedTimeRangeWriter.java 8681e90 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java 9658100 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/BetweenTimeRangeWriter.java c8b8129 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/Candidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateDim.java 4dcdbcf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateFact.java b42262d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java e001ca4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java bd6e27c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java e9270ea 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateUtil.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CheckTableNames.java 8586262 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnLifetimeChecker.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnResolver.java 87e094a 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryContext.java 125b432 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryRewriter.java b612173 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeSemanticAnalyzer.java fc96055 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultAliasDecider.java 80ceae4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultQueryAST.java c9993f3 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DenormalizationResolver.java cb26878 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java 0ea0b1c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/FieldValidator.java 48af0c9 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/GroupbyResolver.java 216ae52 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinResolver.java 7b865bf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LeastPartitionResolver.java a53e994 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LightestFactResolver.java 97accbb 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MaxCoveringFactResolver.java 45824fe 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MultiFactHQLContext.java 979c24b 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/PruneCauses.java 9b5a52f 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueriedPhraseContext.java 34a562d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueryAST.java 7298604 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SimpleHQLContext.java 62ceb12 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactMultiStorageHQLContext.java 9b48213 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactSingleStorageHQLContext.java dbc84ed 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java cdf6812 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageUtil.java f9636d1 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRangeChecker.java f18ae36 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionHQLContext.java e6ee989 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionQueryWriter.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/AutoJoinContext.java 3d5c5ac 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/BridgeTableJoinContext.java cf74634 
>   lens-cube/src/main/java/org/apache/lens/driver/cube/RewriterPlan.java fd6c30d 
>   lens-cube/src/test/java/org/apache/lens/cube/metadata/DateFactory.java 3bdc047 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/CubeTestSetup.java 9b29083 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/FieldsCannotBeQueriedTogetherTest.java 1a5bd0d 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestAggregateResolver.java dd0b6dc 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java dbb8fa3 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java 450605b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java 2f00244 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java 98b021b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java 5505ed4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestExpressionResolver.java 5d4e87f 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestJoinResolver.java 677d641 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestQueryMetrics.java 27a18f4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestRewriterPlan.java 7f26b24 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java 280a8c4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeWriterWithQuery.java 7010849 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java PRE-CREATION 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionQueries.java d5bc81c 
>   lens-cube/src/test/resources/schema/cubes/base/basecube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/base/testcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/derivedcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/union_join_ctx_der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/citydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/countrydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/daydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/hourdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/sports.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/statedim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/unreachabledim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/user_interests.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/userdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/zipdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim1tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/daydimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/hourdimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/sports_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim3tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim4tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/unreachabledimtable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/user_interests_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/usertable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/ziptable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/cheapfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact4_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact6_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_continuous.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_deprecated.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfactmonthly.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact6.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/segmentations/seg1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c0.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c99.xml PRE-CREATION 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/ColumnarSQLRewriter.java 75153f6 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/DruidSQLRewriter.java 2351fb3 
>   lens-server/src/main/java/org/apache/lens/server/metastore/CubeMetastoreServiceImpl.java 24660e1 
>   lens-server/src/main/java/org/apache/lens/server/metastore/JAXBUtils.java 7d54c7b 
>   lens-server/src/main/java/org/apache/lens/server/metastore/MetastoreResource.java 9d823da 
>   lens-server/src/test/java/org/apache/lens/server/common/RestAPITestUtil.java 02e2f8b 
>   lens-server/src/test/java/org/apache/lens/server/common/TestDataUtils.java 0400519 
>   lens-server/src/test/java/org/apache/lens/server/query/QueryAPIErrorResponseTest.java 567c929 
> 
> 
> Diff: https://reviews.apache.org/r/58102/diff/2/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Sushil Mohanty
> 
>


Re: Review Request 58102: LENS-1381 : Support Fact to Fact Union

Posted by Sushil Mohanty <su...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/58102/
-----------------------------------------------------------

(Updated April 12, 2017, 12:10 p.m.)


Review request for lens.


Changes
-------

- Fixed all checkstyle issue.
- Fixed failing lens-examples test cases


Bugs: LENS-1381
    https://issues.apache.org/jira/browse/LENS-1381


Repository: lens


Description
-------

This is a neew feature to support union across multiple facts.


Diffs (updated)
-----

  lens-api/src/main/java/org/apache/lens/api/ToXMLString.java e74adc9 
  lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 14fc4aa 
  lens-api/src/main/java/org/apache/lens/api/metastore/SchemaTraverser.java PRE-CREATION 
  lens-api/src/main/resources/cube-0.1.xsd 060eb43 
  lens-api/src/main/resources/lens-errors.conf 29e24cf 
  lens-cli/src/main/java/org/apache/lens/cli/commands/LensSchemaCommands.java feabf9c 
  lens-cube/src/main/java/org/apache/lens/cube/error/LensCubeErrorCode.java 571b481 
  lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java b2568ff 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeFactTable.java 896a7a1 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeMetastoreClient.java 087c203 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/DateUtil.java 7717081 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java 1694b80 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/JAXBUtils.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/MetastoreUtil.java 4e350c8 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/TimeRange.java bf6cc5c 
  lens-cube/src/main/java/org/apache/lens/cube/parse/AbridgedTimeRangeWriter.java 8681e90 
  lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java 9658100 
  lens-cube/src/main/java/org/apache/lens/cube/parse/BetweenTimeRangeWriter.java c8b8129 
  lens-cube/src/main/java/org/apache/lens/cube/parse/Candidate.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateDim.java 4dcdbcf 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateFact.java b42262d 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java e001ca4 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java bd6e27c 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java ed37bc5 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateUtil.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CheckTableNames.java 8586262 
  lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnLifetimeChecker.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnResolver.java 4d8910a 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryContext.java 125b432 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryRewriter.java ea2eb7e 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CubeSemanticAnalyzer.java fc96055 
  lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultAliasDecider.java 80ceae4 
  lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultQueryAST.java c9993f3 
  lens-cube/src/main/java/org/apache/lens/cube/parse/DenormalizationResolver.java cb26878 
  lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java c99fdf1 
  lens-cube/src/main/java/org/apache/lens/cube/parse/FieldValidator.java 48af0c9 
  lens-cube/src/main/java/org/apache/lens/cube/parse/GroupbyResolver.java 052b87a 
  lens-cube/src/main/java/org/apache/lens/cube/parse/JoinCandidate.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/JoinResolver.java fce1662 
  lens-cube/src/main/java/org/apache/lens/cube/parse/LeastPartitionResolver.java 0bc7f82 
  lens-cube/src/main/java/org/apache/lens/cube/parse/LightestFactResolver.java 4356401 
  lens-cube/src/main/java/org/apache/lens/cube/parse/MaxCoveringFactResolver.java 2822857 
  lens-cube/src/main/java/org/apache/lens/cube/parse/MultiFactHQLContext.java 979c24b 
  lens-cube/src/main/java/org/apache/lens/cube/parse/PruneCauses.java 9b5a52f 
  lens-cube/src/main/java/org/apache/lens/cube/parse/QueriedPhraseContext.java 34a562d 
  lens-cube/src/main/java/org/apache/lens/cube/parse/QueryAST.java 7298604 
  lens-cube/src/main/java/org/apache/lens/cube/parse/SimpleHQLContext.java 62ceb12 
  lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactMultiStorageHQLContext.java 9b48213 
  lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactSingleStorageHQLContext.java dbc84ed 
  lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java 2b63193 
  lens-cube/src/main/java/org/apache/lens/cube/parse/StorageUtil.java f9636d1 
  lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRangeChecker.java f18ae36 
  lens-cube/src/main/java/org/apache/lens/cube/parse/UnionCandidate.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/UnionHQLContext.java e6ee989 
  lens-cube/src/main/java/org/apache/lens/cube/parse/UnionQueryWriter.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/join/AutoJoinContext.java 3d5c5ac 
  lens-cube/src/main/java/org/apache/lens/cube/parse/join/BridgeTableJoinContext.java cf74634 
  lens-cube/src/main/java/org/apache/lens/driver/cube/RewriterPlan.java fd6c30d 
  lens-cube/src/test/java/org/apache/lens/cube/metadata/DateFactory.java 3bdc047 
  lens-cube/src/test/java/org/apache/lens/cube/parse/CubeTestSetup.java 9b29083 
  lens-cube/src/test/java/org/apache/lens/cube/parse/FieldsCannotBeQueriedTogetherTest.java 1a5bd0d 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestAggregateResolver.java dd0b6dc 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java dbb8fa3 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java cabb95e 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java 2f00244 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java 7e06a5c 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java 5505ed4 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestExpressionResolver.java 5d4e87f 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestJoinResolver.java 677d641 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestQueryMetrics.java 27a18f4 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestRewriterPlan.java 7f26b24 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java 280a8c4 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeWriterWithQuery.java 7010849 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java PRE-CREATION 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionQueries.java d5bc81c 
  lens-cube/src/test/resources/schema/cubes/base/basecube.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/cubes/base/testcube.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/cubes/derived/der1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/cubes/derived/der2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/cubes/derived/der3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/cubes/derived/derivedcube.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/cubes/derived/union_join_ctx_der1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/citydim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/countrydim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/cycledim1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/cycledim2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/daydim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/hourdim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/sports.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/statedim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/testdim2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/testdim3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/testdim4.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/unreachabledim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/user_interests.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/userdim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/zipdim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/citytable.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/citytable2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/citytable3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/citytable4.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/countrytable.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/countrytable_partitioned.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/cycledim1tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/cycledim2tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/daydimtbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/hourdimtbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/sports_tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/statetable.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/statetable_partitioned.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/testdim2tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/testdim2tbl2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/testdim2tbl3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/testdim3tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/testdim4tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/unreachabledimtable.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/user_interests_tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/usertable.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/ziptable.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/cheapfact.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/summary1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/summary2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/summary3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/summary4.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact1_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact1_raw_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact2_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact2_raw.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact2_raw_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact3_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact3_raw_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact4_raw_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact5_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact5_raw_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact6_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact_continuous.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact_deprecated.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfactmonthly.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/union_join_ctx_fact1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/union_join_ctx_fact2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/union_join_ctx_fact3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/union_join_ctx_fact5.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/union_join_ctx_fact6.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/segmentations/seg1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c0.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c4.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c5.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c99.xml PRE-CREATION 
  lens-server/src/main/java/org/apache/lens/server/metastore/CubeMetastoreServiceImpl.java 24660e1 
  lens-server/src/main/java/org/apache/lens/server/metastore/JAXBUtils.java 7d54c7b 
  lens-server/src/main/java/org/apache/lens/server/metastore/MetastoreResource.java 9d823da 
  lens-server/src/test/java/org/apache/lens/server/common/RestAPITestUtil.java 02e2f8b 
  lens-server/src/test/java/org/apache/lens/server/common/TestDataUtils.java 0400519 
  lens-server/src/test/java/org/apache/lens/server/query/QueryAPIErrorResponseTest.java 567c929 


Diff: https://reviews.apache.org/r/58102/diff/5/

Changes: https://reviews.apache.org/r/58102/diff/4-5/


Testing
-------


Thanks,

Sushil Mohanty


Re: Review Request 58102: LENS-1381 : Support Fact to Fact Union

Posted by Sushil Mohanty <su...@gmail.com>.

> On April 12, 2017, 10:54 a.m., Amareshwari Sriramadasu wrote:
> > lens-examples/src/test/resources/yaml/sales-aggr-fact2.yaml
> > Line 30 (original), 30 (patched)
> > <https://reviews.apache.org/r/58102/diff/4/?file=1689833#file1689833line30>
> >
> >     Change looks wrong to me. Might fail tests

fixed.


- Sushil


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/58102/#review171704
-----------------------------------------------------------


On April 12, 2017, 12:10 p.m., Sushil Mohanty wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/58102/
> -----------------------------------------------------------
> 
> (Updated April 12, 2017, 12:10 p.m.)
> 
> 
> Review request for lens.
> 
> 
> Bugs: LENS-1381
>     https://issues.apache.org/jira/browse/LENS-1381
> 
> 
> Repository: lens
> 
> 
> Description
> -------
> 
> This is a neew feature to support union across multiple facts.
> 
> 
> Diffs
> -----
> 
>   lens-api/src/main/java/org/apache/lens/api/ToXMLString.java e74adc9 
>   lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 14fc4aa 
>   lens-api/src/main/java/org/apache/lens/api/metastore/SchemaTraverser.java PRE-CREATION 
>   lens-api/src/main/resources/cube-0.1.xsd 060eb43 
>   lens-api/src/main/resources/lens-errors.conf 29e24cf 
>   lens-cli/src/main/java/org/apache/lens/cli/commands/LensSchemaCommands.java feabf9c 
>   lens-cube/src/main/java/org/apache/lens/cube/error/LensCubeErrorCode.java 571b481 
>   lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java b2568ff 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeFactTable.java 896a7a1 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeMetastoreClient.java 087c203 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/DateUtil.java 7717081 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java 1694b80 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/JAXBUtils.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/MetastoreUtil.java 4e350c8 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/TimeRange.java bf6cc5c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AbridgedTimeRangeWriter.java 8681e90 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java 9658100 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/BetweenTimeRangeWriter.java c8b8129 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/Candidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateDim.java 4dcdbcf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateFact.java b42262d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java e001ca4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java bd6e27c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java ed37bc5 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateUtil.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CheckTableNames.java 8586262 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnLifetimeChecker.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnResolver.java 4d8910a 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryContext.java 125b432 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryRewriter.java ea2eb7e 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeSemanticAnalyzer.java fc96055 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultAliasDecider.java 80ceae4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultQueryAST.java c9993f3 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DenormalizationResolver.java cb26878 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java c99fdf1 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/FieldValidator.java 48af0c9 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/GroupbyResolver.java 052b87a 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinResolver.java fce1662 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LeastPartitionResolver.java 0bc7f82 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LightestFactResolver.java 4356401 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MaxCoveringFactResolver.java 2822857 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MultiFactHQLContext.java 979c24b 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/PruneCauses.java 9b5a52f 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueriedPhraseContext.java 34a562d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueryAST.java 7298604 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SimpleHQLContext.java 62ceb12 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactMultiStorageHQLContext.java 9b48213 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactSingleStorageHQLContext.java dbc84ed 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java 2b63193 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageUtil.java f9636d1 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRangeChecker.java f18ae36 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionHQLContext.java e6ee989 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionQueryWriter.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/AutoJoinContext.java 3d5c5ac 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/BridgeTableJoinContext.java cf74634 
>   lens-cube/src/main/java/org/apache/lens/driver/cube/RewriterPlan.java fd6c30d 
>   lens-cube/src/test/java/org/apache/lens/cube/metadata/DateFactory.java 3bdc047 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/CubeTestSetup.java 9b29083 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/FieldsCannotBeQueriedTogetherTest.java 1a5bd0d 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestAggregateResolver.java dd0b6dc 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java dbb8fa3 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java cabb95e 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java 2f00244 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java 7e06a5c 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java 5505ed4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestExpressionResolver.java 5d4e87f 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestJoinResolver.java 677d641 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestQueryMetrics.java 27a18f4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestRewriterPlan.java 7f26b24 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java 280a8c4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeWriterWithQuery.java 7010849 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java PRE-CREATION 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionQueries.java d5bc81c 
>   lens-cube/src/test/resources/schema/cubes/base/basecube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/base/testcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/derivedcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/union_join_ctx_der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/citydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/countrydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/daydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/hourdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/sports.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/statedim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/unreachabledim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/user_interests.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/userdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/zipdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim1tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/daydimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/hourdimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/sports_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim3tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim4tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/unreachabledimtable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/user_interests_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/usertable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/ziptable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/cheapfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact4_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact6_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_continuous.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_deprecated.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfactmonthly.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact6.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/segmentations/seg1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c0.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c99.xml PRE-CREATION 
>   lens-server/src/main/java/org/apache/lens/server/metastore/CubeMetastoreServiceImpl.java 24660e1 
>   lens-server/src/main/java/org/apache/lens/server/metastore/JAXBUtils.java 7d54c7b 
>   lens-server/src/main/java/org/apache/lens/server/metastore/MetastoreResource.java 9d823da 
>   lens-server/src/test/java/org/apache/lens/server/common/RestAPITestUtil.java 02e2f8b 
>   lens-server/src/test/java/org/apache/lens/server/common/TestDataUtils.java 0400519 
>   lens-server/src/test/java/org/apache/lens/server/query/QueryAPIErrorResponseTest.java 567c929 
> 
> 
> Diff: https://reviews.apache.org/r/58102/diff/5/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Sushil Mohanty
> 
>


Re: Review Request 58102: LENS-1381 : Support Fact to Fact Union

Posted by Amareshwari Sriramadasu <am...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/58102/#review171704
-----------------------------------------------------------


Fix it, then Ship it!





lens-examples/src/test/resources/yaml/sales-aggr-fact2.yaml
Line 30 (original), 30 (patched)
<https://reviews.apache.org/r/58102/#comment244740>

    Change looks wrong to me. Might fail tests


- Amareshwari Sriramadasu


On April 12, 2017, 7:19 a.m., Sushil Mohanty wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/58102/
> -----------------------------------------------------------
> 
> (Updated April 12, 2017, 7:19 a.m.)
> 
> 
> Review request for lens.
> 
> 
> Bugs: LENS-1381
>     https://issues.apache.org/jira/browse/LENS-1381
> 
> 
> Repository: lens
> 
> 
> Description
> -------
> 
> This is a neew feature to support union across multiple facts.
> 
> 
> Diffs
> -----
> 
>   lens-api/src/main/java/org/apache/lens/api/ToXMLString.java e74adc9 
>   lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 14fc4aa 
>   lens-api/src/main/java/org/apache/lens/api/metastore/SchemaTraverser.java PRE-CREATION 
>   lens-api/src/main/resources/cube-0.1.xsd 060eb43 
>   lens-api/src/main/resources/lens-errors.conf 29e24cf 
>   lens-cli/src/main/java/org/apache/lens/cli/commands/LensSchemaCommands.java feabf9c 
>   lens-cube/src/main/java/org/apache/lens/cube/error/LensCubeErrorCode.java 571b481 
>   lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java b2568ff 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeFactTable.java 896a7a1 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeMetastoreClient.java 087c203 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/DateUtil.java 7717081 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java 1694b80 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/JAXBUtils.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/TimeRange.java bf6cc5c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AbridgedTimeRangeWriter.java 8681e90 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java 9658100 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/BetweenTimeRangeWriter.java c8b8129 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/Candidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateDim.java 4dcdbcf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateFact.java b42262d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java e001ca4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java bd6e27c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java e9270ea 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateUtil.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CheckTableNames.java 8586262 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnLifetimeChecker.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnResolver.java 87e094a 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryContext.java 125b432 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryRewriter.java b612173 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeSemanticAnalyzer.java fc96055 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultAliasDecider.java 80ceae4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultQueryAST.java c9993f3 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DenormalizationResolver.java cb26878 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java 0ea0b1c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/FieldValidator.java 48af0c9 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/GroupbyResolver.java 216ae52 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinResolver.java 7b865bf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LeastPartitionResolver.java a53e994 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LightestFactResolver.java 97accbb 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MaxCoveringFactResolver.java 45824fe 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MultiFactHQLContext.java 979c24b 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/PruneCauses.java 9b5a52f 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueriedPhraseContext.java 34a562d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueryAST.java 7298604 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SimpleHQLContext.java 62ceb12 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactMultiStorageHQLContext.java 9b48213 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactSingleStorageHQLContext.java dbc84ed 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java cdf6812 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageUtil.java f9636d1 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRangeChecker.java f18ae36 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionHQLContext.java e6ee989 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionQueryWriter.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/AutoJoinContext.java 3d5c5ac 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/BridgeTableJoinContext.java cf74634 
>   lens-cube/src/main/java/org/apache/lens/driver/cube/RewriterPlan.java fd6c30d 
>   lens-cube/src/test/java/org/apache/lens/cube/metadata/DateFactory.java 3bdc047 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/CubeTestSetup.java 9b29083 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/FieldsCannotBeQueriedTogetherTest.java 1a5bd0d 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestAggregateResolver.java dd0b6dc 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java dbb8fa3 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java 450605b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java 2f00244 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java 98b021b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java 5505ed4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestExpressionResolver.java 5d4e87f 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestJoinResolver.java 677d641 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestQueryMetrics.java 27a18f4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestRewriterPlan.java 7f26b24 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java 280a8c4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeWriterWithQuery.java 7010849 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java PRE-CREATION 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionQueries.java d5bc81c 
>   lens-cube/src/test/resources/schema/cubes/base/basecube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/base/testcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/derivedcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/union_join_ctx_der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/citydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/countrydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/daydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/hourdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/sports.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/statedim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/unreachabledim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/user_interests.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/userdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/zipdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim1tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/daydimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/hourdimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/sports_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim3tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim4tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/unreachabledimtable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/user_interests_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/usertable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/ziptable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/cheapfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact4_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact6_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_continuous.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_deprecated.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfactmonthly.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact6.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/segmentations/seg1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c0.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c99.xml PRE-CREATION 
>   lens-examples/src/test/resources/yaml/city_subset.yaml cd5c8ad 
>   lens-examples/src/test/resources/yaml/city_table.yaml 92ce3ec 
>   lens-examples/src/test/resources/yaml/customer_table.yaml 4209bea 
>   lens-examples/src/test/resources/yaml/dim_table.yaml 37b50da 
>   lens-examples/src/test/resources/yaml/dim_table2.yaml 619625c 
>   lens-examples/src/test/resources/yaml/dim_table3.yaml 74cd367 
>   lens-examples/src/test/resources/yaml/dim_table4.yaml 03b2809 
>   lens-examples/src/test/resources/yaml/fact1.yaml 9c1c527 
>   lens-examples/src/test/resources/yaml/fact2.yaml 6fadd11 
>   lens-examples/src/test/resources/yaml/product_db_table.yaml 6b9461a 
>   lens-examples/src/test/resources/yaml/product_table.yaml 637db62 
>   lens-examples/src/test/resources/yaml/rawfact.yaml f7b2d55 
>   lens-examples/src/test/resources/yaml/sales-aggr-continuous-fact.yaml f95f91b 
>   lens-examples/src/test/resources/yaml/sales-aggr-fact1.yaml 02f65ff 
>   lens-examples/src/test/resources/yaml/sales-aggr-fact2.yaml ff47d36 
>   lens-examples/src/test/resources/yaml/sales-raw-fact.yaml 15becfc 
>   lens-server/src/main/java/org/apache/lens/server/metastore/CubeMetastoreServiceImpl.java 24660e1 
>   lens-server/src/main/java/org/apache/lens/server/metastore/JAXBUtils.java 7d54c7b 
>   lens-server/src/main/java/org/apache/lens/server/metastore/MetastoreResource.java 9d823da 
>   lens-server/src/test/java/org/apache/lens/server/common/RestAPITestUtil.java 02e2f8b 
>   lens-server/src/test/java/org/apache/lens/server/common/TestDataUtils.java 0400519 
>   lens-server/src/test/java/org/apache/lens/server/query/QueryAPIErrorResponseTest.java 567c929 
> 
> 
> Diff: https://reviews.apache.org/r/58102/diff/4/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Sushil Mohanty
> 
>


Re: Review Request 58102: LENS-1381 : Support Fact to Fact Union

Posted by Sushil Mohanty <su...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/58102/
-----------------------------------------------------------

(Updated April 12, 2017, 7:19 a.m.)


Review request for lens.


Changes
-------

- Applied LENS-1408 changes 
- Correction of fact weight calculation.


Bugs: LENS-1381
    https://issues.apache.org/jira/browse/LENS-1381


Repository: lens


Description
-------

This is a neew feature to support union across multiple facts.


Diffs (updated)
-----

  lens-api/src/main/java/org/apache/lens/api/ToXMLString.java e74adc9 
  lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 14fc4aa 
  lens-api/src/main/java/org/apache/lens/api/metastore/SchemaTraverser.java PRE-CREATION 
  lens-api/src/main/resources/cube-0.1.xsd 060eb43 
  lens-api/src/main/resources/lens-errors.conf 29e24cf 
  lens-cli/src/main/java/org/apache/lens/cli/commands/LensSchemaCommands.java feabf9c 
  lens-cube/src/main/java/org/apache/lens/cube/error/LensCubeErrorCode.java 571b481 
  lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java b2568ff 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeFactTable.java 896a7a1 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeMetastoreClient.java 087c203 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/DateUtil.java 7717081 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java 1694b80 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/JAXBUtils.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/TimeRange.java bf6cc5c 
  lens-cube/src/main/java/org/apache/lens/cube/parse/AbridgedTimeRangeWriter.java 8681e90 
  lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java 9658100 
  lens-cube/src/main/java/org/apache/lens/cube/parse/BetweenTimeRangeWriter.java c8b8129 
  lens-cube/src/main/java/org/apache/lens/cube/parse/Candidate.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateDim.java 4dcdbcf 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateFact.java b42262d 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java e001ca4 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java bd6e27c 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java e9270ea 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateUtil.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CheckTableNames.java 8586262 
  lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnLifetimeChecker.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnResolver.java 87e094a 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryContext.java 125b432 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryRewriter.java b612173 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CubeSemanticAnalyzer.java fc96055 
  lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultAliasDecider.java 80ceae4 
  lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultQueryAST.java c9993f3 
  lens-cube/src/main/java/org/apache/lens/cube/parse/DenormalizationResolver.java cb26878 
  lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java 0ea0b1c 
  lens-cube/src/main/java/org/apache/lens/cube/parse/FieldValidator.java 48af0c9 
  lens-cube/src/main/java/org/apache/lens/cube/parse/GroupbyResolver.java 216ae52 
  lens-cube/src/main/java/org/apache/lens/cube/parse/JoinCandidate.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/JoinResolver.java 7b865bf 
  lens-cube/src/main/java/org/apache/lens/cube/parse/LeastPartitionResolver.java a53e994 
  lens-cube/src/main/java/org/apache/lens/cube/parse/LightestFactResolver.java 97accbb 
  lens-cube/src/main/java/org/apache/lens/cube/parse/MaxCoveringFactResolver.java 45824fe 
  lens-cube/src/main/java/org/apache/lens/cube/parse/MultiFactHQLContext.java 979c24b 
  lens-cube/src/main/java/org/apache/lens/cube/parse/PruneCauses.java 9b5a52f 
  lens-cube/src/main/java/org/apache/lens/cube/parse/QueriedPhraseContext.java 34a562d 
  lens-cube/src/main/java/org/apache/lens/cube/parse/QueryAST.java 7298604 
  lens-cube/src/main/java/org/apache/lens/cube/parse/SimpleHQLContext.java 62ceb12 
  lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactMultiStorageHQLContext.java 9b48213 
  lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactSingleStorageHQLContext.java dbc84ed 
  lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java cdf6812 
  lens-cube/src/main/java/org/apache/lens/cube/parse/StorageUtil.java f9636d1 
  lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRangeChecker.java f18ae36 
  lens-cube/src/main/java/org/apache/lens/cube/parse/UnionCandidate.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/UnionHQLContext.java e6ee989 
  lens-cube/src/main/java/org/apache/lens/cube/parse/UnionQueryWriter.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/join/AutoJoinContext.java 3d5c5ac 
  lens-cube/src/main/java/org/apache/lens/cube/parse/join/BridgeTableJoinContext.java cf74634 
  lens-cube/src/main/java/org/apache/lens/driver/cube/RewriterPlan.java fd6c30d 
  lens-cube/src/test/java/org/apache/lens/cube/metadata/DateFactory.java 3bdc047 
  lens-cube/src/test/java/org/apache/lens/cube/parse/CubeTestSetup.java 9b29083 
  lens-cube/src/test/java/org/apache/lens/cube/parse/FieldsCannotBeQueriedTogetherTest.java 1a5bd0d 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestAggregateResolver.java dd0b6dc 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java dbb8fa3 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java 450605b 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java 2f00244 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java 98b021b 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java 5505ed4 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestExpressionResolver.java 5d4e87f 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestJoinResolver.java 677d641 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestQueryMetrics.java 27a18f4 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestRewriterPlan.java 7f26b24 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java 280a8c4 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeWriterWithQuery.java 7010849 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java PRE-CREATION 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionQueries.java d5bc81c 
  lens-cube/src/test/resources/schema/cubes/base/basecube.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/cubes/base/testcube.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/cubes/derived/der1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/cubes/derived/der2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/cubes/derived/der3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/cubes/derived/derivedcube.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/cubes/derived/union_join_ctx_der1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/citydim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/countrydim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/cycledim1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/cycledim2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/daydim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/hourdim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/sports.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/statedim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/testdim2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/testdim3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/testdim4.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/unreachabledim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/user_interests.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/userdim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/zipdim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/citytable.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/citytable2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/citytable3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/citytable4.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/countrytable.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/countrytable_partitioned.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/cycledim1tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/cycledim2tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/daydimtbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/hourdimtbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/sports_tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/statetable.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/statetable_partitioned.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/testdim2tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/testdim2tbl2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/testdim2tbl3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/testdim3tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/testdim4tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/unreachabledimtable.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/user_interests_tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/usertable.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/ziptable.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/cheapfact.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/summary1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/summary2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/summary3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/summary4.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact1_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact1_raw_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact2_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact2_raw.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact2_raw_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact3_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact3_raw_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact4_raw_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact5_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact5_raw_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact6_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact_continuous.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact_deprecated.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfactmonthly.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/union_join_ctx_fact1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/union_join_ctx_fact2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/union_join_ctx_fact3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/union_join_ctx_fact5.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/union_join_ctx_fact6.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/segmentations/seg1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c0.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c4.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c5.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c99.xml PRE-CREATION 
  lens-examples/src/test/resources/yaml/city_subset.yaml cd5c8ad 
  lens-examples/src/test/resources/yaml/city_table.yaml 92ce3ec 
  lens-examples/src/test/resources/yaml/customer_table.yaml 4209bea 
  lens-examples/src/test/resources/yaml/dim_table.yaml 37b50da 
  lens-examples/src/test/resources/yaml/dim_table2.yaml 619625c 
  lens-examples/src/test/resources/yaml/dim_table3.yaml 74cd367 
  lens-examples/src/test/resources/yaml/dim_table4.yaml 03b2809 
  lens-examples/src/test/resources/yaml/fact1.yaml 9c1c527 
  lens-examples/src/test/resources/yaml/fact2.yaml 6fadd11 
  lens-examples/src/test/resources/yaml/product_db_table.yaml 6b9461a 
  lens-examples/src/test/resources/yaml/product_table.yaml 637db62 
  lens-examples/src/test/resources/yaml/rawfact.yaml f7b2d55 
  lens-examples/src/test/resources/yaml/sales-aggr-continuous-fact.yaml f95f91b 
  lens-examples/src/test/resources/yaml/sales-aggr-fact1.yaml 02f65ff 
  lens-examples/src/test/resources/yaml/sales-aggr-fact2.yaml ff47d36 
  lens-examples/src/test/resources/yaml/sales-raw-fact.yaml 15becfc 
  lens-server/src/main/java/org/apache/lens/server/metastore/CubeMetastoreServiceImpl.java 24660e1 
  lens-server/src/main/java/org/apache/lens/server/metastore/JAXBUtils.java 7d54c7b 
  lens-server/src/main/java/org/apache/lens/server/metastore/MetastoreResource.java 9d823da 
  lens-server/src/test/java/org/apache/lens/server/common/RestAPITestUtil.java 02e2f8b 
  lens-server/src/test/java/org/apache/lens/server/common/TestDataUtils.java 0400519 
  lens-server/src/test/java/org/apache/lens/server/query/QueryAPIErrorResponseTest.java 567c929 


Diff: https://reviews.apache.org/r/58102/diff/4/

Changes: https://reviews.apache.org/r/58102/diff/3-4/


Testing
-------


Thanks,

Sushil Mohanty


Re: Review Request 58102: LENS-1381 : Support Fact to Fact Union

Posted by Sushil Mohanty <su...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/58102/
-----------------------------------------------------------

(Updated April 11, 2017, 5:08 p.m.)


Review request for lens.


Changes
-------

- addressed review comment.


Bugs: LENS-1381
    https://issues.apache.org/jira/browse/LENS-1381


Repository: lens


Description
-------

This is a neew feature to support union across multiple facts.


Diffs (updated)
-----

  lens-api/src/main/java/org/apache/lens/api/ToXMLString.java e74adc9 
  lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 14fc4aa 
  lens-api/src/main/java/org/apache/lens/api/metastore/SchemaTraverser.java PRE-CREATION 
  lens-api/src/main/resources/cube-0.1.xsd 060eb43 
  lens-api/src/main/resources/lens-errors.conf 29e24cf 
  lens-cli/src/main/java/org/apache/lens/cli/commands/LensSchemaCommands.java feabf9c 
  lens-cube/src/main/java/org/apache/lens/cube/error/LensCubeErrorCode.java 571b481 
  lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java b2568ff 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeFactTable.java 896a7a1 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeMetastoreClient.java 087c203 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/DateUtil.java 7717081 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java 1694b80 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/JAXBUtils.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/TimeRange.java bf6cc5c 
  lens-cube/src/main/java/org/apache/lens/cube/parse/AbridgedTimeRangeWriter.java 8681e90 
  lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java 9658100 
  lens-cube/src/main/java/org/apache/lens/cube/parse/BetweenTimeRangeWriter.java c8b8129 
  lens-cube/src/main/java/org/apache/lens/cube/parse/Candidate.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateDim.java 4dcdbcf 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateFact.java b42262d 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java e001ca4 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java bd6e27c 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java e9270ea 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateUtil.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CheckTableNames.java 8586262 
  lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnLifetimeChecker.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnResolver.java 87e094a 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryContext.java 125b432 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryRewriter.java b612173 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CubeSemanticAnalyzer.java fc96055 
  lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultAliasDecider.java 80ceae4 
  lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultQueryAST.java c9993f3 
  lens-cube/src/main/java/org/apache/lens/cube/parse/DenormalizationResolver.java cb26878 
  lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java 0ea0b1c 
  lens-cube/src/main/java/org/apache/lens/cube/parse/FieldValidator.java 48af0c9 
  lens-cube/src/main/java/org/apache/lens/cube/parse/GroupbyResolver.java 216ae52 
  lens-cube/src/main/java/org/apache/lens/cube/parse/JoinCandidate.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/JoinResolver.java 7b865bf 
  lens-cube/src/main/java/org/apache/lens/cube/parse/LeastPartitionResolver.java a53e994 
  lens-cube/src/main/java/org/apache/lens/cube/parse/LightestFactResolver.java 97accbb 
  lens-cube/src/main/java/org/apache/lens/cube/parse/MaxCoveringFactResolver.java 45824fe 
  lens-cube/src/main/java/org/apache/lens/cube/parse/MultiFactHQLContext.java 979c24b 
  lens-cube/src/main/java/org/apache/lens/cube/parse/PruneCauses.java 9b5a52f 
  lens-cube/src/main/java/org/apache/lens/cube/parse/QueriedPhraseContext.java 34a562d 
  lens-cube/src/main/java/org/apache/lens/cube/parse/QueryAST.java 7298604 
  lens-cube/src/main/java/org/apache/lens/cube/parse/SimpleHQLContext.java 62ceb12 
  lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactMultiStorageHQLContext.java 9b48213 
  lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactSingleStorageHQLContext.java dbc84ed 
  lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java cdf6812 
  lens-cube/src/main/java/org/apache/lens/cube/parse/StorageUtil.java f9636d1 
  lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRangeChecker.java f18ae36 
  lens-cube/src/main/java/org/apache/lens/cube/parse/UnionCandidate.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/UnionHQLContext.java e6ee989 
  lens-cube/src/main/java/org/apache/lens/cube/parse/UnionQueryWriter.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/join/AutoJoinContext.java 3d5c5ac 
  lens-cube/src/main/java/org/apache/lens/cube/parse/join/BridgeTableJoinContext.java cf74634 
  lens-cube/src/main/java/org/apache/lens/driver/cube/RewriterPlan.java fd6c30d 
  lens-cube/src/test/java/org/apache/lens/cube/metadata/DateFactory.java 3bdc047 
  lens-cube/src/test/java/org/apache/lens/cube/parse/CubeTestSetup.java 9b29083 
  lens-cube/src/test/java/org/apache/lens/cube/parse/FieldsCannotBeQueriedTogetherTest.java 1a5bd0d 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestAggregateResolver.java dd0b6dc 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java dbb8fa3 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java 450605b 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java 2f00244 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java 98b021b 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java 5505ed4 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestExpressionResolver.java 5d4e87f 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestJoinResolver.java 677d641 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestQueryMetrics.java 27a18f4 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestRewriterPlan.java 7f26b24 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java 280a8c4 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeWriterWithQuery.java 7010849 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java PRE-CREATION 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionQueries.java d5bc81c 
  lens-cube/src/test/resources/schema/cubes/base/basecube.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/cubes/base/testcube.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/cubes/derived/der1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/cubes/derived/der2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/cubes/derived/der3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/cubes/derived/derivedcube.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/cubes/derived/union_join_ctx_der1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/citydim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/countrydim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/cycledim1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/cycledim2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/daydim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/hourdim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/sports.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/statedim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/testdim2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/testdim3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/testdim4.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/unreachabledim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/user_interests.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/userdim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/zipdim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/citytable.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/citytable2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/citytable3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/citytable4.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/countrytable.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/countrytable_partitioned.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/cycledim1tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/cycledim2tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/daydimtbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/hourdimtbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/sports_tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/statetable.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/statetable_partitioned.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/testdim2tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/testdim2tbl2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/testdim2tbl3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/testdim3tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/testdim4tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/unreachabledimtable.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/user_interests_tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/usertable.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/ziptable.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/cheapfact.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/summary1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/summary2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/summary3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/summary4.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact1_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact1_raw_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact2_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact2_raw.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact2_raw_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact3_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact3_raw_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact4_raw_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact5_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact5_raw_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact6_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact_continuous.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact_deprecated.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfactmonthly.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/union_join_ctx_fact1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/union_join_ctx_fact2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/union_join_ctx_fact3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/union_join_ctx_fact5.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/union_join_ctx_fact6.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/segmentations/seg1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c0.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c4.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c5.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c99.xml PRE-CREATION 
  lens-examples/src/test/resources/yaml/city_subset.yaml cd5c8ad 
  lens-examples/src/test/resources/yaml/city_table.yaml 92ce3ec 
  lens-examples/src/test/resources/yaml/customer_table.yaml 4209bea 
  lens-examples/src/test/resources/yaml/dim_table.yaml 37b50da 
  lens-examples/src/test/resources/yaml/dim_table2.yaml 619625c 
  lens-examples/src/test/resources/yaml/dim_table3.yaml 74cd367 
  lens-examples/src/test/resources/yaml/dim_table4.yaml 03b2809 
  lens-examples/src/test/resources/yaml/fact1.yaml 9c1c527 
  lens-examples/src/test/resources/yaml/fact2.yaml 6fadd11 
  lens-examples/src/test/resources/yaml/product_db_table.yaml 6b9461a 
  lens-examples/src/test/resources/yaml/product_table.yaml 637db62 
  lens-examples/src/test/resources/yaml/rawfact.yaml f7b2d55 
  lens-examples/src/test/resources/yaml/sales-aggr-continuous-fact.yaml f95f91b 
  lens-examples/src/test/resources/yaml/sales-aggr-fact1.yaml 02f65ff 
  lens-examples/src/test/resources/yaml/sales-aggr-fact2.yaml ff47d36 
  lens-examples/src/test/resources/yaml/sales-raw-fact.yaml 15becfc 
  lens-server/src/main/java/org/apache/lens/server/metastore/CubeMetastoreServiceImpl.java 24660e1 
  lens-server/src/main/java/org/apache/lens/server/metastore/JAXBUtils.java 7d54c7b 
  lens-server/src/main/java/org/apache/lens/server/metastore/MetastoreResource.java 9d823da 
  lens-server/src/test/java/org/apache/lens/server/common/RestAPITestUtil.java 02e2f8b 
  lens-server/src/test/java/org/apache/lens/server/common/TestDataUtils.java 0400519 
  lens-server/src/test/java/org/apache/lens/server/query/QueryAPIErrorResponseTest.java 567c929 


Diff: https://reviews.apache.org/r/58102/diff/3/

Changes: https://reviews.apache.org/r/58102/diff/2-3/


Testing
-------


Thanks,

Sushil Mohanty


Re: Review Request 58102: LENS-1381 : Support Fact to Fact Union

Posted by Sushil Mohanty <su...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/58102/
-----------------------------------------------------------

(Updated April 5, 2017, 5:38 a.m.)


Review request for lens.


Changes
-------

- Addressed review comments.


Bugs: LENS-1381
    https://issues.apache.org/jira/browse/LENS-1381


Repository: lens


Description
-------

This is a neew feature to support union across multiple facts.


Diffs (updated)
-----

  lens-api/src/main/java/org/apache/lens/api/ToXMLString.java e74adc9 
  lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 14fc4aa 
  lens-api/src/main/java/org/apache/lens/api/metastore/SchemaTraverser.java PRE-CREATION 
  lens-api/src/main/resources/cube-0.1.xsd 060eb43 
  lens-cli/src/main/java/org/apache/lens/cli/commands/LensSchemaCommands.java feabf9c 
  lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java b2568ff 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeFactTable.java 896a7a1 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeMetastoreClient.java 087c203 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/DateUtil.java 7717081 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java 1694b80 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/JAXBUtils.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/TimeRange.java bf6cc5c 
  lens-cube/src/main/java/org/apache/lens/cube/parse/AbridgedTimeRangeWriter.java 8681e90 
  lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java 9658100 
  lens-cube/src/main/java/org/apache/lens/cube/parse/BetweenTimeRangeWriter.java c8b8129 
  lens-cube/src/main/java/org/apache/lens/cube/parse/Candidate.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateDim.java 4dcdbcf 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateFact.java b42262d 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java e001ca4 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java bd6e27c 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java e9270ea 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateUtil.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CheckTableNames.java 8586262 
  lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnLifetimeChecker.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnResolver.java 87e094a 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryContext.java 125b432 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryRewriter.java b612173 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CubeSemanticAnalyzer.java fc96055 
  lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultAliasDecider.java 80ceae4 
  lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultQueryAST.java c9993f3 
  lens-cube/src/main/java/org/apache/lens/cube/parse/DenormalizationResolver.java cb26878 
  lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java 0ea0b1c 
  lens-cube/src/main/java/org/apache/lens/cube/parse/FieldValidator.java 48af0c9 
  lens-cube/src/main/java/org/apache/lens/cube/parse/GroupbyResolver.java 216ae52 
  lens-cube/src/main/java/org/apache/lens/cube/parse/JoinCandidate.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/JoinResolver.java 7b865bf 
  lens-cube/src/main/java/org/apache/lens/cube/parse/LeastPartitionResolver.java a53e994 
  lens-cube/src/main/java/org/apache/lens/cube/parse/LightestFactResolver.java 97accbb 
  lens-cube/src/main/java/org/apache/lens/cube/parse/MaxCoveringFactResolver.java 45824fe 
  lens-cube/src/main/java/org/apache/lens/cube/parse/MultiFactHQLContext.java 979c24b 
  lens-cube/src/main/java/org/apache/lens/cube/parse/PruneCauses.java 9b5a52f 
  lens-cube/src/main/java/org/apache/lens/cube/parse/QueriedPhraseContext.java 34a562d 
  lens-cube/src/main/java/org/apache/lens/cube/parse/QueryAST.java 7298604 
  lens-cube/src/main/java/org/apache/lens/cube/parse/SimpleHQLContext.java 62ceb12 
  lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactMultiStorageHQLContext.java 9b48213 
  lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactSingleStorageHQLContext.java dbc84ed 
  lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java cdf6812 
  lens-cube/src/main/java/org/apache/lens/cube/parse/StorageUtil.java f9636d1 
  lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRangeChecker.java f18ae36 
  lens-cube/src/main/java/org/apache/lens/cube/parse/UnionCandidate.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/UnionHQLContext.java e6ee989 
  lens-cube/src/main/java/org/apache/lens/cube/parse/UnionQueryWriter.java PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/join/AutoJoinContext.java 3d5c5ac 
  lens-cube/src/main/java/org/apache/lens/cube/parse/join/BridgeTableJoinContext.java cf74634 
  lens-cube/src/main/java/org/apache/lens/driver/cube/RewriterPlan.java fd6c30d 
  lens-cube/src/test/java/org/apache/lens/cube/metadata/DateFactory.java 3bdc047 
  lens-cube/src/test/java/org/apache/lens/cube/parse/CubeTestSetup.java 9b29083 
  lens-cube/src/test/java/org/apache/lens/cube/parse/FieldsCannotBeQueriedTogetherTest.java 1a5bd0d 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestAggregateResolver.java dd0b6dc 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java dbb8fa3 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java 450605b 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java 2f00244 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java 98b021b 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java 5505ed4 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestExpressionResolver.java 5d4e87f 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestJoinResolver.java 677d641 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestQueryMetrics.java 27a18f4 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestRewriterPlan.java 7f26b24 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java 280a8c4 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeWriterWithQuery.java 7010849 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java PRE-CREATION 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionQueries.java d5bc81c 
  lens-cube/src/test/resources/schema/cubes/base/basecube.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/cubes/base/testcube.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/cubes/derived/der1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/cubes/derived/der2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/cubes/derived/der3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/cubes/derived/derivedcube.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/cubes/derived/union_join_ctx_der1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/citydim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/countrydim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/cycledim1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/cycledim2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/daydim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/hourdim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/sports.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/statedim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/testdim2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/testdim3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/testdim4.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/unreachabledim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/user_interests.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/userdim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimensions/zipdim.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/citytable.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/citytable2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/citytable3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/citytable4.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/countrytable.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/countrytable_partitioned.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/cycledim1tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/cycledim2tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/daydimtbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/hourdimtbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/sports_tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/statetable.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/statetable_partitioned.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/testdim2tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/testdim2tbl2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/testdim2tbl3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/testdim3tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/testdim4tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/unreachabledimtable.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/user_interests_tbl.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/usertable.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/dimtables/ziptable.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/cheapfact.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/summary1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/summary2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/summary3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/summary4.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact1_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact1_raw_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact2_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact2_raw.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact2_raw_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact3_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact3_raw_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact4_raw_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact5_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact5_raw_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact6_base.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact_continuous.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfact_deprecated.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/testfactmonthly.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/union_join_ctx_fact1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/union_join_ctx_fact2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/union_join_ctx_fact3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/union_join_ctx_fact5.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/facts/union_join_ctx_fact6.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/segmentations/seg1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c0.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c1.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c2.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c3.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c4.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c5.xml PRE-CREATION 
  lens-cube/src/test/resources/schema/storages/c99.xml PRE-CREATION 
  lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/ColumnarSQLRewriter.java 75153f6 
  lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/DruidSQLRewriter.java 2351fb3 
  lens-server/src/main/java/org/apache/lens/server/metastore/CubeMetastoreServiceImpl.java 24660e1 
  lens-server/src/main/java/org/apache/lens/server/metastore/JAXBUtils.java 7d54c7b 
  lens-server/src/main/java/org/apache/lens/server/metastore/MetastoreResource.java 9d823da 
  lens-server/src/test/java/org/apache/lens/server/common/RestAPITestUtil.java 02e2f8b 
  lens-server/src/test/java/org/apache/lens/server/common/TestDataUtils.java 0400519 
  lens-server/src/test/java/org/apache/lens/server/query/QueryAPIErrorResponseTest.java 567c929 


Diff: https://reviews.apache.org/r/58102/diff/2/

Changes: https://reviews.apache.org/r/58102/diff/1-2/


Testing
-------


Thanks,

Sushil Mohanty


Re: Review Request 58102: LENS-1381 : Support Fact to Fact Union

Posted by Amareshwari Sriramadasu <am...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/58102/#review170702
-----------------------------------------------------------




lens-cube/src/main/java/org/apache/lens/cube/parse/MaxCoveringFactResolver.java
Line 98 (original), 98 (patched)
<https://reviews.apache.org/r/58102/#comment243590>

    Can we remove commented code?


- Amareshwari Sriramadasu


On March 31, 2017, 10:02 a.m., Sushil Mohanty wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/58102/
> -----------------------------------------------------------
> 
> (Updated March 31, 2017, 10:02 a.m.)
> 
> 
> Review request for lens.
> 
> 
> Bugs: LENS-1381
>     https://issues.apache.org/jira/browse/LENS-1381
> 
> 
> Repository: lens
> 
> 
> Description
> -------
> 
> This is a neew feature to support union across multiple facts.
> 
> 
> Diffs
> -----
> 
>   lens-api/src/main/java/org/apache/lens/api/ToXMLString.java e74adc9 
>   lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 14fc4aa 
>   lens-api/src/main/java/org/apache/lens/api/metastore/SchemaTraverser.java PRE-CREATION 
>   lens-api/src/main/resources/cube-0.1.xsd 060eb43 
>   lens-cli/src/main/java/org/apache/lens/cli/commands/LensSchemaCommands.java feabf9c 
>   lens-cube/src/main/java/org/apache/lens/cube/error/NoCandidateFactAvailableException.java b2568ff 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeFactTable.java 896a7a1 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeMetastoreClient.java 087c203 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/DateUtil.java 7717081 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java 1694b80 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/JAXBUtils.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/TimeRange.java bf6cc5c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AbridgedTimeRangeWriter.java 8681e90 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java 9658100 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/BetweenTimeRangeWriter.java c8b8129 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/Candidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateCoveringSetsResolver.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateDim.java 4dcdbcf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateFact.java b42262d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTable.java e001ca4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTablePruneCause.java bd6e27c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java e9270ea 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateUtil.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CheckTableNames.java 8586262 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnLifetimeChecker.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnResolver.java 87e094a 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryContext.java 125b432 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryRewriter.java b612173 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/CubeSemanticAnalyzer.java fc96055 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultAliasDecider.java 80ceae4 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DefaultQueryAST.java c9993f3 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/DenormalizationResolver.java cb26878 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java 0ea0b1c 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/FieldValidator.java 48af0c9 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/GroupbyResolver.java 216ae52 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/JoinResolver.java 7b865bf 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LeastPartitionResolver.java a53e994 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/LightestFactResolver.java 97accbb 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MaxCoveringFactResolver.java 45824fe 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/MultiFactHQLContext.java 979c24b 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/PruneCauses.java 9b5a52f 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueriedPhraseContext.java 34a562d 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/QueryAST.java 7298604 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SimpleHQLContext.java 62ceb12 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactMultiStorageHQLContext.java 9b48213 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/SingleFactSingleStorageHQLContext.java dbc84ed 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java cdf6812 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/StorageUtil.java f9636d1 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRangeChecker.java f18ae36 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionCandidate.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionHQLContext.java e6ee989 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/UnionQueryWriter.java PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/AutoJoinContext.java 3d5c5ac 
>   lens-cube/src/main/java/org/apache/lens/cube/parse/join/BridgeTableJoinContext.java cf74634 
>   lens-cube/src/main/java/org/apache/lens/driver/cube/RewriterPlan.java fd6c30d 
>   lens-cube/src/test/java/org/apache/lens/cube/metadata/DateFactory.java 3bdc047 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/CubeTestSetup.java 9b29083 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/FieldsCannotBeQueriedTogetherTest.java 1a5bd0d 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestAggregateResolver.java dd0b6dc 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java dbb8fa3 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java 450605b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java 2f00244 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java 98b021b 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java 5505ed4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestExpressionResolver.java 5d4e87f 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestJoinResolver.java 677d641 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestQueryMetrics.java 27a18f4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestRewriterPlan.java 7f26b24 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java 280a8c4 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeWriterWithQuery.java 7010849 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java PRE-CREATION 
>   lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionQueries.java d5bc81c 
>   lens-cube/src/test/resources/schema/cubes/base/basecube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/base/testcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/der3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/derivedcube.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/cubes/derived/union_join_ctx_der1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/citydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/countrydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/cycledim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/daydim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/hourdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/sports.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/statedim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/testdim4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/unreachabledim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/user_interests.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/userdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimensions/zipdim.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/citytable4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/countrytable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim1tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/cycledim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/daydimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/hourdimtbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/sports_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/statetable_partitioned.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim2tbl3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim3tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/testdim4tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/unreachabledimtable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/user_interests_tbl.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/usertable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/dimtables/ziptable.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/cheapfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/summary4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact1_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact2_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact3_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact4_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact5_raw_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact6_base.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_continuous.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfact_deprecated.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/testfactmonthly.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/facts/union_join_ctx_fact6.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/segmentations/seg1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c0.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c1.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c2.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c3.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c4.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c5.xml PRE-CREATION 
>   lens-cube/src/test/resources/schema/storages/c99.xml PRE-CREATION 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/ColumnarSQLRewriter.java 75153f6 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/DruidSQLRewriter.java 2351fb3 
>   lens-server/src/main/java/org/apache/lens/server/metastore/CubeMetastoreServiceImpl.java 24660e1 
>   lens-server/src/main/java/org/apache/lens/server/metastore/JAXBUtils.java 7d54c7b 
>   lens-server/src/test/java/org/apache/lens/server/common/RestAPITestUtil.java 02e2f8b 
>   lens-server/src/test/java/org/apache/lens/server/common/TestDataUtils.java 0400519 
>   lens-server/src/test/java/org/apache/lens/server/query/QueryAPIErrorResponseTest.java 567c929 
> 
> 
> Diff: https://reviews.apache.org/r/58102/diff/1/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Sushil Mohanty
> 
>