[3/8] lens git commit: LENS-1474 : Fix NPE in ExpressionResolver for SegmentationCandidate

2017-10-04 Thread raju
LENS-1474 : Fix NPE in ExpressionResolver for SegmentationCandidate


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

Branch: refs/heads/current-release-line
Commit: ae6bda33ed501e15dceeecea83c86adf189e4453
Parents: 717214c
Author: Rajitha R 
Authored: Mon Sep 11 09:53:21 2017 +0530
Committer: rajub 
Committed: Thu Oct 5 11:12:15 2017 +0800

--
 .../apache/lens/cube/parse/ExpressionResolver.java | 17 +++--
 1 file changed, 11 insertions(+), 6 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/lens/blob/ae6bda33/lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java
--
diff --git 
a/lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java 
b/lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java
index 8906fae..822e25e 100644
--- a/lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java
+++ b/lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java
@@ -314,12 +314,14 @@ class ExpressionResolver implements ContextRewriter {
 }
 
 ExpressionContext getExpressionContext(String expr, String alias) {
-  for (ExpressionContext ec : allExprsQueried.get(expr)) {
-if (ec.getSrcAlias().equals(alias)) {
-  return ec;
+  if (allExprsQueried.get(expr) != null) {
+for (ExpressionContext ec : allExprsQueried.get(expr)) {
+  if (ec.getSrcAlias().equals(alias)) {
+return ec;
+  }
 }
   }
-  throw new IllegalArgumentException("no expression available for " + expr 
+ " alias:" + alias);
+  return null;
 }
 
 boolean hasMeasures(String expr, CubeInterface cube) {
@@ -511,8 +513,11 @@ class ExpressionResolver implements ContextRewriter {
   expressionContexts.add(expressionContext);
   for (StorageCandidate sc : scSet) {
 storageTableNames.add(sc.getStorageTable());
-expressionContexts.add(sc.getCubeQueryContext().getExprCtx()
-  .getExpressionContext(expressionContext.getExprCol().getName(), 
expressionContext.getSrcAlias()));
+ExpressionContext ex = 
sc.getCubeQueryContext().getExprCtx().getExpressionContext(expressionContext.
+getExprCol().getName(), expressionContext.getSrcAlias());
+if (ex != null) {
+  expressionContexts.add(ex);
+}
   }
   for (ExpressionContext ec : expressionContexts) {
 for (CandidateTable table : ec.evaluableExpressions.keySet()) {



lens git commit: LENS-1474 : Fix NPE in ExpressionResolver for SegmentationCandidate

2017-09-10 Thread amareshwari
Repository: lens
Updated Branches:
  refs/heads/master 7c9707148 -> 24d4f1531


LENS-1474 : Fix NPE in ExpressionResolver for SegmentationCandidate


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

Branch: refs/heads/master
Commit: 24d4f1531497e8b877fe185a0ef742b18acf125c
Parents: 7c97071
Author: Rajitha R 
Authored: Mon Sep 11 09:53:21 2017 +0530
Committer: Amareshwari Sriramadasu 
Committed: Mon Sep 11 09:53:21 2017 +0530

--
 .../apache/lens/cube/parse/ExpressionResolver.java | 17 +++--
 1 file changed, 11 insertions(+), 6 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/lens/blob/24d4f153/lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java
--
diff --git 
a/lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java 
b/lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java
index 1268ef7..553468f 100644
--- a/lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java
+++ b/lens-cube/src/main/java/org/apache/lens/cube/parse/ExpressionResolver.java
@@ -317,12 +317,14 @@ class ExpressionResolver implements ContextRewriter {
 }
 
 ExpressionContext getExpressionContext(String expr, String alias) {
-  for (ExpressionContext ec : allExprsQueried.get(expr)) {
-if (ec.getSrcAlias().equals(alias)) {
-  return ec;
+  if (allExprsQueried.get(expr) != null) {
+for (ExpressionContext ec : allExprsQueried.get(expr)) {
+  if (ec.getSrcAlias().equals(alias)) {
+return ec;
+  }
 }
   }
-  throw new IllegalArgumentException("no expression available for " + expr 
+ " alias:" + alias);
+  return null;
 }
 
 boolean hasMeasures(String expr, CubeInterface cube) {
@@ -540,8 +542,11 @@ class ExpressionResolver implements ContextRewriter {
   expressionContexts.add(expressionContext);
   for (StorageCandidate sc : scSet) {
 storageTableNames.add(sc.getStorageTable());
-expressionContexts.add(sc.getCubeQueryContext().getExprCtx()
-  .getExpressionContext(expressionContext.getExprCol().getName(), 
expressionContext.getSrcAlias()));
+ExpressionContext ex = 
sc.getCubeQueryContext().getExprCtx().getExpressionContext(expressionContext.
+getExprCol().getName(), expressionContext.getSrcAlias());
+if (ex != null) {
+  expressionContexts.add(ex);
+}
   }
   for (ExpressionContext ec : expressionContexts) {
 for (CandidateTable table : ec.evaluableExpressions.keySet()) {