You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by li...@apache.org on 2016/07/23 11:10:24 UTC

[2/3] kylin git commit: KYLIN-1867: Upgrade small version for dependency libraries

KYLIN-1867: Upgrade small version for dependency libraries

Signed-off-by: Yang Li <li...@apache.org>


Project: http://git-wip-us.apache.org/repos/asf/kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/df455081
Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/df455081
Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/df455081

Branch: refs/heads/master
Commit: df455081f0b4da83b92447639eac47394e96af93
Parents: 67017e3
Author: Yiming Liu <li...@gmail.com>
Authored: Tue Jul 12 10:50:02 2016 +0800
Committer: Yang Li <li...@apache.org>
Committed: Sat Jul 23 08:43:39 2016 +0800

----------------------------------------------------------------------
 assembly/pom.xml                                |  13 -
 core-common/pom.xml                             |   4 +
 .../org/apache/kylin/common/util/RangeUtil.java |  35 +-
 .../org/apache/kylin/common/util/RangeTest.java | 185 +++++----
 .../apache/kylin/common/util/RangeUtilTest.java |  19 +-
 core-cube/pom.xml                               |   3 -
 core-dictionary/pom.xml                         |   2 -
 core-job/pom.xml                                |   2 -
 core-metadata/pom.xml                           |   5 -
 core-storage/pom.xml                            |   2 -
 .../storage/cache/TsConditionExtractor.java     |  21 +-
 engine-mr/pom.xml                               |   4 -
 engine-spark/pom.xml                            |   6 -
 engine-streaming/pom.xml                        |   3 -
 kylin-it/pom.xml                                |  21 +-
 pom.xml                                         | 381 ++++++++++++++++---
 query/pom.xml                                   |   8 -
 server-base/pom.xml                             |  79 +---
 server/pom.xml                                  |  22 --
 source-hive/pom.xml                             |   3 -
 source-kafka/pom.xml                            |   3 -
 storage-hbase/pom.xml                           |   8 -
 .../cube/v2/filter/MassInValueProviderImpl.java |   8 +-
 tool/pom.xml                                    |   3 -
 24 files changed, 471 insertions(+), 369 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/kylin/blob/df455081/assembly/pom.xml
----------------------------------------------------------------------
diff --git a/assembly/pom.xml b/assembly/pom.xml
index 4442e14..73c85d7 100644
--- a/assembly/pom.xml
+++ b/assembly/pom.xml
@@ -34,27 +34,22 @@
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-source-hive</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-source-kafka</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-storage-hbase</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-engine-mr</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-engine-streaming</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
 
         <!-- Env & Test -->
@@ -63,21 +58,18 @@
             <artifactId>kylin-core-common</artifactId>
             <type>test-jar</type>
             <scope>test</scope>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-core-job</artifactId>
             <type>test-jar</type>
             <scope>test</scope>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-storage-hbase</artifactId>
             <type>test-jar</type>
             <scope>test</scope>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.hadoop</groupId>
@@ -143,13 +135,11 @@
         <dependency>
             <groupId>org.apache.hive.hcatalog</groupId>
             <artifactId>hive-hcatalog-core</artifactId>
-            <version>${hive-hcatalog.version}</version>
             <scope>provided</scope>
         </dependency>
         <dependency>
             <groupId>org.apache.hbase</groupId>
             <artifactId>hbase-testing-util</artifactId>
-            <version>${hbase-hadoop2.version}</version>
             <scope>test</scope>
             <exclusions>
                 <exclusion>
@@ -165,7 +155,6 @@
         <dependency>
             <groupId>org.apache.kafka</groupId>
             <artifactId>kafka_2.10</artifactId>
-            <version>${kafka.version}</version>
             <scope>provided</scope>
         </dependency>
 
@@ -176,8 +165,6 @@
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-shade-plugin</artifactId>
-                <version>2.3</version>
-
                 <executions>
                     <execution>
                         <phase>package</phase>

http://git-wip-us.apache.org/repos/asf/kylin/blob/df455081/core-common/pom.xml
----------------------------------------------------------------------
diff --git a/core-common/pom.xml b/core-common/pom.xml
index 8f3fcbc..dd8ac13 100644
--- a/core-common/pom.xml
+++ b/core-common/pom.xml
@@ -74,6 +74,10 @@
             <artifactId>guava</artifactId>
         </dependency>
         <dependency>
+            <groupId>com.google.code.findbugs</groupId>
+            <artifactId>jsr305</artifactId>
+        </dependency>
+        <dependency>
             <groupId>com.jcraft</groupId>
             <artifactId>jsch</artifactId>
         </dependency>

http://git-wip-us.apache.org/repos/asf/kylin/blob/df455081/core-common/src/main/java/org/apache/kylin/common/util/RangeUtil.java
----------------------------------------------------------------------
diff --git a/core-common/src/main/java/org/apache/kylin/common/util/RangeUtil.java b/core-common/src/main/java/org/apache/kylin/common/util/RangeUtil.java
index 1cd6282..6ef8c089 100644
--- a/core-common/src/main/java/org/apache/kylin/common/util/RangeUtil.java
+++ b/core-common/src/main/java/org/apache/kylin/common/util/RangeUtil.java
@@ -29,7 +29,6 @@ import com.google.common.collect.BoundType;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Maps;
 import com.google.common.collect.Range;
-import com.google.common.collect.Ranges;
 
 /**
  */
