Repository: asterixdb
Updated Branches:
  refs/heads/master 5dcf139e5 -> 1e864a69e


[ASTERIXDB-2124] Throw NPE early

Change-Id: I84a458d2293450bce973788ac84b6fbc4c993a4a
Reviewed-on: https://asterix-gerrit.ics.uci.edu/2055
Reviewed-by: Ian Maxon <[email protected]>
Tested-by: Ian Maxon <[email protected]>
Reviewed-by: Murtadha Hubail <[email protected]>
Integration-Tests: Murtadha Hubail <[email protected]>
Tested-by: Murtadha Hubail <[email protected]>
Sonar-Qube: Jenkins <[email protected]>
Contrib: Jenkins <[email protected]>
Integration-Tests: Jenkins <[email protected]>


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

Branch: refs/heads/master
Commit: 1e864a69e0f31a23b711a221965166066671b05a
Parents: 5dcf139
Author: Till Westmann <[email protected]>
Authored: Sat Oct 14 17:47:36 2017 -0700
Committer: Till Westmann <[email protected]>
Committed: Thu Dec 14 14:50:19 2017 -0800

----------------------------------------------------------------------
 .../algebricks/core/algebra/base/LogicalVariable.java |  5 ++---
 .../expressions/VariableReferenceExpression.java      | 14 ++++++++------
 2 files changed, 10 insertions(+), 9 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/asterixdb/blob/1e864a69/hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/base/LogicalVariable.java
----------------------------------------------------------------------
diff --git 
a/hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/base/LogicalVariable.java
 
b/hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/base/LogicalVariable.java
index 2023304..f3b9edc 100644
--- 
a/hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/base/LogicalVariable.java
+++ 
b/hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/base/LogicalVariable.java
@@ -48,11 +48,10 @@ public final class LogicalVariable {
 
     @Override
     public boolean equals(Object obj) {
-        if (!(obj instanceof LogicalVariable)) {
-            return false;
-        } else {
+        if (obj instanceof LogicalVariable) {
             return id == ((LogicalVariable) obj).getId();
         }
+        return false;
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/asterixdb/blob/1e864a69/hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/expressions/VariableReferenceExpression.java
----------------------------------------------------------------------
diff --git 
a/hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/expressions/VariableReferenceExpression.java
 
b/hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/expressions/VariableReferenceExpression.java
index 2ccf0c4..c1342cc 100644
--- 
a/hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/expressions/VariableReferenceExpression.java
+++ 
b/hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/expressions/VariableReferenceExpression.java
@@ -33,6 +33,9 @@ public class VariableReferenceExpression extends 
AbstractLogicalExpression {
     private LogicalVariable variable;
 
     public VariableReferenceExpression(int tupleRef, LogicalVariable variable) 
{
+        if (variable == null) {
+            throw new NullPointerException();
+        }
         this.tupleRef = tupleRef;
         this.variable = variable;
     }
@@ -73,17 +76,16 @@ public class VariableReferenceExpression extends 
AbstractLogicalExpression {
 
     @Override
     public boolean equals(Object obj) {
-        if (!(obj instanceof VariableReferenceExpression)) {
-            return false;
-        } else {
-            return tupleRef == ((VariableReferenceExpression) obj).tupleRef
-                    && variable.equals(((VariableReferenceExpression) 
obj).getVariableReference());
+        if (obj instanceof VariableReferenceExpression) {
+            final VariableReferenceExpression varRefExpr = 
(VariableReferenceExpression) obj;
+            return tupleRef == varRefExpr.tupleRef && 
variable.equals(varRefExpr.getVariableReference());
         }
+        return false;
     }
 
     @Override
     public int hashCode() {
-        return tupleRef + variable.getId();
+        return tupleRef + variable.hashCode();
     }
 
     @Override

Reply via email to