You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lens.apache.org by su...@apache.org on 2014/12/15 07:54:13 UTC

incubator-lens git commit: LENS-121. Fix join chain destination table look up in CandidateTableResolver ( Amareshwari Sriramadasu via sumasai)

Repository: incubator-lens
Updated Branches:
  refs/heads/master bf6c614e5 -> d8027928c


LENS-121. Fix join chain destination table look up in CandidateTableResolver ( Amareshwari Sriramadasu via sumasai)


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

Branch: refs/heads/master
Commit: d8027928cf96e4d8e591cd121816ce6c27039520
Parents: bf6c614
Author: suma.shivaprasad <su...@inmobi.com>
Authored: Mon Dec 15 12:24:07 2014 +0530
Committer: suma.shivaprasad <su...@inmobi.com>
Committed: Mon Dec 15 12:24:07 2014 +0530

----------------------------------------------------------------------
 .../src/main/java/org/apache/lens/cube/metadata/JoinChain.java   | 4 +++-
 .../java/org/apache/lens/cube/parse/CandidateTableResolver.java  | 2 +-
 2 files changed, 4 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-lens/blob/d8027928/lens-cube/src/main/java/org/apache/lens/cube/metadata/JoinChain.java
----------------------------------------------------------------------
diff --git a/lens-cube/src/main/java/org/apache/lens/cube/metadata/JoinChain.java b/lens-cube/src/main/java/org/apache/lens/cube/metadata/JoinChain.java
index 0551803..d50c02c 100644
--- a/lens-cube/src/main/java/org/apache/lens/cube/metadata/JoinChain.java
+++ b/lens-cube/src/main/java/org/apache/lens/cube/metadata/JoinChain.java
@@ -188,13 +188,14 @@ public class JoinChain implements Named {
     this.paths.add(new Path(refs));
   }
 
+  private transient String destTable = null;
   /**
    * Get final destination table
    *
    * @return
    */
   public String getDestTable() {
-    String destTable = null;
+    if (destTable == null) {
     for (Path path : paths) {
       if (destTable == null) {
         destTable = path.getDestTable();
@@ -205,6 +206,7 @@ public class JoinChain implements Named {
         }
       }
     }
+    }
     return destTable;
   }
 

http://git-wip-us.apache.org/repos/asf/incubator-lens/blob/d8027928/lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java
----------------------------------------------------------------------
diff --git a/lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java b/lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java
index 92c6a17..dfb07aa 100644
--- a/lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java
+++ b/lens-cube/src/main/java/org/apache/lens/cube/parse/CandidateTableResolver.java
@@ -256,7 +256,7 @@ class CandidateTableResolver implements ContextRewriter {
 
         // go over join chains and prune facts that dont have any of the columns in each chain
         for (JoinChain chain : cubeql.getJoinchains().values()) {
-          OptionalDimCtx optdim = cubeql.getOptionalDimensionMap().get(chain.getDestTable());
+          OptionalDimCtx optdim = cubeql.getOptionalDimensionMap().get(cubeql.getCubeTbls().get(chain.getName()));
           if (!checkForColumnExists(cfact, chain.getSourceColumns())) {
             // check if chain is optional or not
             if (optdim == null || optdim.isRequiredInJoinChain