@@ -41,7 +40,7 @@ public class RangeUtil {
     public static <C extends Comparable<?>, V> NavigableMap<C, V> filter(NavigableMap<C, V> values, Range<C> filterRange) {
         if (filterRange == null || filterRange.isEmpty()) {
             return Maps.newTreeMap();
-        } else if (filterRange.equals(Ranges.all())) {
+        } else if (filterRange.equals(Range.all())) {
             return values;
         }
 
@@ -106,29 +105,29 @@ public class RangeUtil {
         if (!self.hasLowerBound()) {
             if (share.hasLowerBound()) {
                 if (share.lowerBoundType() == BoundType.CLOSED) {
-                    ret.add(Ranges.lessThan(share.lowerEndpoint()));
+                    ret.add(Range.lessThan(share.lowerEndpoint()));
                 } else {
-                    ret.add(Ranges.atMost(share.lowerEndpoint()));
+                    ret.add(Range.atMost(share.lowerEndpoint()));
                 }
             }
         } else {
             if (self.lowerEndpoint() != share.lowerEndpoint()) {
                 if (self.lowerBoundType() == BoundType.CLOSED) {
                     if (share.lowerBoundType() == BoundType.CLOSED) {
-                        ret.add(Ranges.closedOpen(self.lowerEndpoint(), share.lowerEndpoint()));
+                        ret.add(Range.closedOpen(self.lowerEndpoint(), share.lowerEndpoint()));
                     } else {
-                        ret.add(Ranges.closed(self.lowerEndpoint(), share.lowerEndpoint()));
+                        ret.add(Range.closed(self.lowerEndpoint(), share.lowerEndpoint()));
                     }
                 } else {
                     if (share.lowerBoundType() == BoundType.CLOSED) {
-                        ret.add(Ranges.open(self.lowerEndpoint(), share.lowerEndpoint()));
+                        ret.add(Range.open(self.lowerEndpoint(), share.lowerEndpoint()));
                     } else {
-                        ret.add(Ranges.openClosed(self.lowerEndpoint(), share.lowerEndpoint()));
+                        ret.add(Range.openClosed(self.lowerEndpoint(), share.lowerEndpoint()));
                     }
                 }
             } else {
                 if (self.lowerBoundType() == BoundType.CLOSED && share.lowerBoundType() == BoundType.OPEN) {
-                    ret.add(Ranges.closed(self.lowerEndpoint(), share.lowerEndpoint()));
+                    ret.add(Range.closed(self.lowerEndpoint(), share.lowerEndpoint()));
                 }
             }
         }
@@ -137,29 +136,29 @@ public class RangeUtil {
         if (!self.hasUpperBound()) {
             if (share.hasUpperBound()) {
                 if (share.upperBoundType() == BoundType.CLOSED) {
-                    ret.add(Ranges.greaterThan(share.upperEndpoint()));
+                    ret.add(Range.greaterThan(share.upperEndpoint()));
                 } else {
-                    ret.add(Ranges.atLeast(share.upperEndpoint()));
+                    ret.add(Range.atLeast(share.upperEndpoint()));
                 }
             }
         } else {
             if (self.upperEndpoint() != share.upperEndpoint()) {
                 if (self.upperBoundType() == BoundType.CLOSED) {
                     if (share.upperBoundType() == BoundType.CLOSED) {
-                        ret.add(Ranges.openClosed(share.upperEndpoint(), self.upperEndpoint()));
+                        ret.add(Range.openClosed(share.upperEndpoint(), self.upperEndpoint()));
                     } else {
-                        ret.add(Ranges.closed(share.upperEndpoint(), self.upperEndpoint()));
+                        ret.add(Range.closed(share.upperEndpoint(), self.upperEndpoint()));
                     }
                 } else {
                     if (share.upperBoundType() == BoundType.CLOSED) {
-                        ret.add(Ranges.open(share.upperEndpoint(), self.upperEndpoint()));
+                        ret.add(Range.open(share.upperEndpoint(), self.upperEndpoint()));
                     } else {
-                        ret.add(Ranges.closedOpen(share.upperEndpoint(), self.upperEndpoint()));
+                        ret.add(Range.closedOpen(share.upperEndpoint(), self.upperEndpoint()));
                     }
                 }
             } else {
                 if (self.upperBoundType() == BoundType.CLOSED && share.upperBoundType() == BoundType.OPEN) {
-                    ret.add(Ranges.closed(self.upperEndpoint(), share.upperEndpoint()));
+                    ret.add(Range.closed(self.upperEndpoint(), share.upperEndpoint()));
                 }
             }
         }
@@ -212,12 +211,12 @@ public class RangeUtil {
         for (int index = 1; index < values.size(); index++) {
             temp = iter.next();
             if (temp - lastEnd != 1) {
-                ranges.add(Ranges.closed(lastBegin, lastEnd));
+                ranges.add(Range.closed(lastBegin, lastEnd));
                 lastBegin = temp;
             }
             lastEnd = temp;
         }
-        ranges.add(Ranges.closed(lastBegin, lastEnd));
+        ranges.add(Range.closed(lastBegin, lastEnd));
         return ranges;
     }
 }

http://git-wip-us.apache.org/repos/asf/kylin/blob/df455081/core-common/src/test/java/org/apache/kylin/common/util/RangeTest.java
----------------------------------------------------------------------
diff --git a/core-common/src/test/java/org/apache/kylin/common/util/RangeTest.java b/core-common/src/test/java/org/apache/kylin/common/util/RangeTest.java
index f39c06b..d4e4cbf 100644
--- a/core-common/src/test/java/org/apache/kylin/common/util/RangeTest.java
+++ b/core-common/src/test/java/org/apache/kylin/common/util/RangeTest.java
@@ -23,7 +23,6 @@ import org.junit.Test;
 
 import com.google.common.collect.Lists;
 import com.google.common.collect.Range;
-import com.google.common.collect.Ranges;
 
 /**
  */
@@ -32,145 +31,145 @@ public class RangeTest {
 
     @Test
     public void extremeCase() {
-        Range r1 = Ranges.all();
-        Range r2 = Ranges.all();
+        Range r1 = Range.all();
+        Range r2 = Range.all();
 
-        Range a = Ranges.closedOpen(2, 5);
+        Range a = Range.closedOpen(2, 5);
 
         Assert.assertTrue(RangeUtil.remove(r1, r2).equals(Lists.newArrayList()));
-        Assert.assertTrue(RangeUtil.remove(r1, a).equals(Lists.newArrayList(Ranges.lessThan(2), Ranges.atLeast(5))));
+        Assert.assertTrue(RangeUtil.remove(r1, a).equals(Lists.newArrayList(Range.lessThan(2), Range.atLeast(5))));
     }
 
     @Test
     public void testClosed() {
 
-        Range anull = Ranges.closedOpen(0, 0);
-
-        Range r1 = Ranges.closed(2, 5);
-
-        Range a1 = Ranges.open(1, 2);
-        Range a2 = Ranges.open(1, 3);
-        Range a3 = Ranges.open(1, 5);
-        Range a4 = Ranges.open(1, 6);
-        Range a5 = Ranges.open(6, 7);
-        Range a6 = Ranges.open(5, 7);
-        Range a7 = Ranges.open(4, 7);
-        Range a8 = Ranges.open(2, 7);
-        Range a9 = Ranges.open(1, 7);
-
-        Range b1 = Ranges.closed(1, 2);
-        Range b2 = Ranges.closed(1, 3);
-        Range b3 = Ranges.closed(1, 5);
-        Range b4 = Ranges.closed(1, 6);
-        Range b5 = Ranges.closed(6, 7);
-        Range b6 = Ranges.closed(5, 7);
-        Range b7 = Ranges.closed(4, 7);
-        Range b8 = Ranges.closed(2, 7);
-        Range b9 = Ranges.closed(1, 7);
-
-        Range c1 = Ranges.open(2, 3);
-        Range c2 = Ranges.open(3, 4);
-        Range c3 = Ranges.open(4, 5);
-
-        Range d1 = Ranges.closed(2, 3);
-        Range d2 = Ranges.closed(3, 4);
-        Range d3 = Ranges.closed(4, 5);
+        Range anull = Range.closedOpen(0, 0);
+
+        Range r1 = Range.closed(2, 5);
+
+        Range a1 = Range.open(1, 2);
+        Range a2 = Range.open(1, 3);
+        Range a3 = Range.open(1, 5);
+        Range a4 = Range.open(1, 6);
+        Range a5 = Range.open(6, 7);
+        Range a6 = Range.open(5, 7);
+        Range a7 = Range.open(4, 7);
+        Range a8 = Range.open(2, 7);
+        Range a9 = Range.open(1, 7);
+
+        Range b1 = Range.closed(1, 2);
+        Range b2 = Range.closed(1, 3);
+        Range b3 = Range.closed(1, 5);
+        Range b4 = Range.closed(1, 6);
+        Range b5 = Range.closed(6, 7);
+        Range b6 = Range.closed(5, 7);
+        Range b7 = Range.closed(4, 7);
+        Range b8 = Range.closed(2, 7);
+        Range b9 = Range.closed(1, 7);
+
+        Range c1 = Range.open(2, 3);
+        Range c2 = Range.open(3, 4);
+        Range c3 = Range.open(4, 5);
+
+        Range d1 = Range.closed(2, 3);
+        Range d2 = Range.closed(3, 4);
+        Range d3 = Range.closed(4, 5);
 
         Assert.assertTrue(RangeUtil.remove(r1, anull).equals(Lists.newArrayList(r1)));
         Assert.assertTrue(RangeUtil.remove(r1, a1).equals(Lists.newArrayList(r1)));
-        Assert.assertTrue(RangeUtil.remove(r1, a2).equals(Lists.newArrayList(Ranges.closed(3, 5))));
-        Assert.assertTrue(RangeUtil.remove(r1, a3).equals(Lists.newArrayList(Ranges.closed(5, 5))));
+        Assert.assertTrue(RangeUtil.remove(r1, a2).equals(Lists.newArrayList(Range.closed(3, 5))));
+        Assert.assertTrue(RangeUtil.remove(r1, a3).equals(Lists.newArrayList(Range.closed(5, 5))));
         Assert.assertTrue(RangeUtil.remove(r1, a4).equals(Lists.newArrayList()));
         Assert.assertTrue(RangeUtil.remove(r1, a5).equals(Lists.newArrayList(r1)));
         Assert.assertTrue(RangeUtil.remove(r1, a6).equals(Lists.newArrayList(r1)));
-        Assert.assertTrue(RangeUtil.remove(r1, a7).equals(Lists.newArrayList(Ranges.closed(2, 4))));
-        Assert.assertTrue(RangeUtil.remove(r1, a8).equals(Lists.newArrayList(Ranges.closed(2, 2))));
+        Assert.assertTrue(RangeUtil.remove(r1, a7).equals(Lists.newArrayList(Range.closed(2, 4))));
+        Assert.assertTrue(RangeUtil.remove(r1, a8).equals(Lists.newArrayList(Range.closed(2, 2))));
         Assert.assertTrue(RangeUtil.remove(r1, a9).equals(Lists.newArrayList()));
 
-        Assert.assertTrue(RangeUtil.remove(r1, b1).equals(Lists.newArrayList(Ranges.openClosed(2, 5))));
-        Assert.assertTrue(RangeUtil.remove(r1, b2).equals(Lists.newArrayList(Ranges.openClosed(3, 5))));
+        Assert.assertTrue(RangeUtil.remove(r1, b1).equals(Lists.newArrayList(Range.openClosed(2, 5))));
+        Assert.assertTrue(RangeUtil.remove(r1, b2).equals(Lists.newArrayList(Range.openClosed(3, 5))));
         Assert.assertTrue(RangeUtil.remove(r1, b3).equals(Lists.newArrayList()));
         Assert.assertTrue(RangeUtil.remove(r1, b4).equals(Lists.newArrayList()));
         Assert.assertTrue(RangeUtil.remove(r1, b5).equals(Lists.newArrayList(r1)));
-        Assert.assertTrue(RangeUtil.remove(r1, b6).equals(Lists.newArrayList(Ranges.closedOpen(2, 5))));
-        Assert.assertTrue(RangeUtil.remove(r1, b7).equals(Lists.newArrayList(Ranges.closedOpen(2, 4))));
+        Assert.assertTrue(RangeUtil.remove(r1, b6).equals(Lists.newArrayList(Range.closedOpen(2, 5))));
+        Assert.assertTrue(RangeUtil.remove(r1, b7).equals(Lists.newArrayList(Range.closedOpen(2, 4))));
         Assert.assertTrue(RangeUtil.remove(r1, b8).equals(Lists.newArrayList()));
         Assert.assertTrue(RangeUtil.remove(r1, b9).equals(Lists.newArrayList()));
 
-        Assert.assertTrue(RangeUtil.remove(r1, c1).equals(Lists.newArrayList(Ranges.closed(2, 2), Ranges.closed(3, 5))));
-        Assert.assertTrue(RangeUtil.remove(r1, c2).equals(Lists.newArrayList(Ranges.closed(2, 3), Ranges.closed(4, 5))));
-        Assert.assertTrue(RangeUtil.remove(r1, c3).equals(Lists.newArrayList(Ranges.closed(2, 4), Ranges.closed(5, 5))));
+        Assert.assertTrue(RangeUtil.remove(r1, c1).equals(Lists.newArrayList(Range.closed(2, 2), Range.closed(3, 5))));
+        Assert.assertTrue(RangeUtil.remove(r1, c2).equals(Lists.newArrayList(Range.closed(2, 3), Range.closed(4, 5))));
+        Assert.assertTrue(RangeUtil.remove(r1, c3).equals(Lists.newArrayList(Range.closed(2, 4), Range.closed(5, 5))));
 
-        Assert.assertTrue(RangeUtil.remove(r1, d1).equals(Lists.newArrayList(Ranges.openClosed(3, 5))));
-        Assert.assertTrue(RangeUtil.remove(r1, d2).equals(Lists.newArrayList(Ranges.closedOpen(2, 3), Ranges.openClosed(4, 5))));
-        Assert.assertTrue(RangeUtil.remove(r1, d3).equals(Lists.newArrayList(Ranges.closedOpen(2, 4))));
+        Assert.assertTrue(RangeUtil.remove(r1, d1).equals(Lists.newArrayList(Range.openClosed(3, 5))));
+        Assert.assertTrue(RangeUtil.remove(r1, d2).equals(Lists.newArrayList(Range.closedOpen(2, 3), Range.openClosed(4, 5))));
+        Assert.assertTrue(RangeUtil.remove(r1, d3).equals(Lists.newArrayList(Range.closedOpen(2, 4))));
 
     }
 
     @Test
     public void testOpen() {
 
-        Range anull = Ranges.closedOpen(0, 0);
-
-        Range r1 = Ranges.open(2, 5);
-
-        Range a1 = Ranges.open(1, 2);
-        Range a2 = Ranges.open(1, 3);
-        Range a3 = Ranges.open(1, 5);
-        Range a4 = Ranges.open(1, 6);
-        Range a5 = Ranges.open(6, 7);
-        Range a6 = Ranges.open(5, 7);
-        Range a7 = Ranges.open(4, 7);
-        Range a8 = Ranges.open(2, 7);
-        Range a9 = Ranges.open(1, 7);
-
-        Range b1 = Ranges.closed(1, 2);
-        Range b2 = Ranges.closed(1, 3);
-        Range b3 = Ranges.closed(1, 5);
-        Range b4 = Ranges.closed(1, 6);
-        Range b5 = Ranges.closed(6, 7);
-        Range b6 = Ranges.closed(5, 7);
-        Range b7 = Ranges.closed(4, 7);
-        Range b8 = Ranges.closed(2, 7);
-        Range b9 = Ranges.closed(1, 7);
-
-        Range c1 = Ranges.open(2, 3);
-        Range c2 = Ranges.open(3, 4);
-        Range c3 = Ranges.open(4, 5);
-
-        Range d1 = Ranges.closed(2, 3);
-        Range d2 = Ranges.closed(3, 4);
-        Range d3 = Ranges.closed(4, 5);
+        Range anull = Range.closedOpen(0, 0);
+
+        Range r1 = Range.open(2, 5);
+
+        Range a1 = Range.open(1, 2);
+        Range a2 = Range.open(1, 3);
+        Range a3 = Range.open(1, 5);
+        Range a4 = Range.open(1, 6);
+        Range a5 = Range.open(6, 7);
+        Range a6 = Range.open(5, 7);
+        Range a7 = Range.open(4, 7);
+        Range a8 = Range.open(2, 7);
+        Range a9 = Range.open(1, 7);
+
+        Range b1 = Range.closed(1, 2);
+        Range b2 = Range.closed(1, 3);
+        Range b3 = Range.closed(1, 5);
+        Range b4 = Range.closed(1, 6);
+        Range b5 = Range.closed(6, 7);
+        Range b6 = Range.closed(5, 7);
+        Range b7 = Range.closed(4, 7);
+        Range b8 = Range.closed(2, 7);
+        Range b9 = Range.closed(1, 7);
+
+        Range c1 = Range.open(2, 3);
+        Range c2 = Range.open(3, 4);
+        Range c3 = Range.open(4, 5);
+
+        Range d1 = Range.closed(2, 3);
+        Range d2 = Range.closed(3, 4);
+        Range d3 = Range.closed(4, 5);
 
         Assert.assertTrue(RangeUtil.remove(r1, anull).equals(Lists.newArrayList(r1)));
 
         Assert.assertTrue(RangeUtil.remove(r1, a1).equals(Lists.newArrayList(r1)));
-        Assert.assertTrue(RangeUtil.remove(r1, a2).equals(Lists.newArrayList(Ranges.closedOpen(3, 5))));
+        Assert.assertTrue(RangeUtil.remove(r1, a2).equals(Lists.newArrayList(Range.closedOpen(3, 5))));
         Assert.assertTrue(RangeUtil.remove(r1, a3).equals(Lists.newArrayList()));
         Assert.assertTrue(RangeUtil.remove(r1, a4).equals(Lists.newArrayList()));
         Assert.assertTrue(RangeUtil.remove(r1, a5).equals(Lists.newArrayList(r1)));
         Assert.assertTrue(RangeUtil.remove(r1, a6).equals(Lists.newArrayList(r1)));
-        Assert.assertTrue(RangeUtil.remove(r1, a7).equals(Lists.newArrayList(Ranges.openClosed(2, 4))));
+        Assert.assertTrue(RangeUtil.remove(r1, a7).equals(Lists.newArrayList(Range.openClosed(2, 4))));
         Assert.assertTrue(RangeUtil.remove(r1, a8).equals(Lists.newArrayList()));
         Assert.assertTrue(RangeUtil.remove(r1, a9).equals(Lists.newArrayList()));
 
-        Assert.assertTrue(RangeUtil.remove(r1, b1).equals(Lists.newArrayList(Ranges.open(2, 5))));
-        Assert.assertTrue(RangeUtil.remove(r1, b2).equals(Lists.newArrayList(Ranges.open(3, 5))));
+        Assert.assertTrue(RangeUtil.remove(r1, b1).equals(Lists.newArrayList(Range.open(2, 5))));
+        Assert.assertTrue(RangeUtil.remove(r1, b2).equals(Lists.newArrayList(Range.open(3, 5))));
         Assert.assertTrue(RangeUtil.remove(r1, b3).equals(Lists.newArrayList()));
         Assert.assertTrue(RangeUtil.remove(r1, b4).equals(Lists.newArrayList()));
         Assert.assertTrue(RangeUtil.remove(r1, b5).equals(Lists.newArrayList(r1)));
-        Assert.assertTrue(RangeUtil.remove(r1, b6).equals(Lists.newArrayList(Ranges.open(2, 5))));
-        Assert.assertTrue(RangeUtil.remove(r1, b7).equals(Lists.newArrayList(Ranges.open(2, 4))));
+        Assert.assertTrue(RangeUtil.remove(r1, b6).equals(Lists.newArrayList(Range.open(2, 5))));
+        Assert.assertTrue(RangeUtil.remove(r1, b7).equals(Lists.newArrayList(Range.open(2, 4))));
         Assert.assertTrue(RangeUtil.remove(r1, b8).equals(Lists.newArrayList()));
         Assert.assertTrue(RangeUtil.remove(r1, b9).equals(Lists.newArrayList()));
 
-        Assert.assertTrue(RangeUtil.remove(r1, c1).equals(Lists.newArrayList(Ranges.closedOpen(3, 5))));
-        Assert.assertTrue(RangeUtil.remove(r1, c2).equals(Lists.newArrayList(Ranges.openClosed(2, 3), Ranges.closedOpen(4, 5))));
-        Assert.assertTrue(RangeUtil.remove(r1, c3).equals(Lists.newArrayList(Ranges.openClosed(2, 4))));
+        Assert.assertTrue(RangeUtil.remove(r1, c1).equals(Lists.newArrayList(Range.closedOpen(3, 5))));
+        Assert.assertTrue(RangeUtil.remove(r1, c2).equals(Lists.newArrayList(Range.openClosed(2, 3), Range.closedOpen(4, 5))));
+        Assert.assertTrue(RangeUtil.remove(r1, c3).equals(Lists.newArrayList(Range.openClosed(2, 4))));
 
-        Assert.assertTrue(RangeUtil.remove(r1, d1).equals(Lists.newArrayList(Ranges.open(3, 5))));
-        Assert.assertTrue(RangeUtil.remove(r1, d2).equals(Lists.newArrayList(Ranges.open(2, 3), Ranges.open(4, 5))));
-        Assert.assertTrue(RangeUtil.remove(r1, d3).equals(Lists.newArrayList(Ranges.open(2, 4))));
+        Assert.assertTrue(RangeUtil.remove(r1, d1).equals(Lists.newArrayList(Range.open(3, 5))));
+        Assert.assertTrue(RangeUtil.remove(r1, d2).equals(Lists.newArrayList(Range.open(2, 3), Range.open(4, 5))));
+        Assert.assertTrue(RangeUtil.remove(r1, d3).equals(Lists.newArrayList(Range.open(2, 4))));
 
     }
 }

http://git-wip-us.apache.org/repos/asf/kylin/blob/df455081/core-common/src/test/java/org/apache/kylin/common/util/RangeUtilTest.java
----------------------------------------------------------------------
diff --git a/core-common/src/test/java/org/apache/kylin/common/util/RangeUtilTest.java b/core-common/src/test/java/org/apache/kylin/common/util/RangeUtilTest.java
index 0a5df77..5bfec36 100644
--- a/core-common/src/test/java/org/apache/kylin/common/util/RangeUtilTest.java
+++ b/core-common/src/test/java/org/apache/kylin/common/util/RangeUtilTest.java
@@ -28,7 +28,6 @@ import org.junit.Assert;
 import org.junit.Test;
 
 import com.google.common.collect.Range;
-import com.google.common.collect.Ranges;
 import com.google.common.collect.Sets;
 
 /**
@@ -40,31 +39,31 @@ public class RangeUtilTest {
         map.put(3, 3);
         map.put(1, 1);
         map.put(2, 2);
-        Map<Integer, Integer> subMap = RangeUtil.filter(map, Ranges.<Integer> all());
+        Map<Integer, Integer> subMap = RangeUtil.filter(map, Range.<Integer> all());
         Assert.assertEquals(subMap.size(), 3);
 
-        subMap = RangeUtil.filter(map, Ranges.atLeast(2));
+        subMap = RangeUtil.filter(map, Range.atLeast(2));
         Assert.assertEquals(subMap.size(), 2);
 
-        subMap = RangeUtil.filter(map, Ranges.greaterThan(2));
+        subMap = RangeUtil.filter(map, Range.greaterThan(2));
         Assert.assertEquals(subMap.size(), 1);
 
-        subMap = RangeUtil.filter(map, Ranges.greaterThan(0));
+        subMap = RangeUtil.filter(map, Range.greaterThan(0));
         Assert.assertEquals(subMap.size(), 3);
 
-        subMap = RangeUtil.filter(map, Ranges.greaterThan(5));
+        subMap = RangeUtil.filter(map, Range.greaterThan(5));
         Assert.assertEquals(subMap.size(), 0);
 
-        subMap = RangeUtil.filter(map, Ranges.atMost(2));
+        subMap = RangeUtil.filter(map, Range.atMost(2));
         Assert.assertEquals(subMap.size(), 2);
 
-        subMap = RangeUtil.filter(map, Ranges.lessThan(2));
+        subMap = RangeUtil.filter(map, Range.lessThan(2));
         Assert.assertEquals(subMap.size(), 1);
 
-        subMap = RangeUtil.filter(map, Ranges.lessThan(5));
+        subMap = RangeUtil.filter(map, Range.lessThan(5));
         Assert.assertEquals(subMap.size(), 3);
 
-        subMap = RangeUtil.filter(map, Ranges.lessThan(0));
+        subMap = RangeUtil.filter(map, Range.lessThan(0));
         Assert.assertEquals(subMap.size(), 0);
     }
 

http://git-wip-us.apache.org/repos/asf/kylin/blob/df455081/core-cube/pom.xml
----------------------------------------------------------------------
diff --git a/core-cube/pom.xml b/core-cube/pom.xml
index cd65237..8bc41fe 100644
--- a/core-cube/pom.xml
+++ b/core-cube/pom.xml
@@ -38,12 +38,10 @@
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-core-metadata</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-core-dictionary</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
 
         <dependency>
@@ -61,7 +59,6 @@
             <artifactId>kylin-core-common</artifactId>
             <type>test-jar</type>
             <scope>test</scope>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>junit</groupId>

http://git-wip-us.apache.org/repos/asf/kylin/blob/df455081/core-dictionary/pom.xml
----------------------------------------------------------------------
diff --git a/core-dictionary/pom.xml b/core-dictionary/pom.xml
index 69209d0..9199787 100644
--- a/core-dictionary/pom.xml
+++ b/core-dictionary/pom.xml
@@ -40,7 +40,6 @@
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-core-metadata</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
 
         <!-- Env & Test -->
@@ -54,7 +53,6 @@
             <artifactId>kylin-core-common</artifactId>
             <type>test-jar</type>
             <scope>test</scope>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>junit</groupId>

http://git-wip-us.apache.org/repos/asf/kylin/blob/df455081/core-job/pom.xml
----------------------------------------------------------------------
diff --git a/core-job/pom.xml b/core-job/pom.xml
index a3c1d82..7210fd1 100644
--- a/core-job/pom.xml
+++ b/core-job/pom.xml
@@ -40,7 +40,6 @@
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-core-cube</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
 
         <dependency>
@@ -60,7 +59,6 @@
             <artifactId>kylin-core-common</artifactId>
             <type>test-jar</type>
             <scope>test</scope>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>junit</groupId>

http://git-wip-us.apache.org/repos/asf/kylin/blob/df455081/core-metadata/pom.xml
----------------------------------------------------------------------
diff --git a/core-metadata/pom.xml b/core-metadata/pom.xml
index 6f0d91e..1405ac7 100644
--- a/core-metadata/pom.xml
+++ b/core-metadata/pom.xml
@@ -40,19 +40,15 @@
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-core-common</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
 
         <dependency>
             <groupId>net.sf.ehcache</groupId>
             <artifactId>ehcache</artifactId>
-            <version>${ehcache.version}</version>
         </dependency>
-
         <dependency>
             <groupId>org.roaringbitmap</groupId>
             <artifactId>RoaringBitmap</artifactId>
-            <version>${roaring.version}</version>
         </dependency>
 
         <!-- Env & Test -->
@@ -61,7 +57,6 @@
             <artifactId>kylin-core-common</artifactId>
             <type>test-jar</type>
             <scope>test</scope>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.commons</groupId>

http://git-wip-us.apache.org/repos/asf/kylin/blob/df455081/core-storage/pom.xml
----------------------------------------------------------------------
diff --git a/core-storage/pom.xml b/core-storage/pom.xml
index d8c1a29..7f6bb1e 100644
--- a/core-storage/pom.xml
+++ b/core-storage/pom.xml
@@ -40,7 +40,6 @@
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-core-cube</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
 
         <!-- Env & Test -->
@@ -49,7 +48,6 @@
             <artifactId>kylin-core-common</artifactId>
             <type>test-jar</type>
             <scope>test</scope>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>junit</groupId>

http://git-wip-us.apache.org/repos/asf/kylin/blob/df455081/core-storage/src/main/java/org/apache/kylin/storage/cache/TsConditionExtractor.java
----------------------------------------------------------------------
diff --git a/core-storage/src/main/java/org/apache/kylin/storage/cache/TsConditionExtractor.java b/core-storage/src/main/java/org/apache/kylin/storage/cache/TsConditionExtractor.java
index f972910..932bd44 100644
--- a/core-storage/src/main/java/org/apache/kylin/storage/cache/TsConditionExtractor.java
+++ b/core-storage/src/main/java/org/apache/kylin/storage/cache/TsConditionExtractor.java
@@ -25,7 +25,6 @@ import org.apache.kylin.metadata.filter.TupleFilter;
 import org.apache.kylin.metadata.model.TblColRef;
 
 import com.google.common.collect.Range;
-import com.google.common.collect.Ranges;
 
 /**
  */
@@ -42,12 +41,12 @@ public class TsConditionExtractor {
 
     private static Range<Long> extractTsConditionInternal(TupleFilter filter, TblColRef colRef) {
         if (filter == null) {
-            return Ranges.all();
+            return Range.all();
         }
 
         if (filter instanceof LogicalTupleFilter) {
             if (filter.getOperator() == TupleFilter.FilterOperatorEnum.AND) {
-                Range<Long> ret = Ranges.all();
+                Range<Long> ret = Range.all();
                 for (TupleFilter child : filter.getChildren()) {
                     Range childRange = extractTsConditionInternal(child, colRef);
                     if (childRange != null) {
@@ -64,14 +63,14 @@ public class TsConditionExtractor {
             } else {
                 //for conditions like date > DATE'2000-11-11' OR date < DATE '1999-01-01'
                 //we will use Ranges.all() rather than two ranges to represent them
-                return Ranges.all();
+                return Range.all();
             }
         }
 
         if (filter instanceof CompareTupleFilter) {
             CompareTupleFilter compareTupleFilter = (CompareTupleFilter) filter;
             if (compareTupleFilter.getColumn() == null)// column will be null at filters like " 1<>1"
-                return Ranges.all();
+                return Range.all();
 
             if (compareTupleFilter.getColumn().equals(colRef)) {
                 Object firstValue = compareTupleFilter.getFirstValue();
@@ -79,19 +78,19 @@ public class TsConditionExtractor {
                 switch (compareTupleFilter.getOperator()) {
                 case EQ:
                     t = DateFormat.stringToMillis((String) firstValue);
-                    return Ranges.closed(t, t);
+                    return Range.closed(t, t);
                 case LT:
                     t = DateFormat.stringToMillis((String) firstValue);
-                    return Ranges.lessThan(t);
+                    return Range.lessThan(t);
                 case LTE:
                     t = DateFormat.stringToMillis((String) firstValue);
-                    return Ranges.atMost(t);
+                    return Range.atMost(t);
                 case GT:
                     t = DateFormat.stringToMillis((String) firstValue);
-                    return Ranges.greaterThan(t);
+                    return Range.greaterThan(t);
                 case GTE:
                     t = DateFormat.stringToMillis((String) firstValue);
-                    return Ranges.atLeast(t);
+                    return Range.atLeast(t);
                 case NEQ:
                 case IN://not handled for now
                     break;
@@ -99,6 +98,6 @@ public class TsConditionExtractor {
                 }
             }
         }
-        return Ranges.all();
+        return Range.all();
     }
 }

http://git-wip-us.apache.org/repos/asf/kylin/blob/df455081/engine-mr/pom.xml
----------------------------------------------------------------------
diff --git a/engine-mr/pom.xml b/engine-mr/pom.xml
index 2f6ca79..49a4b4e 100644
--- a/engine-mr/pom.xml
+++ b/engine-mr/pom.xml
@@ -42,22 +42,18 @@
             <artifactId>kylin-core-common</artifactId>
             <type>test-jar</type>
             <scope>test</scope>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-core-cube</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-core-job</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-core-storage</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
 
         <!-- Env & Test -->

http://git-wip-us.apache.org/repos/asf/kylin/blob/df455081/engine-spark/pom.xml
----------------------------------------------------------------------
diff --git a/engine-spark/pom.xml b/engine-spark/pom.xml
index 004549d..fe7465a 100644
--- a/engine-spark/pom.xml
+++ b/engine-spark/pom.xml
@@ -40,13 +40,11 @@
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-storage-hbase</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
 
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-core-job</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
 
         <!-- Spark dependency -->
@@ -97,7 +95,6 @@
             <artifactId>kylin-storage-hbase</artifactId>
             <type>test-jar</type>
             <scope>test</scope>
-            <version>${project.parent.version}</version>
         </dependency>
 
         <dependency>
@@ -105,7 +102,6 @@
             <artifactId>kylin-core-common</artifactId>
             <type>test-jar</type>
             <scope>test</scope>
-            <version>${project.parent.version}</version>
         </dependency>
 
         <dependency>
@@ -128,8 +124,6 @@
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-shade-plugin</artifactId>
-                <version>2.3</version>
-
                 <executions>
                     <execution>
                         <phase>package</phase>

http://git-wip-us.apache.org/repos/asf/kylin/blob/df455081/engine-streaming/pom.xml
----------------------------------------------------------------------
diff --git a/engine-streaming/pom.xml b/engine-streaming/pom.xml
index 85f2750..ce15027 100644
--- a/engine-streaming/pom.xml
+++ b/engine-streaming/pom.xml
@@ -40,12 +40,10 @@
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-core-cube</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-core-storage</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
 
         <!-- Env & Test -->
@@ -54,7 +52,6 @@
             <artifactId>kylin-core-common</artifactId>
             <type>test-jar</type>
             <scope>test</scope>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.hadoop</groupId>

http://git-wip-us.apache.org/repos/asf/kylin/blob/df455081/kylin-it/pom.xml
----------------------------------------------------------------------
diff --git a/kylin-it/pom.xml b/kylin-it/pom.xml
index a96dcd9..901f981 100644
--- a/kylin-it/pom.xml
+++ b/kylin-it/pom.xml
@@ -40,38 +40,32 @@
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>atopcalcite</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-server</artifactId>
-            <version>${project.parent.version}</version>
             <classifier>classes</classifier>
+            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-core-storage</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-source-hive</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-jdbc</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-storage-hbase</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-query</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.calcite</groupId>
@@ -101,40 +95,34 @@
             <artifactId>kylin-core-common</artifactId>
             <type>test-jar</type>
             <scope>test</scope>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-core-cube</artifactId>
             <type>test-jar</type>
             <scope>test</scope>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-core-storage</artifactId>
             <type>test-jar</type>
             <scope>test</scope>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-core-job</artifactId>
             <type>test-jar</type>
             <scope>test</scope>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-storage-hbase</artifactId>
             <type>test-jar</type>
             <scope>test</scope>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.hive.hcatalog</groupId>
             <artifactId>hive-hcatalog-core</artifactId>
-            <version>${hive-hcatalog.version}</version>
             <scope>provided</scope>
         </dependency>
         <dependency>
@@ -142,7 +130,6 @@
             <artifactId>kylin-assembly</artifactId>
             <type>test-jar</type>
             <scope>test</scope>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.maven</groupId>
@@ -241,7 +228,6 @@
         <dependency>
             <groupId>org.apache.hbase</groupId>
             <artifactId>hbase-testing-util</artifactId>
-            <version>${hbase-hadoop2.version}</version>
             <scope>test</scope>
             <exclusions>
                 <exclusion>
@@ -257,7 +243,6 @@
         <dependency>
             <groupId>org.apache.kafka</groupId>
             <artifactId>kafka_2.10</artifactId>
-            <version>${kafka.version}</version>
             <scope>provided</scope>
         </dependency>
     </dependencies>
@@ -274,7 +259,6 @@
                     <plugin>
                         <groupId>org.apache.maven.plugins</groupId>
                         <artifactId>maven-failsafe-plugin</artifactId>
-                        <version>2.16</version>
                         <executions>
                             <execution>
                                 <id>integration-tests</id>
@@ -305,7 +289,6 @@
                     <plugin>
                         <groupId>org.codehaus.mojo</groupId>
                         <artifactId>exec-maven-plugin</artifactId>
-                        <version>1.4.0</version>
                         <executions>
                             <execution>
                                 <id>build_cube_with_engine</id>
@@ -388,7 +371,6 @@
                             <dependency>
                                 <groupId>org.apache.maven.doxia</groupId>
                                 <artifactId>doxia-core</artifactId>
-                                <version>1.6</version>
                                 <exclusions>
                                     <exclusion>
                                         <groupId>xerces</groupId>
@@ -401,7 +383,6 @@
                     <plugin>
                         <groupId>net.ju-n.maven.plugins</groupId>
                         <artifactId>checksum-maven-plugin</artifactId>
-                        <version>1.2</version>
                         <executions>
                             <execution>
                                 <goals>

http://git-wip-us.apache.org/repos/asf/kylin/blob/df455081/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index a1d140d..4da7af5 100644
--- a/pom.xml
+++ b/pom.xml
@@ -43,7 +43,6 @@
         <!-- General Properties -->
         <javaVersion>1.7</javaVersion>
         <maven-model.version>3.3.9</maven-model.version>
-        <maven-release.version>2.5.1</maven-release.version>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
         <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
 
@@ -56,54 +55,60 @@
         <hbase-hadoop2.version>0.98.8-hadoop2</hbase-hadoop2.version>
         <kafka.version>0.8.1</kafka.version>
 
-        <!-- Dependency versions -->
+        <!-- Test Dependency versions -->
         <antlr.version>3.4</antlr.version>
-        <junit.version>4.11</junit.version>
-        <mrunit.version>1.0.0</mrunit.version>
-        <dbunit.version>2.5.0</dbunit.version>
-        <h2.version>1.3.174</h2.version>
+        <junit.version>4.12</junit.version>
+        <mrunit.version>1.1.0</mrunit.version>
+        <dbunit.version>2.5.2</dbunit.version>
+        <h2.version>1.4.192</h2.version>
 
         <!-- Commons -->
-        <commons-cli.version>1.2</commons-cli.version>
+        <commons-cli.version>1.3.1</commons-cli.version>
         <commons-lang.version>2.6</commons-lang.version>
         <commons-lang3.version>3.4</commons-lang3.version>
-        <commons-collections.version>3.2.1</commons-collections.version>
-        <commons-io.version>2.4</commons-io.version>
+        <commons-collections.version>3.2.2</commons-collections.version>
+        <commons-io.version>2.5</commons-io.version>
         <commons-daemon.version>1.0.15</commons-daemon.version>
-        <commons-email.version>1.1</commons-email.version>
-        <commons-math3.version>3.6</commons-math3.version>
+        <commons-email.version>1.4</commons-email.version>
+        <commons-math3.version>3.6.1</commons-math3.version>
 
         <!-- Spark -->
         <spark.version>1.3.0</spark.version>
 
         <!-- Utility -->
         <log4j.version>1.2.17</log4j.version>
-        <slf4j.version>1.7.7</slf4j.version>
-        <jackson.version>2.2.3</jackson.version>
-        <guava.version>12.0</guava.version>
-        <reflections.version>0.9.9-RC1</reflections.version>
-        <jsch.version>0.1.51</jsch.version>
-        <xerces.version>2.9.1</xerces.version>
-        <xalan.version>2.7.1</xalan.version>
+        <slf4j.version>1.7.21</slf4j.version>
+        <jackson.version>2.8.0</jackson.version>
+        <jsr305.version>3.0.1</jsr305.version>
+        <guava.version>14.0</guava.version>
+        <reflections.version>0.9.10</reflections.version>
+        <jsch.version>0.1.53</jsch.version>
+        <xerces.version>2.11.0</xerces.version>
+        <xalan.version>2.7.2</xalan.version>
         <compress-lzf.version>1.0.3</compress-lzf.version>
         <extendedset.version>1.3.4</extendedset.version>
-        <jetty.version>9.2.7.v20150116</jetty.version>
-        <kryo.version>3.0.3</kryo.version>
-        <ehcache.version>2.8.1</ehcache.version>
-        <apache-httpclient.version>4.5</apache-httpclient.version>
+        <jetty.version>9.3.10.v20160621</jetty.version>
+        <kryo.version>4.0.0</kryo.version>
+        <ehcache.version>2.10.2.2.21</ehcache.version>
+        <apache-httpclient.version>4.5.2</apache-httpclient.version>
         <roaring.version>0.6.18</roaring.version>
+        <cglib.version>3.2.4</cglib.version>
+        <supercsv.version>2.4.0</supercsv.version>
+        <cors.version>2.5</cors.version>
+        <tomcat.version>7.0.69</tomcat.version>
 
         <!-- REST Service -->
-        <spring.framework.version>3.1.2.RELEASE</spring.framework.version>
-        <spring.framework.security.extensions.version>1.0.1.RELEASE</spring.framework.security.extensions.version>
-        <opensaml.version>2.6.1</opensaml.version>
-        <spring.boot.version>1.2.7.RELEASE</spring.boot.version>
+        <spring.framework.version>3.2.17.RELEASE</spring.framework.version>
+        <spring.framework.security.version>3.1.2.RELEASE</spring.framework.security.version>
+        <spring.framework.security.extensions.version>1.0.2.RELEASE</spring.framework.security.extensions.version>
+        <opensaml.version>2.6.4</opensaml.version>
+        <aspectj.version>1.8.9</aspectj.version>
 
         <!-- Calcite Version -->
         <calcite.version>1.8.0</calcite.version>
 
         <!-- Curator.version Version -->
-        <curator.version>2.6.0</curator.version>
+        <curator.version>3.2.0</curator.version>
 
         <!-- Sonar -->
         <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
@@ -174,6 +179,150 @@
 
     <dependencyManagement>
         <dependencies>
+            <!-- Kylin -->
+            <dependency>
+                <groupId>org.apache.kylin</groupId>
+                <artifactId>atopcalcite</artifactId>
+                <version>${project.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.kylin</groupId>
+                <artifactId>kylin-core-common</artifactId>
+                <version>${project.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.kylin</groupId>
+                <artifactId>kylin-core-metadata</artifactId>
+                <version>${project.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.kylin</groupId>
+                <artifactId>kylin-core-dictionary</artifactId>
+                <version>${project.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.kylin</groupId>
+                <artifactId>kylin-core-cube</artifactId>
+                <version>${project.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.kylin</groupId>
+                <artifactId>kylin-core-job</artifactId>
+                <version>${project.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.kylin</groupId>
+                <artifactId>kylin-core-storage</artifactId>
+                <version>${project.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.kylin</groupId>
+                <artifactId>kylin-engine-mr</artifactId>
+                <version>${project.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.kylin</groupId>
+                <artifactId>kylin-engine-streaming</artifactId>
+                <version>${project.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.kylin</groupId>
+                <artifactId>kylin-engine-spark</artifactId>
+                <version>${project.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.kylin</groupId>
+                <artifactId>kylin-source-hive</artifactId>
+                <version>${project.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.kylin</groupId>
+                <artifactId>kylin-source-kafka</artifactId>
+                <version>${project.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.kylin</groupId>
+                <artifactId>kylin-storage-hbase</artifactId>
+                <version>${project.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.kylin</groupId>
+                <artifactId>kylin-query</artifactId>
+                <version>${project.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.kylin</groupId>
+                <artifactId>kylin-server-base</artifactId>
+                <version>${project.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.kylin</groupId>
+                <artifactId>kylin-server</artifactId>
+                <version>${project.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.kylin</groupId>
+                <artifactId>kylin-jdbc</artifactId>
+                <version>${project.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.kylin</groupId>
+                <artifactId>kylin-assembly</artifactId>
+                <version>${project.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.kylin</groupId>
+                <artifactId>kylin-tool</artifactId>
+                <version>${project.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.kylin</groupId>
+                <artifactId>kylin-it</artifactId>
+                <version>${project.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.kylin</groupId>
+                <artifactId>kylin-core-common</artifactId>
+                <version>${project.version}</version>
+                <type>test-jar</type>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.kylin</groupId>
+                <artifactId>kylin-core-storage</artifactId>
+                <version>${project.version}</version>
+                <type>test-jar</type>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.kylin</groupId>
+                <artifactId>kylin-storage-hbase</artifactId>
+                <version>${project.version}</version>
+                <type>test-jar</type>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.kylin</groupId>
+                <artifactId>kylin-server-base</artifactId>
+                <version>${project.version}</version>
+                <type>test-jar</type>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.kylin</groupId>
+                <artifactId>kylin-core-job</artifactId>
+                <version>${project.version}</version>
+                <type>test-jar</type>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.kylin</groupId>
+                <artifactId>kylin-core-cube</artifactId>
+                <version>${project.version}</version>
+                <type>test-jar</type>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.kylin</groupId>
+                <artifactId>kylin-assembly</artifactId>
+                <version>${project.version}</version>
+                <type>test-jar</type>
+            </dependency>
+
             <!-- Hadoop2 dependencies -->
             <dependency>
                 <groupId>org.apache.hadoop</groupId>
@@ -256,14 +405,23 @@
                 <version>${mrunit.version}</version>
                 <classifier>hadoop2</classifier>
             </dependency>
-
+            <dependency>
+                <groupId>org.apache.hbase</groupId>
+                <artifactId>hbase-testing-util</artifactId>
+                <version>${hbase-hadoop2.version}</version>
+                <scope>test</scope>
+            </dependency>
             <!-- Hive dependencies -->
             <dependency>
                 <groupId>org.apache.hive</groupId>
                 <artifactId>hive-jdbc</artifactId>
                 <version>${hive.version}</version>
             </dependency>
-
+            <dependency>
+                <groupId>org.apache.hive.hcatalog</groupId>
+                <artifactId>hive-hcatalog-core</artifactId>
+                <version>${hive-hcatalog.version}</version>
+            </dependency>
             <!-- Yarn dependencies -->
             <dependency>
                 <groupId>org.apache.hadoop</groupId>
@@ -305,18 +463,22 @@
                 <artifactId>spark-core_2.10</artifactId>
                 <version>${spark.version}</version>
             </dependency>
-
             <dependency>
                 <groupId>org.apache.spark</groupId>
                 <artifactId>spark-sql_2.10</artifactId>
                 <version>${spark.version}</version>
             </dependency>
-
             <dependency>
                 <groupId>org.apache.spark</groupId>
                 <artifactId>spark-hive_2.10</artifactId>
                 <version>${spark.version}</version>
             </dependency>
+            <dependency>
+                <groupId>org.apache.kafka</groupId>
+                <artifactId>kafka_2.10</artifactId>
+                <version>${kafka.version}</version>
+                <scope>provided</scope>
+            </dependency>
 
             <!-- Other dependencies -->
             <dependency>
@@ -401,6 +563,11 @@
                 <version>${commons-email.version}</version>
             </dependency>
             <dependency>
+                <groupId>com.google.code.findbugs</groupId>
+                <artifactId>jsr305</artifactId>
+                <version>${jsr305.version}</version>
+            </dependency>
+            <dependency>
                 <groupId>com.google.guava</groupId>
                 <artifactId>guava</artifactId>
                 <version>${guava.version}</version>
@@ -476,7 +643,113 @@
                 <artifactId>RoaringBitmap</artifactId>
                 <version>${roaring.version}</version>
             </dependency>
-
+            <dependency>
+                <groupId>cglib</groupId>
+                <artifactId>cglib</artifactId>
+                <version>${cglib.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>net.sf.supercsv</groupId>
+                <artifactId>super-csv</artifactId>
+                <version>${supercsv.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.aspectj</groupId>
+                <artifactId>aspectjrt</artifactId>
+                <version>${aspectj.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.aspectj</groupId>
+                <artifactId>aspectjweaver</artifactId>
+                <version>${aspectj.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>com.thetransactioncompany</groupId>
+                <artifactId>cors-filter</artifactId>
+                <version>${cors.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>net.sf.ehcache</groupId>
+                <artifactId>ehcache</artifactId>
+                <version>${ehcache.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opensaml</groupId>
+                <artifactId>opensaml</artifactId>
+                <version>${opensaml.version}</version>
+            </dependency>
+            <!-- Spring Core -->
+            <dependency>
+                <groupId>org.springframework</groupId>
+                <artifactId>spring-webmvc</artifactId>
+                <version>${spring.framework.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.springframework</groupId>
+                <artifactId>spring-jdbc</artifactId>
+                <version>${spring.framework.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.springframework</groupId>
+                <artifactId>spring-aop</artifactId>
+                <version>${spring.framework.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.springframework</groupId>
+                <artifactId>spring-context-support</artifactId>
+                <version>${spring.framework.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.springframework</groupId>
+                <artifactId>spring-test</artifactId>
+                <version>${spring.framework.version}</version>
+            </dependency>
+            <!-- Spring Security -->
+            <dependency>
+                <groupId>org.springframework.security</groupId>
+                <artifactId>spring-security-acl</artifactId>
+                <version>${spring.framework.security.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.springframework.security</groupId>
+                <artifactId>spring-security-ldap</artifactId>
+                <version>${spring.framework.security.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.springframework.security.extensions</groupId>
+                <artifactId>spring-security-saml2-core</artifactId>
+                <version>${spring.framework.security.extensions.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty</groupId>
+                <artifactId>jetty-server</artifactId>
+                <version>${jetty.version}</version>
+                <scope>test</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty</groupId>
+                <artifactId>jetty-webapp</artifactId>
+                <version>${jetty.version}</version>
+                <scope>test</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.tomcat</groupId>
+                <artifactId>tomcat-catalina</artifactId>
+                <version>${tomcat.version}</version>
+                <scope>provided</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.tomcat</groupId>
+                <artifactId>tomcat-jasper</artifactId>
+                <version>${tomcat.version}</version>
+                <scope>provided</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.tomcat.embed</groupId>
+                <artifactId>tomcat-embed-core</artifactId>
+                <version>${tomcat.version}</version>
+                <scope>provided</scope>
+            </dependency>
         </dependencies>
     </dependencyManagement>
 
@@ -498,16 +771,12 @@
     </repositories>
 
     <build>
-
         <pluginManagement>
-
             <plugins>
-
-
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-compiler-plugin</artifactId>
-                    <version>3.1</version>
+                    <version>3.5.1</version>
                     <configuration>
                         <source>${javaVersion}</source>
                         <target>${javaVersion}</target>
@@ -516,17 +785,17 @@
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-site-plugin</artifactId>
-                    <version>2.0</version>
+                    <version>3.5.1</version>
                 </plugin>
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-install-plugin</artifactId>
-                    <version>2.2</version>
+                    <version>2.5.2</version>
                 </plugin>
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-resources-plugin</artifactId>
-                    <version>2.4</version>
+                    <version>3.0.1</version>
                     <configuration>
                         <encoding>UTF-8</encoding>
                     </configuration>
@@ -534,7 +803,7 @@
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-jar-plugin</artifactId>
-                    <version>2.4</version>
+                    <version>3.0.2</version>
                     <executions>
                         <execution>
                             <goals>
@@ -570,7 +839,7 @@
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-source-plugin</artifactId>
-                    <version>2.1.2</version>
+                    <version>3.0.1</version>
                     <executions>
                         <execution>
                             <id>attach-sources</id>
@@ -600,12 +869,12 @@
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-release-plugin</artifactId>
-                    <version>${maven-release.version}</version>
+                    <version>2.5.3</version>
                 </plugin>
                 <plugin>
                     <groupId>org.jacoco</groupId>
                     <artifactId>jacoco-maven-plugin</artifactId>
-                    <version>0.7.0.201403182114</version>
+                    <version>0.7.7.201606060606</version>
                     <configuration>
                         <destFile>${sonar.jacoco.reportPath}</destFile>
                         <append>true</append>
@@ -622,7 +891,7 @@
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-checkstyle-plugin</artifactId>
-                    <version>2.13</version>
+                    <version>2.17</version>
                     <executions>
                         <execution>
                             <id>validate</id>
@@ -640,7 +909,11 @@
                         </execution>
                     </executions>
                 </plugin>
-
+                <plugin>
+                    <groupId>net.ju-n.maven.plugins</groupId>
+                    <artifactId>checksum-maven-plugin</artifactId>
+                    <version>1.3</version>
+                </plugin>
                 <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
                 <plugin>
                     <groupId>org.eclipse.m2e</groupId>
@@ -672,6 +945,16 @@
                         </lifecycleMappingMetadata>
                     </configuration>
                 </plugin>
+                <plugin>
+                    <groupId>org.codehaus.mojo</groupId>
+                    <artifactId>exec-maven-plugin</artifactId>
+                    <version>1.5.0</version>
+                </plugin>
+                <plugin>
+                    <groupId>org.springframework.boot</groupId>
+                    <artifactId>spring-boot-maven-plugin</artifactId>
+                    <version>1.3.6.RELEASE</version>
+                </plugin>
             </plugins>
         </pluginManagement>
     </build>
@@ -710,7 +993,6 @@
                     <plugin>
                         <groupId>org.apache.maven.plugins</groupId>
                         <artifactId>maven-compiler-plugin</artifactId>
-                        <version>2.5.1</version>
                         <configuration>
                             <fork>true</fork>
                             <meminitial>1024m</meminitial>
@@ -721,7 +1003,7 @@
                     <plugin>
                         <groupId>org.apache.maven.plugins</groupId>
                         <artifactId>maven-surefire-plugin</artifactId>
-                        <version>2.16</version>
+                        <version>2.19.1</version>
                         <configuration>
                             <reportsDirectory>${project.basedir}/../target/surefire-reports</reportsDirectory>
                             <excludes>
@@ -892,7 +1174,7 @@
                             <dependency>
                                 <groupId>org.apache.maven.doxia</groupId>
                                 <artifactId>doxia-core</artifactId>
-                                <version>1.6</version>
+                                <version>1.7</version>
                                 <exclusions>
                                     <exclusion>
                                         <groupId>xerces</groupId>
@@ -905,7 +1187,6 @@
                     <plugin>
                         <groupId>net.ju-n.maven.plugins</groupId>
                         <artifactId>checksum-maven-plugin</artifactId>
-                        <version>1.2</version>
                         <executions>
                             <execution>
                                 <goals>

http://git-wip-us.apache.org/repos/asf/kylin/blob/df455081/query/pom.xml
----------------------------------------------------------------------
diff --git a/query/pom.xml b/query/pom.xml
index f4c7e50..f2fecb3 100644
--- a/query/pom.xml
+++ b/query/pom.xml
@@ -41,12 +41,10 @@
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>atopcalcite</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-core-storage</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.calcite</groupId>
@@ -76,20 +74,17 @@
             <artifactId>kylin-core-common</artifactId>
             <type>test-jar</type>
             <scope>test</scope>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-storage-hbase</artifactId>
             <scope>test</scope>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-storage-hbase</artifactId>
             <type>test-jar</type>
             <scope>test</scope>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>xerces</groupId>
@@ -163,7 +158,6 @@
         <dependency>
             <groupId>org.apache.hbase</groupId>
             <artifactId>hbase-testing-util</artifactId>
-            <version>${hbase-hadoop2.version}</version>
             <scope>test</scope>
             <exclusions>
                 <exclusion>
@@ -213,7 +207,6 @@
                             <dependency>
                                 <groupId>org.apache.maven.doxia</groupId>
                                 <artifactId>doxia-core</artifactId>
-                                <version>1.6</version>
                                 <exclusions>
                                     <exclusion>
                                         <groupId>xerces</groupId>
@@ -226,7 +219,6 @@
                     <plugin>
                         <groupId>net.ju-n.maven.plugins</groupId>
                         <artifactId>checksum-maven-plugin</artifactId>
-                        <version>1.2</version>
                         <executions>
                             <execution>
                                 <goals>

http://git-wip-us.apache.org/repos/asf/kylin/blob/df455081/server-base/pom.xml
----------------------------------------------------------------------
diff --git a/server-base/pom.xml b/server-base/pom.xml
index c0d48c9..e2750ea 100644
--- a/server-base/pom.xml
+++ b/server-base/pom.xml
@@ -39,7 +39,6 @@
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-query</artifactId>
-            <version>${project.parent.version}</version>
             <exclusions>
                 <exclusion>
                     <groupId>javax.servlet</groupId>
@@ -54,137 +53,73 @@
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-storage-hbase</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-source-hive</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-source-kafka</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
 
         <dependency>
             <groupId>net.sf.ehcache</groupId>
             <artifactId>ehcache</artifactId>
-            <version>${ehcache.version}</version>
         </dependency>
         <dependency>
             <groupId>cglib</groupId>
             <artifactId>cglib</artifactId>
-            <version>2.2.2</version>
         </dependency>
         <dependency>
             <groupId>net.sf.supercsv</groupId>
             <artifactId>super-csv</artifactId>
-            <version>2.1.0</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-web</artifactId>
-            <version>${spring.boot.version}</version>
-            <exclusions>
-                <exclusion>
-                    <groupId>org.springframework.boot</groupId>
-                    <artifactId>spring-boot-starter-tomcat</artifactId>
-                </exclusion>
-                <exclusion>
-                    <groupId>org.slf4j</groupId>
-                    <artifactId>log4j-over-slf4j</artifactId>
-                </exclusion>
-                <exclusion>
-                    <groupId>ch.qos.logback</groupId>
-                    <artifactId>logback-classic</artifactId>
-                </exclusion>
-            </exclusions>
         </dependency>
 
         <!-- Spring Core -->
         <dependency>
             <groupId>org.springframework</groupId>
-            <artifactId>spring-beans</artifactId>
-            <version>${spring.framework.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework</groupId>
             <artifactId>spring-webmvc</artifactId>
-            <version>${spring.framework.version}</version>
         </dependency>
         <dependency>
             <groupId>org.springframework</groupId>
             <artifactId>spring-jdbc</artifactId>
-            <version>${spring.framework.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework</groupId>
-            <artifactId>spring-web</artifactId>
-            <version>${spring.framework.version}</version>
-            <type>jar</type>
         </dependency>
         <dependency>
             <groupId>org.springframework</groupId>
-            <artifactId>spring-core</artifactId>
-            <version>${spring.framework.version}</version>
-            <type>jar</type>
+            <artifactId>spring-aop</artifactId>
         </dependency>
         <dependency>
             <groupId>org.springframework</groupId>
-            <artifactId>spring-aop</artifactId>
-            <version>${spring.framework.version}</version>
-            <type>jar</type>
+            <artifactId>spring-context-support</artifactId>
         </dependency>
         <dependency>
             <groupId>org.springframework</groupId>
             <artifactId>spring-test</artifactId>
-            <version>${spring.framework.version}</version>
         </dependency>
 
         <!-- Spring Security -->
         <dependency>
             <groupId>org.springframework.security</groupId>
-            <artifactId>spring-security-core</artifactId>
-            <version>${spring.framework.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.security</groupId>
-            <artifactId>spring-security-web</artifactId>
-            <version>${spring.framework.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.security</groupId>
-            <artifactId>spring-security-config</artifactId>
-            <version>${spring.framework.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.security</groupId>
             <artifactId>spring-security-acl</artifactId>
-            <version>${spring.framework.version}</version>
         </dependency>
         <dependency>
             <groupId>org.springframework.security</groupId>
             <artifactId>spring-security-ldap</artifactId>
-            <version>${spring.framework.version}</version>
         </dependency>
         <dependency>
             <groupId>org.springframework.security.extensions</groupId>
             <artifactId>spring-security-saml2-core</artifactId>
-            <version>${spring.framework.security.extensions.version}</version>
         </dependency>
 
         <!-- spring aop -->
         <dependency>
             <groupId>org.aspectj</groupId>
             <artifactId>aspectjrt</artifactId>
-            <version>1.6.11</version>
         </dependency>
         <dependency>
             <groupId>org.aspectj</groupId>
             <artifactId>aspectjweaver</artifactId>
-            <version>1.6.11</version>
         </dependency>
 
         <!-- Test & Env -->
@@ -193,13 +128,11 @@
             <artifactId>kylin-core-common</artifactId>
             <type>test-jar</type>
             <scope>test</scope>
-            <version>${project.parent.version}</version>
         </dependency>
 
         <dependency>
             <groupId>org.apache.tomcat</groupId>
             <artifactId>tomcat-catalina</artifactId>
-            <version>7.0.69</version>
             <scope>provided</scope>
         </dependency>
 
@@ -222,19 +155,11 @@
         <dependency>
             <groupId>org.eclipse.jetty</groupId>
             <artifactId>jetty-server</artifactId>
-            <version>${jetty.version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.eclipse.jetty</groupId>
-            <artifactId>jetty-servlet</artifactId>
-            <version>${jetty.version}</version>
             <scope>test</scope>
         </dependency>
         <dependency>
             <groupId>org.eclipse.jetty</groupId>
             <artifactId>jetty-webapp</artifactId>
-            <version>${jetty.version}</version>
             <scope>test</scope>
         </dependency>
 

http://git-wip-us.apache.org/repos/asf/kylin/blob/df455081/server/pom.xml
----------------------------------------------------------------------
diff --git a/server/pom.xml b/server/pom.xml
index 602dcad..1d87afd 100644
--- a/server/pom.xml
+++ b/server/pom.xml
@@ -41,7 +41,6 @@
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-server-base</artifactId>
-            <version>${project.parent.version}</version>
             <exclusions>
                 <exclusion>
                     <groupId>javax.servlet</groupId>
@@ -57,7 +56,6 @@
         <dependency>
             <groupId>com.thetransactioncompany</groupId>
             <artifactId>cors-filter</artifactId>
-            <version>1.3.2</version>
             <exclusions>
                 <exclusion>
                     <groupId>javax.servlet</groupId>
@@ -69,7 +67,6 @@
         <dependency>
             <groupId>org.opensaml</groupId>
             <artifactId>opensaml</artifactId>
-            <version>${opensaml.version}</version>
             <exclusions>
                 <exclusion>
                     <artifactId>xml-apis</artifactId>
@@ -113,28 +110,24 @@
             <artifactId>kylin-core-common</artifactId>
             <type>test-jar</type>
             <scope>test</scope>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-storage-hbase</artifactId>
             <type>test-jar</type>
             <scope>test</scope>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-server-base</artifactId>
             <type>test-jar</type>
             <scope>test</scope>
-            <version>${project.parent.version}</version>
         </dependency>
 
         <!-- depends on kylin-jdbc just for running jdbc test cases in server module -->
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-jdbc</artifactId>
-            <version>${project.parent.version}</version>
             <scope>test</scope>
         </dependency>
 
@@ -254,7 +247,6 @@
         <dependency>
             <groupId>org.apache.hive.hcatalog</groupId>
             <artifactId>hive-hcatalog-core</artifactId>
-            <version>${hive-hcatalog.version}</version>
             <scope>provided</scope>
             <exclusions>
                 <exclusion>
@@ -272,26 +264,22 @@
         <dependency>
             <groupId>org.apache.tomcat</groupId>
             <artifactId>tomcat-catalina</artifactId>
-            <version>7.0.69</version>
             <scope>provided</scope>
         </dependency>
         <dependency>
             <groupId>org.apache.tomcat</groupId>
             <artifactId>tomcat-jasper</artifactId>
-            <version>7.0.69</version>
             <scope>provided</scope>
         </dependency>
         <dependency>
             <groupId>org.apache.tomcat.embed</groupId>
             <artifactId>tomcat-embed-core</artifactId>
-            <version>7.0.69</version>
             <scope>provided</scope>
         </dependency>
 
         <dependency>
             <groupId>org.apache.hbase</groupId>
             <artifactId>hbase-testing-util</artifactId>
-            <version>${hbase-hadoop2.version}</version>
             <scope>test</scope>
             <exclusions>
                 <exclusion>
@@ -312,19 +300,11 @@
         <dependency>
             <groupId>org.eclipse.jetty</groupId>
             <artifactId>jetty-server</artifactId>
-            <version>${jetty.version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.eclipse.jetty</groupId>
-            <artifactId>jetty-servlet</artifactId>
-            <version>${jetty.version}</version>
             <scope>test</scope>
         </dependency>
         <dependency>
             <groupId>org.eclipse.jetty</groupId>
             <artifactId>jetty-webapp</artifactId>
-            <version>${jetty.version}</version>
             <scope>test</scope>
         </dependency>
         <dependency>
@@ -338,7 +318,6 @@
         <plugins>
             <plugin>
                 <artifactId>maven-war-plugin</artifactId>
-                <version>2.1.1</version>
                 <configuration>
                     <attachClasses>true</attachClasses>
                     <classesClassifier>classes</classesClassifier>
@@ -350,7 +329,6 @@
             <plugin>
                 <groupId>org.springframework.boot</groupId>
                 <artifactId>spring-boot-maven-plugin</artifactId>
-                <version>${spring.boot.version}</version>
             </plugin>
         </plugins>
     </build>

http://git-wip-us.apache.org/repos/asf/kylin/blob/df455081/source-hive/pom.xml
----------------------------------------------------------------------
diff --git a/source-hive/pom.xml b/source-hive/pom.xml
index 631e43e..c962ad7 100644
--- a/source-hive/pom.xml
+++ b/source-hive/pom.xml
@@ -40,7 +40,6 @@
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-engine-mr</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
 
         <!-- Env & Test -->
@@ -49,7 +48,6 @@
             <artifactId>kylin-core-common</artifactId>
             <type>test-jar</type>
             <scope>test</scope>
-            <version>${project.parent.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.hadoop</groupId>
@@ -64,7 +62,6 @@
         <dependency>
             <groupId>org.apache.hive.hcatalog</groupId>
             <artifactId>hive-hcatalog-core</artifactId>
-            <version>${hive-hcatalog.version}</version>
             <scope>provided</scope>
         </dependency>
         <dependency>

http://git-wip-us.apache.org/repos/asf/kylin/blob/df455081/source-kafka/pom.xml
----------------------------------------------------------------------
diff --git a/source-kafka/pom.xml b/source-kafka/pom.xml
index 228b956..519b279 100644
--- a/source-kafka/pom.xml
+++ b/source-kafka/pom.xml
@@ -40,13 +40,11 @@
         <dependency>
             <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-engine-streaming</artifactId>
-            <version>${project.parent.version}</version>
         </dependency>
 
         <dependency>
             <groupId>org.apache.kafka</groupId>
             <artifactId>kafka_2.10</artifactId>
-            <version>${kafka.version}</version>
             <scope>provided</scope>
         </dependency>
 
@@ -64,7 +62,6 @@
         <dependency>
             <groupId>org.apache.hive.hcatalog</groupId>
             <artifactId>hive-hcatalog-core</artifactId>
-            <version>${hive-hcatalog.version}</version>
             <scope>provided</scope>
         </dependency>
         <dependency>