You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by zh...@apache.org on 2020/06/06 03:38:41 UTC
[incubator-doris] branch master updated: [Bug] Fix bug that should
not use "!=" to judge the equivalence of Type (#3786)
This is an automated email from the ASF dual-hosted git repository.
zhaoc pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-doris.git
The following commit(s) were added to refs/heads/master by this push:
new ea5b3b2 [Bug] Fix bug that should not use "!=" to judge the equivalence of Type (#3786)
ea5b3b2 is described below
commit ea5b3b2d4c3ca0b01fbb617ebdc44232a1580e66
Author: Mingyu Chen <mo...@gmail.com>
AuthorDate: Sat Jun 6 11:38:32 2020 +0800
[Bug] Fix bug that should not use "!=" to judge the equivalence of Type (#3786)
org.apache.doris.catalog.Type is not an enum, so should not judge the
equivalence of Type using "==" or "!="
---
.../java/org/apache/doris/analysis/CompoundPredicate.java | 11 ++++++-----
.../main/java/org/apache/doris/analysis/DataDescription.java | 2 +-
fe/src/main/java/org/apache/doris/analysis/LiteralExpr.java | 5 +++--
fe/src/main/java/org/apache/doris/analysis/SlotRef.java | 2 +-
fe/src/main/java/org/apache/doris/planner/LoadScanNode.java | 2 +-
5 files changed, 12 insertions(+), 10 deletions(-)
diff --git a/fe/src/main/java/org/apache/doris/analysis/CompoundPredicate.java b/fe/src/main/java/org/apache/doris/analysis/CompoundPredicate.java
index 0712e76..ae36503 100644
--- a/fe/src/main/java/org/apache/doris/analysis/CompoundPredicate.java
+++ b/fe/src/main/java/org/apache/doris/analysis/CompoundPredicate.java
@@ -17,18 +17,19 @@
package org.apache.doris.analysis;
-import java.util.List;
-import java.util.Objects;
-
import org.apache.doris.catalog.Type;
import org.apache.doris.common.AnalysisException;
import org.apache.doris.thrift.TExprNode;
import org.apache.doris.thrift.TExprNodeType;
import org.apache.doris.thrift.TExprOpcode;
+
+import com.google.common.base.Preconditions;
+
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
-import com.google.common.base.Preconditions;
+import java.util.List;
+import java.util.Objects;
/**
* &&, ||, ! predicates.
@@ -96,7 +97,7 @@ public class CompoundPredicate extends Predicate {
// Check that children are predicates.
for (Expr e : children) {
- if (e.getType() != Type.BOOLEAN && !e.getType().isNull()) {
+ if (!e.getType().equals(Type.BOOLEAN) && !e.getType().isNull()) {
throw new AnalysisException(String.format(
"Operand '%s' part of predicate " + "'%s' should return type 'BOOLEAN' but " +
"returns type '%s'.",
diff --git a/fe/src/main/java/org/apache/doris/analysis/DataDescription.java b/fe/src/main/java/org/apache/doris/analysis/DataDescription.java
index 8a5e1c4..57cd8db 100644
--- a/fe/src/main/java/org/apache/doris/analysis/DataDescription.java
+++ b/fe/src/main/java/org/apache/doris/analysis/DataDescription.java
@@ -513,7 +513,7 @@ public class DataDescription {
}
private static void validateNowFunction(Column mappingColumn) throws AnalysisException {
- if (mappingColumn.getOriginType() != Type.DATE && mappingColumn.getOriginType() != Type.DATETIME) {
+ if (!mappingColumn.getOriginType().equals(Type.DATE) && !mappingColumn.getOriginType().equals(Type.DATETIME)) {
throw new AnalysisException("Now() function is only support for DATE/DATETIME column");
}
}
diff --git a/fe/src/main/java/org/apache/doris/analysis/LiteralExpr.java b/fe/src/main/java/org/apache/doris/analysis/LiteralExpr.java
index c7e79f7..5f3ada1 100644
--- a/fe/src/main/java/org/apache/doris/analysis/LiteralExpr.java
+++ b/fe/src/main/java/org/apache/doris/analysis/LiteralExpr.java
@@ -23,6 +23,7 @@ import org.apache.doris.common.AnalysisException;
import org.apache.doris.common.NotImplementedException;
import com.google.common.base.Preconditions;
+
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
@@ -43,7 +44,7 @@ public abstract class LiteralExpr extends Expr {
}
public static LiteralExpr create(String value, Type type) throws AnalysisException {
- Preconditions.checkArgument(type != Type.INVALID);
+ Preconditions.checkArgument(!type.equals(Type.INVALID));
LiteralExpr literalExpr = null;
switch (type.getPrimitiveType()) {
case NULL_TYPE:
@@ -88,7 +89,7 @@ public abstract class LiteralExpr extends Expr {
}
public static LiteralExpr createInfinity(Type type, boolean isMax) throws AnalysisException {
- Preconditions.checkArgument(type != Type.INVALID);
+ Preconditions.checkArgument(!type.equals(Type.INVALID));
if (isMax) {
return MaxLiteral.MAX_VALUE;
}
diff --git a/fe/src/main/java/org/apache/doris/analysis/SlotRef.java b/fe/src/main/java/org/apache/doris/analysis/SlotRef.java
index 572be39..b7ea3ff 100644
--- a/fe/src/main/java/org/apache/doris/analysis/SlotRef.java
+++ b/fe/src/main/java/org/apache/doris/analysis/SlotRef.java
@@ -262,7 +262,7 @@ public class SlotRef extends Expr {
@Override
public void getIds(List<TupleId> tupleIds, List<SlotId> slotIds) {
- Preconditions.checkState(type != Type.INVALID);
+ Preconditions.checkState(!type.equals(Type.INVALID));
Preconditions.checkState(desc != null);
if (slotIds != null) {
slotIds.add(desc.getId());
diff --git a/fe/src/main/java/org/apache/doris/planner/LoadScanNode.java b/fe/src/main/java/org/apache/doris/planner/LoadScanNode.java
index 0732ca3..e816b87 100644
--- a/fe/src/main/java/org/apache/doris/planner/LoadScanNode.java
+++ b/fe/src/main/java/org/apache/doris/planner/LoadScanNode.java
@@ -68,7 +68,7 @@ public abstract class LoadScanNode extends ScanNode {
}
whereExpr = whereExpr.clone(smap);
whereExpr.analyze(analyzer);
- if (whereExpr.getType() != Type.BOOLEAN) {
+ if (!whereExpr.getType().equals(Type.BOOLEAN)) {
throw new UserException("where statement is not a valid statement return bool");
}
addConjuncts(whereExpr.getConjuncts());
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org