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

(Updated March 9, 2015, 6:53 p.m.)


Review request for lens.


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


Repository: lens


Description
-------

finished with changes.


Diffs
-----

  
lens-cube/src/main/java/org/apache/lens/cube/metadata/CaseInsensitiveStringHashMap.java
 PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeFactTable.java 
b3ed6efd102ed800519ebb9b5d15f81a2a32d5d5 
  
lens-cube/src/main/java/org/apache/lens/cube/metadata/CubeMetastoreClient.java 
7e6fe7e93a07ddb6ae4369b78e7856dc2b0a65b5 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/MetastoreConstants.java 
979de6d7f1d43f0fb5621e3287f3a6eef3dcdaef 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/MetastoreUtil.java 
c21c72a5ceb0271134423b8a9caf928e524cf150 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/Storage.java 
240516d6911ecdab6a07ef77b194c013aba42f4e 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/StorageConstants.java 
c4b3c3a4d469f5cc609db67437b00855d907c51d 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/TimePartition.java 
PRE-CREATION 
  lens-cube/src/main/java/org/apache/lens/cube/metadata/UpdatePeriod.java 
f48acf2efe074541f1317edc1375e9b3e42d95e5 
  
lens-cube/src/main/java/org/apache/lens/cube/metadata/timeline/EndsAndHolesPartitionTimeline.java
 PRE-CREATION 
  
lens-cube/src/main/java/org/apache/lens/cube/metadata/timeline/PartitionTimeline.java
 PRE-CREATION 
  
lens-cube/src/main/java/org/apache/lens/cube/metadata/timeline/PartitionTimelineFactory.java
 PRE-CREATION 
  
lens-cube/src/main/java/org/apache/lens/cube/metadata/timeline/StoreAllPartitionTimeline.java
 PRE-CREATION 
  
lens-cube/src/main/java/org/apache/lens/cube/parse/AbridgedTimeRangeWriter.java 
b1a85adfb229fa0f6a708a047a7629b2faa28e30 
  
lens-cube/src/main/java/org/apache/lens/cube/parse/BetweenTimeRangeWriter.java 
14ea806638ac82fa3aece4219d5bcb834e6e6e54 
  lens-cube/src/main/java/org/apache/lens/cube/parse/FactPartition.java 
a60041bf3df0fa03091674b602a78a2323f88d55 
  lens-cube/src/main/java/org/apache/lens/cube/parse/ORTimeRangeWriter.java 
722230b444093e369238293ef67033b63ebbafbf 
  lens-cube/src/main/java/org/apache/lens/cube/parse/StorageTableResolver.java 
7eaf597bac879430dff086914865d34102003f0f 
  lens-cube/src/main/java/org/apache/lens/cube/parse/StorageUtil.java 
14feb2479ddecaebe94ef5aa4b303be2ade4ee4c 
  lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRange.java 
550df6c99b7ffe7372d319b8c4b101cdd5a4f830 
  lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRangeUtils.java 
27c3b89624d036f05e7ac7a97951a29767559cc1 
  lens-cube/src/main/java/org/apache/lens/cube/parse/TimeRangeWriter.java 
c6e275f2755a5bace0aeac6338036339a088cc9f 
  
lens-cube/src/test/java/org/apache/lens/cube/metadata/TestCubeMetastoreClient.java
 96ba240404d1f21fbcac572ced0a4e3c911a5731 
  lens-cube/src/test/java/org/apache/lens/cube/metadata/TestTimePartition.java 
PRE-CREATION 
  lens-cube/src/test/java/org/apache/lens/cube/parse/CubeTestSetup.java 
609b7f3a2750a0272f649d4cce3181a0588013e9 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java 
3c960622c4bc7d95bcbd9c66f3f64a8c7eff2cd2 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestStorageUtil.java 
911bcef0475e9db8326bf105ff19f3f10415eb67 
  lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeWriter.java 
418fb085aa39c85cd502954f3f8b52cdd3aa87e8 
  
lens-server/src/main/java/org/apache/lens/server/metastore/CubeMetastoreServiceImpl.java
 4047e0c8b2098929cd6f1d320f7e52db40a280aa 
  
lens-server/src/test/java/org/apache/lens/server/metastore/TestMetastoreService.java
 9f4595f96354eacabd758053b57183026de116c0 

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


Testing (updated)
-------

[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO] 
[INFO] Lens Checkstyle Rules ............................. SUCCESS [2.180s]
[INFO] Lens .............................................. SUCCESS [1.755s]
[INFO] Lens API .......................................... SUCCESS [5.827s]
[INFO] Lens API for server and extensions ................ SUCCESS [6.234s]
[INFO] Lens Cube ......................................... SUCCESS [2:15.346s]
[INFO] Lens DB storage ................................... SUCCESS [10.320s]
[INFO] Lens Query Library ................................ SUCCESS [4.555s]
[INFO] Lens Hive Driver .................................. SUCCESS [2:36.663s]
[INFO] Lens Driver for JDBC .............................. SUCCESS [25.845s]
[INFO] Lens Server ....................................... SUCCESS [4:31.369s]
[INFO] Lens client ....................................... SUCCESS [22.091s]
[INFO] Lens CLI .......................................... SUCCESS [1:49.309s]
[INFO] Lens Examples ..................................... SUCCESS [0.836s]
[INFO] Lens Distribution ................................. SUCCESS [9.830s]
[INFO] Lens ML Lib ....................................... SUCCESS [42.300s]
[INFO] Lens Regression ................................... SUCCESS [0.475s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 13:25.908s
[INFO] Finished at: Mon Mar 09 12:41:37 UTC 2015
[INFO] Final Memory: 108M/1268M
[INFO] ------------------------------------------------------------------------

For timeline tests, modified one existing test case to insert and delete the 
following partitions in the order specified:

In the test case, a fact table is created with three time parts. many 
partitions are added and all are deleted one by one. The order of addition and 
deletion is given in the following table: 

0 means time value of the partition column is `now`
x means time value of the partition column is `now + x hours`
-x means time value of the partition column is `now - x hours`

Each add/drop is done in two storages, one storage is using EndsAndHoles 
timeline, the other is using StoreAll Timeline. After each add/drop, I verify 
both kinds of timelines for correctness. The expected value is provided 
manually. Also verifying a foreach loop on both timelines gives same collection 
of partitions in the same order. 

Delete order is in no way related to add order, was randomly picked. 

At the start, first,latest should be null and holes should be empty. Same thing 
at the end when all the partitions are dropped. 

|-------------------------------------------
| dt | it | et | add order | delete order
|----|----|----|-----------|-------------
| 0  | 0  | 0  |     1     |      7
| 0  | -  | 1  |     2     |      3
| 0  | -  | 0  |     3     |      5  
| 0  | 1  | -1 |     4     |      4 
| 1  | -1 | -2 |     5     |      1
| -2 | -1 | -2 |     6     |      6
| -5 | -5 | -5 |     7     |      2


Thanks,

Rajat Khandelwal

Reply via email to