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

(Updated Oct. 7, 2016, 8:42 a.m.)


Review request for lens and Rajat Khandelwal.


Changes
-------

Review comments fixed


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


Repository: lens


Description
-------

The problem exists with case when aggregate expressions in current code because 
cube query writing gets all columns queried and checks availability of those 
columns in eligible facts.

The fix is to make the checks happen on each select phrase to be separate.

Changes include :
- Added QueriedPhraseContext to hold the different queried phrases in all 
clauses
- Updated candidate pruning to happen for columns in QueriedPhraseContext 
instead of all columns queried 
- Removal of a lot of book keeping done withrespect to columns queried or 
expressions queried
- Added aggregate as a field in QueriedPhraseContext and updated 
GroupbyResolver to make use of the same.
- Also moved alias for select phrase to SelectPhraseContext and updated its in 
all relavant places.

Planning to do some more clean up in a follow up jira wrt 
denormalizationResovler and optional dimension tables.


Diffs (updated)
-----

  lens-cube/src/main/java/org/apache/lens/cube/parse/AggregateResolver.java 
292868a 
  lens-cube/src/main/java/org/apache/lens/cube/parse/AliasReplacer.java 5b48ca4 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateFact.java 01265a5 
  
lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java 
83e5088 
  lens-cube/src/main/java/org/apache/lens/cube/parse/ColumnResolver.java 
2db5dd1 
  lens-cube/src/main/java/org/apache/lens/cube/parse/CubeQueryContext.java 
63ec8b2 
  
lens-cube/src/main/java/org/apache/lens/cube/parse/DenormalizationResolver.java 
ab1710d 
  lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java 
5adea6c 
  lens-cube/src/main/java/org/apache/lens/cube/parse/GroupbyResolver.java 
8beeb9d 
  lens-cube/src/main/java/org/apache/lens/cube/parse/MultiFactHQLContext.java 
b3547db 
  lens-cube/src/main/java/org/apache/lens/cube/parse/QueriedPhraseContext.java 
PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/SelectPhraseContext.java 
PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRangeChecker.java 
ca176ee 
  lens-cube/src/main/java/org/apache/lens/cube/parse/TrackQueriedColumns.java 
b65ac26 
  
lens-cube/src/main/java/org/apache/lens/cube/parse/TrackQueriedCubeFields.java 
PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/parse/TracksQueriedColumns.java 
PRE-CREATION 
  lens-cube/src/test/java/org/apache/lens/cube/parse/CubeTestSetup.java f7f8af2 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestAggregateResolver.java 
35234a1 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java 
053cad3 

Diff: https://reviews.apache.org/r/52381/diff/


Testing
-------

All cube tests pass.


Thanks,

Amareshwari Sriramadasu

Reply via email to