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/04/26 10:19:24 UTC

kylin git commit: KYLIN-1612 Fix equals check on ColumnDesc and TableDesc

Repository: kylin
Updated Branches:
  refs/heads/master aebdd66fe -> a22200730


KYLIN-1612 Fix equals check on ColumnDesc and TableDesc


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

Branch: refs/heads/master
Commit: a2220073074d07d4cd52e5c66e8d83ef571ff500
Parents: aebdd66
Author: Li Yang <li...@apache.org>
Authored: Tue Apr 26 16:19:02 2016 +0800
Committer: Li Yang <li...@apache.org>
Committed: Tue Apr 26 16:19:14 2016 +0800

----------------------------------------------------------------------
 .../apache/kylin/metadata/model/ColumnDesc.java | 31 ++++++++++++++++++++
 .../apache/kylin/metadata/model/TableDesc.java  | 17 +++++++++++
 .../kylin/metadata/project/ProjectL2Cache.java  |  1 +
 3 files changed, 49 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/kylin/blob/a2220073/core-metadata/src/main/java/org/apache/kylin/metadata/model/ColumnDesc.java
----------------------------------------------------------------------
diff --git a/core-metadata/src/main/java/org/apache/kylin/metadata/model/ColumnDesc.java b/core-metadata/src/main/java/org/apache/kylin/metadata/model/ColumnDesc.java
index 2ddc75a..b48622a 100644
--- a/core-metadata/src/main/java/org/apache/kylin/metadata/model/ColumnDesc.java
+++ b/core-metadata/src/main/java/org/apache/kylin/metadata/model/ColumnDesc.java
@@ -145,6 +145,37 @@ public class ColumnDesc implements Serializable {
         return StringUtils.equalsIgnoreCase(table.getIdentity(), tableName) && //
                 StringUtils.equalsIgnoreCase(name, columnName);
     }
+    
+    @Override
+    public int hashCode() {
+        final int prime = 31;
+        int result = 1;
+        result = prime * result + ((name == null) ? 0 : name.hashCode());
+        result = prime * result + ((table == null) ? 0 : table.hashCode());
+        return result;
+    }
+
+    @Override
+    public boolean equals(Object obj) {
+        if (this == obj)
+            return true;
+        if (obj == null)
+            return false;
+        if (getClass() != obj.getClass())
+            return false;
+        ColumnDesc other = (ColumnDesc) obj;
+        if (name == null) {
+            if (other.name != null)
+                return false;
+        } else if (!name.equals(other.name))
+            return false;
+        if (table == null) {
+            if (other.table != null)
+                return false;
+        } else if (!table.equals(other.table))
+            return false;
+        return true;
+    }
 
     @Override
     public String toString() {

http://git-wip-us.apache.org/repos/asf/kylin/blob/a2220073/core-metadata/src/main/java/org/apache/kylin/metadata/model/TableDesc.java
----------------------------------------------------------------------
diff --git a/core-metadata/src/main/java/org/apache/kylin/metadata/model/TableDesc.java b/core-metadata/src/main/java/org/apache/kylin/metadata/model/TableDesc.java
index 65d85dd..9d016d3 100644
--- a/core-metadata/src/main/java/org/apache/kylin/metadata/model/TableDesc.java
+++ b/core-metadata/src/main/java/org/apache/kylin/metadata/model/TableDesc.java
@@ -163,6 +163,23 @@ public class TableDesc extends RootPersistentEntity implements ISourceAware {
             }
         }
     }
+    
+    @Override
+    public int hashCode() {
+        return getIdentity().hashCode();
+    }
+
+    @Override
+    public boolean equals(Object obj) {
+        if (this == obj)
+            return true;
+        if (!super.equals(obj))
+            return false;
+        if (getClass() != obj.getClass())
+            return false;
+        TableDesc other = (TableDesc) obj;
+        return getIdentity().equals(other.getIdentity());
+    }
 
     @Override
     public String toString() {

http://git-wip-us.apache.org/repos/asf/kylin/blob/a2220073/core-metadata/src/main/java/org/apache/kylin/metadata/project/ProjectL2Cache.java
----------------------------------------------------------------------
diff --git a/core-metadata/src/main/java/org/apache/kylin/metadata/project/ProjectL2Cache.java b/core-metadata/src/main/java/org/apache/kylin/metadata/project/ProjectL2Cache.java
index 3006773..da2cf98 100644
--- a/core-metadata/src/main/java/org/apache/kylin/metadata/project/ProjectL2Cache.java
+++ b/core-metadata/src/main/java/org/apache/kylin/metadata/project/ProjectL2Cache.java
@@ -160,6 +160,7 @@ class ProjectL2Cache {
     // ----------------------------------------------------------------------------
 
     private ProjectCache getCache(String project) {
+        project = ProjectInstance.getNormalizedProjectName(project);
         ProjectCache result = projectCaches.get(project);
         if (result == null) {
             result = loadCache(project);