You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@asterixdb.apache.org by "Dmitry Lychagin (Code Review)" <do...@asterixdb.incubator.apache.org> on 2018/08/28 21:43:38 UTC
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Dmitry Lychagin has uploaded a new change for review.
https://asterix-gerrit.ics.uci.edu/2935
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
[ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
- user model changes: no
- storage format changes: no
- interface changes: no
Details:
- Introduce cast operation for parameters of if_missing, if_null functions
(as performed for parameters of the switch_case function)
- Fix union type handling in TypeResolverUtil.generalizeTypes()
Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
---
M asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/InjectTypeCastForSwitchCaseRule.java
M asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifmissing/ifmissing.1.query.sqlpp
M asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifmissingornull/ifmissingornull.1.query.sqlpp
M asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifnull/ifnull.1.query.sqlpp
M asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifmissing/ifmissing.1.adm
M asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifmissingornull/ifmissingornull.1.adm
M asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifnull/ifnull.1.adm
M asterixdb/asterix-om/src/main/java/org/apache/asterix/dataflow/data/common/TypeResolverUtil.java
8 files changed, 77 insertions(+), 18 deletions(-)
git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb refs/changes/35/2935/1
diff --git a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/InjectTypeCastForSwitchCaseRule.java b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/InjectTypeCastForSwitchCaseRule.java
index fa9385a..3da835b 100644
--- a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/InjectTypeCastForSwitchCaseRule.java
+++ b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/InjectTypeCastForSwitchCaseRule.java
@@ -22,6 +22,7 @@
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
+import java.util.Set;
import org.apache.asterix.dataflow.data.common.TypeResolverUtil;
import org.apache.asterix.lang.common.util.FunctionUtil;
@@ -38,13 +39,22 @@
import org.apache.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression;
import org.apache.hyracks.algebricks.core.algebra.expressions.IVariableTypeEnvironment;
import org.apache.hyracks.algebricks.core.algebra.expressions.ScalarFunctionCallExpression;
+import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier;
import org.apache.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule;
+import com.google.common.collect.ImmutableSet;
+
/**
- * This rule injects cast functions for "THEN" and "ELSE" branches of a switch-case function if
- * different "THEN" and "ELSE" branches have heterogeneous return types.
+ * This rule injects casts for function parameters if they have heterogeneous return types:
+ * <ul>
+ * <li>for "THEN" and "ELSE" branches of a switch-case function</li>
+ * <li>for parameters of "if missing/null" functions (if-missing(), if-null(), if-missing-or-null())</li>
+ * </ul>
*/
public class InjectTypeCastForSwitchCaseRule implements IAlgebraicRewriteRule {
+
+ private static final Set<FunctionIdentifier> IF_FUNCTIONS =
+ ImmutableSet.of(BuiltinFunctions.IF_MISSING, BuiltinFunctions.IF_NULL, BuiltinFunctions.IF_MISSING_OR_NULL);
@Override
public boolean rewritePost(Mutable<ILogicalOperator> opRef, IOptimizationContext context)
@@ -80,10 +90,14 @@
rewritten = true;
}
}
- if (!func.getFunctionIdentifier().equals(BuiltinFunctions.SWITCH_CASE)) {
+ FunctionIdentifier funcId = func.getFunctionIdentifier();
+ if (funcId.equals(BuiltinFunctions.SWITCH_CASE)) {
+ return rewriteSwitchCase(op, func, context);
+ } else if (IF_FUNCTIONS.contains(funcId)) {
+ return rewriteFunction(op, func, context);
+ } else {
return rewritten;
}
- return rewriteSwitchCase(op, func, context);
}
// Injects casts that cast types for different "THEN" and "ELSE" branches.
@@ -96,20 +110,44 @@
boolean rewritten = false;
for (int argIndex = 2; argIndex < argSize; argIndex += (argIndex + 2 == argSize) ? 1 : 2) {
Mutable<ILogicalExpression> argRef = argRefs.get(argIndex);
- IAType type = (IAType) env.getType(argRefs.get(argIndex).getValue());
- if (TypeResolverUtil.needsCast(producedType, type)) {
- ILogicalExpression argExpr = argRef.getValue();
- // Injects a cast call to cast the data type to the produced type of the switch-case function call.
- ScalarFunctionCallExpression castFunc =
- new ScalarFunctionCallExpression(FunctionUtil.getFunctionInfo(BuiltinFunctions.CAST_TYPE),
- new ArrayList<>(Collections.singletonList(new MutableObject<>(argExpr))));
- castFunc.setSourceLocation(argExpr.getSourceLocation());
- TypeCastUtils.setRequiredAndInputTypes(castFunc, producedType, type);
- argRef.setValue(castFunc);
+ if (rewriteFunctionArgument(argRef, producedType, env)) {
rewritten = true;
}
}
return rewritten;
}
+ // Injects casts that cast types for all function parameters
+ private boolean rewriteFunction(ILogicalOperator op, AbstractFunctionCallExpression func,
+ IOptimizationContext context) throws AlgebricksException {
+ IVariableTypeEnvironment env = op.computeInputTypeEnvironment(context);
+ IAType producedType = (IAType) env.getType(func);
+ List<Mutable<ILogicalExpression>> argRefs = func.getArguments();
+ int argSize = argRefs.size();
+ boolean rewritten = false;
+ for (int argIndex = 0; argIndex < argSize; argIndex++) {
+ Mutable<ILogicalExpression> argRef = argRefs.get(argIndex);
+ if (rewriteFunctionArgument(argRef, producedType, env)) {
+ rewritten = true;
+ }
+ }
+ return rewritten;
+ }
+
+ private boolean rewriteFunctionArgument(Mutable<ILogicalExpression> argRef, IAType funcOutputType,
+ IVariableTypeEnvironment env) throws AlgebricksException {
+ ILogicalExpression argExpr = argRef.getValue();
+ IAType type = (IAType) env.getType(argExpr);
+ if (TypeResolverUtil.needsCast(funcOutputType, type)) {
+ // Injects a cast call to cast the data type to the produced type of the function call.
+ ScalarFunctionCallExpression castFunc =
+ new ScalarFunctionCallExpression(FunctionUtil.getFunctionInfo(BuiltinFunctions.CAST_TYPE),
+ new ArrayList<>(Collections.singletonList(new MutableObject<>(argExpr))));
+ castFunc.setSourceLocation(argExpr.getSourceLocation());
+ TypeCastUtils.setRequiredAndInputTypes(castFunc, funcOutputType, type);
+ argRef.setValue(castFunc);
+ return true;
+ }
+ return false;
+ }
}
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifmissing/ifmissing.1.query.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifmissing/ifmissing.1.query.sqlpp
index 2f0d837..0abb997 100644
--- a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifmissing/ifmissing.1.query.sqlpp
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifmissing/ifmissing.1.query.sqlpp
@@ -29,5 +29,12 @@
missing,
case when get_year(current_datetime()) > 0 then missing else false end,
case when get_year(current_datetime()) > 0 then true else null end
+ ),
+ "j": (
+ let v = if_missing(
+ case when get_year(current_datetime()) > 0 then missing else false end,
+ { "c": [ 2 ] }
+ )
+ select v as b
)
};
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifmissingornull/ifmissingornull.1.query.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifmissingornull/ifmissingornull.1.query.sqlpp
index 32f040f..22a8acd 100644
--- a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifmissingornull/ifmissingornull.1.query.sqlpp
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifmissingornull/ifmissingornull.1.query.sqlpp
@@ -32,5 +32,12 @@
case when get_year(current_datetime()) > 0 then missing else false end,
case when get_year(current_datetime()) > 0 then null else false end,
case when get_year(current_datetime()) > 0 then true else missing end
+ ),
+ "j": (
+ let v = if_missing_or_null(
+ case when get_year(current_datetime()) > 0 then missing else false end,
+ { "c": [ 2 ] }
+ )
+ select v as b
)
};
\ No newline at end of file
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifnull/ifnull.1.query.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifnull/ifnull.1.query.sqlpp
index c0683bd..0121cd8 100644
--- a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifnull/ifnull.1.query.sqlpp
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifnull/ifnull.1.query.sqlpp
@@ -30,5 +30,12 @@
null,
case when get_year(current_datetime()) > 0 then null else false end,
case when get_year(current_datetime()) > 0 then true else missing end
+ ),
+ "j": (
+ let v = if_null(
+ case when get_year(current_datetime()) > 0 then null else false end,
+ { "c": [ 2 ] }
+ )
+ select v as b
)
};
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifmissing/ifmissing.1.adm b/asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifmissing/ifmissing.1.adm
index 0a2275f..14620a1 100644
--- a/asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifmissing/ifmissing.1.adm
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifmissing/ifmissing.1.adm
@@ -1 +1 @@
-{ "a": true, "b": true, "c": true, "d": true, "e": true, "f": true, "g": true, "i": true }
\ No newline at end of file
+{ "a": true, "b": true, "c": true, "d": true, "e": true, "f": true, "g": true, "i": true, "j": [ { "b": { "c": [ 2 ] } } ] }
\ No newline at end of file
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifmissingornull/ifmissingornull.1.adm b/asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifmissingornull/ifmissingornull.1.adm
index 633c503..eff2651 100644
--- a/asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifmissingornull/ifmissingornull.1.adm
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifmissingornull/ifmissingornull.1.adm
@@ -1 +1 @@
-{ "a": true, "b": true, "c": true, "d": true, "e": true, "f": true, "g": true, "h": true, "i": true }
\ No newline at end of file
+{ "a": true, "b": true, "c": true, "d": true, "e": true, "f": true, "g": true, "h": true, "i": true, "j": [ { "b": { "c": [ 2 ] } } ] }
\ No newline at end of file
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifnull/ifnull.1.adm b/asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifnull/ifnull.1.adm
index 633c503..eff2651 100644
--- a/asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifnull/ifnull.1.adm
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifnull/ifnull.1.adm
@@ -1 +1 @@
-{ "a": true, "b": true, "c": true, "d": true, "e": true, "f": true, "g": true, "h": true, "i": true }
\ No newline at end of file
+{ "a": true, "b": true, "c": true, "d": true, "e": true, "f": true, "g": true, "h": true, "i": true, "j": [ { "b": { "c": [ 2 ] } } ] }
\ No newline at end of file
diff --git a/asterixdb/asterix-om/src/main/java/org/apache/asterix/dataflow/data/common/TypeResolverUtil.java b/asterixdb/asterix-om/src/main/java/org/apache/asterix/dataflow/data/common/TypeResolverUtil.java
index 561df5e..b7bd8ca 100644
--- a/asterixdb/asterix-om/src/main/java/org/apache/asterix/dataflow/data/common/TypeResolverUtil.java
+++ b/asterixdb/asterix-om/src/main/java/org/apache/asterix/dataflow/data/common/TypeResolverUtil.java
@@ -106,7 +106,7 @@
// Gets the actual types for UNIONs and mark unknownable to be true.
if (leftTypeTag == ATypeTag.UNION || rightTypeTag == ATypeTag.UNION) {
leftType = TypeComputeUtils.getActualType(leftType);
- rightType = TypeComputeUtils.getActualType(leftType);
+ rightType = TypeComputeUtils.getActualType(rightType);
leftTypeTag = leftType.getTypeTag();
rightTypeTag = rightType.getTypeTag();
unknownable = true;
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 2:
Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-notopic/9903/ (10/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Till Westmann (Code Review)" <do...@asterixdb.incubator.apache.org>.
Till Westmann has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 3: Code-Review+2
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Michael Blow <mb...@apache.org>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 2:
Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-asterix-app-sql-execution/4427/ (11/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Anon. E. Moose (Code Review)" <do...@asterixdb.incubator.apache.org>.
Anon. E. Moose #1000171 has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 3: Contrib+1
Analytics Compatibility Tests Successful
https://goo.gl/syHZ3A : SUCCESS
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 1:
Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-verify-storage/4983/ (5/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 1:
Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-asterix-app-sql-execution/4426/ (1/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 2:
Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-source-format/4392/ (9/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 1:
Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-cancellation-test/4425/ (3/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 3:
Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-verify-asterix-app/4817/ (7/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 3:
Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-verify-storage/4985/ (1/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 2:
Integration Tests Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-integration-tests/7251/
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Dmitry Lychagin (Code Review)" <do...@asterixdb.incubator.apache.org>.
Dmitry Lychagin has submitted this change and it was merged.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
[ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
- user model changes: no
- storage format changes: no
- interface changes: no
Details:
- Introduce cast operation for parameters of if_missing, if_null functions
(as performed for parameters of the switch_case function)
- Fix union type handling in TypeResolverUtil.generalizeTypes()
Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Reviewed-on: https://asterix-gerrit.ics.uci.edu/2935
Tested-by: Jenkins <je...@fulliautomatix.ics.uci.edu>
Integration-Tests: Jenkins <je...@fulliautomatix.ics.uci.edu>
Reviewed-by: Till Westmann <ti...@apache.org>
---
M asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/InjectTypeCastForSwitchCaseRule.java
M asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifmissing/ifmissing.1.query.sqlpp
M asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifmissingornull/ifmissingornull.1.query.sqlpp
M asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifnull/ifnull.1.query.sqlpp
M asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifmissing/ifmissing.1.adm
M asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifmissingornull/ifmissingornull.1.adm
M asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifnull/ifnull.1.adm
M asterixdb/asterix-om/src/main/java/org/apache/asterix/dataflow/data/common/TypeResolverUtil.java
8 files changed, 81 insertions(+), 19 deletions(-)
Approvals:
Anon. E. Moose #1000171:
Till Westmann: Looks good to me, approved
Jenkins: Verified; Verified
Objections:
Jenkins: Violations found
diff --git a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/InjectTypeCastForSwitchCaseRule.java b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/InjectTypeCastForSwitchCaseRule.java
index fa9385a..683d29f 100644
--- a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/InjectTypeCastForSwitchCaseRule.java
+++ b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/InjectTypeCastForSwitchCaseRule.java
@@ -22,6 +22,7 @@
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
+import java.util.Set;
import org.apache.asterix.dataflow.data.common.TypeResolverUtil;
import org.apache.asterix.lang.common.util.FunctionUtil;
@@ -38,13 +39,22 @@
import org.apache.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression;
import org.apache.hyracks.algebricks.core.algebra.expressions.IVariableTypeEnvironment;
import org.apache.hyracks.algebricks.core.algebra.expressions.ScalarFunctionCallExpression;
+import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier;
import org.apache.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule;
+import com.google.common.collect.ImmutableSet;
+
/**
- * This rule injects cast functions for "THEN" and "ELSE" branches of a switch-case function if
- * different "THEN" and "ELSE" branches have heterogeneous return types.
+ * This rule injects casts for function parameters if they have heterogeneous return types:
+ * <ul>
+ * <li>for "THEN" and "ELSE" branches of a switch-case function</li>
+ * <li>for parameters of "if missing/null" functions (if-missing(), if-null(), if-missing-or-null())</li>
+ * </ul>
*/
public class InjectTypeCastForSwitchCaseRule implements IAlgebraicRewriteRule {
+
+ private static final Set<FunctionIdentifier> IF_FUNCTIONS =
+ ImmutableSet.of(BuiltinFunctions.IF_MISSING, BuiltinFunctions.IF_NULL, BuiltinFunctions.IF_MISSING_OR_NULL);
@Override
public boolean rewritePost(Mutable<ILogicalOperator> opRef, IOptimizationContext context)
@@ -80,10 +90,17 @@
rewritten = true;
}
}
- if (!func.getFunctionIdentifier().equals(BuiltinFunctions.SWITCH_CASE)) {
- return rewritten;
+ FunctionIdentifier funcId = func.getFunctionIdentifier();
+ if (funcId.equals(BuiltinFunctions.SWITCH_CASE)) {
+ if (rewriteSwitchCase(op, func, context)) {
+ rewritten = true;
+ }
+ } else if (IF_FUNCTIONS.contains(funcId)) {
+ if (rewriteFunction(op, func, context)) {
+ rewritten = true;
+ }
}
- return rewriteSwitchCase(op, func, context);
+ return rewritten;
}
// Injects casts that cast types for different "THEN" and "ELSE" branches.
@@ -96,20 +113,44 @@
boolean rewritten = false;
for (int argIndex = 2; argIndex < argSize; argIndex += (argIndex + 2 == argSize) ? 1 : 2) {
Mutable<ILogicalExpression> argRef = argRefs.get(argIndex);
- IAType type = (IAType) env.getType(argRefs.get(argIndex).getValue());
- if (TypeResolverUtil.needsCast(producedType, type)) {
- ILogicalExpression argExpr = argRef.getValue();
- // Injects a cast call to cast the data type to the produced type of the switch-case function call.
- ScalarFunctionCallExpression castFunc =
- new ScalarFunctionCallExpression(FunctionUtil.getFunctionInfo(BuiltinFunctions.CAST_TYPE),
- new ArrayList<>(Collections.singletonList(new MutableObject<>(argExpr))));
- castFunc.setSourceLocation(argExpr.getSourceLocation());
- TypeCastUtils.setRequiredAndInputTypes(castFunc, producedType, type);
- argRef.setValue(castFunc);
+ if (rewriteFunctionArgument(argRef, producedType, env)) {
rewritten = true;
}
}
return rewritten;
}
+ // Injects casts that cast types for all function parameters
+ private boolean rewriteFunction(ILogicalOperator op, AbstractFunctionCallExpression func,
+ IOptimizationContext context) throws AlgebricksException {
+ IVariableTypeEnvironment env = op.computeInputTypeEnvironment(context);
+ IAType producedType = (IAType) env.getType(func);
+ List<Mutable<ILogicalExpression>> argRefs = func.getArguments();
+ int argSize = argRefs.size();
+ boolean rewritten = false;
+ for (int argIndex = 0; argIndex < argSize; argIndex++) {
+ Mutable<ILogicalExpression> argRef = argRefs.get(argIndex);
+ if (rewriteFunctionArgument(argRef, producedType, env)) {
+ rewritten = true;
+ }
+ }
+ return rewritten;
+ }
+
+ private boolean rewriteFunctionArgument(Mutable<ILogicalExpression> argRef, IAType funcOutputType,
+ IVariableTypeEnvironment env) throws AlgebricksException {
+ ILogicalExpression argExpr = argRef.getValue();
+ IAType type = (IAType) env.getType(argExpr);
+ if (TypeResolverUtil.needsCast(funcOutputType, type)) {
+ // Injects a cast call to cast the data type to the produced type of the function call.
+ ScalarFunctionCallExpression castFunc =
+ new ScalarFunctionCallExpression(FunctionUtil.getFunctionInfo(BuiltinFunctions.CAST_TYPE),
+ new ArrayList<>(Collections.singletonList(new MutableObject<>(argExpr))));
+ castFunc.setSourceLocation(argExpr.getSourceLocation());
+ TypeCastUtils.setRequiredAndInputTypes(castFunc, funcOutputType, type);
+ argRef.setValue(castFunc);
+ return true;
+ }
+ return false;
+ }
}
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifmissing/ifmissing.1.query.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifmissing/ifmissing.1.query.sqlpp
index 2f0d837..0abb997 100644
--- a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifmissing/ifmissing.1.query.sqlpp
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifmissing/ifmissing.1.query.sqlpp
@@ -29,5 +29,12 @@
missing,
case when get_year(current_datetime()) > 0 then missing else false end,
case when get_year(current_datetime()) > 0 then true else null end
+ ),
+ "j": (
+ let v = if_missing(
+ case when get_year(current_datetime()) > 0 then missing else false end,
+ { "c": [ 2 ] }
+ )
+ select v as b
)
};
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifmissingornull/ifmissingornull.1.query.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifmissingornull/ifmissingornull.1.query.sqlpp
index 32f040f..22a8acd 100644
--- a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifmissingornull/ifmissingornull.1.query.sqlpp
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifmissingornull/ifmissingornull.1.query.sqlpp
@@ -32,5 +32,12 @@
case when get_year(current_datetime()) > 0 then missing else false end,
case when get_year(current_datetime()) > 0 then null else false end,
case when get_year(current_datetime()) > 0 then true else missing end
+ ),
+ "j": (
+ let v = if_missing_or_null(
+ case when get_year(current_datetime()) > 0 then missing else false end,
+ { "c": [ 2 ] }
+ )
+ select v as b
)
};
\ No newline at end of file
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifnull/ifnull.1.query.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifnull/ifnull.1.query.sqlpp
index c0683bd..0121cd8 100644
--- a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifnull/ifnull.1.query.sqlpp
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifnull/ifnull.1.query.sqlpp
@@ -30,5 +30,12 @@
null,
case when get_year(current_datetime()) > 0 then null else false end,
case when get_year(current_datetime()) > 0 then true else missing end
+ ),
+ "j": (
+ let v = if_null(
+ case when get_year(current_datetime()) > 0 then null else false end,
+ { "c": [ 2 ] }
+ )
+ select v as b
)
};
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifmissing/ifmissing.1.adm b/asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifmissing/ifmissing.1.adm
index 0a2275f..14620a1 100644
--- a/asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifmissing/ifmissing.1.adm
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifmissing/ifmissing.1.adm
@@ -1 +1 @@
-{ "a": true, "b": true, "c": true, "d": true, "e": true, "f": true, "g": true, "i": true }
\ No newline at end of file
+{ "a": true, "b": true, "c": true, "d": true, "e": true, "f": true, "g": true, "i": true, "j": [ { "b": { "c": [ 2 ] } } ] }
\ No newline at end of file
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifmissingornull/ifmissingornull.1.adm b/asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifmissingornull/ifmissingornull.1.adm
index 633c503..eff2651 100644
--- a/asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifmissingornull/ifmissingornull.1.adm
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifmissingornull/ifmissingornull.1.adm
@@ -1 +1 @@
-{ "a": true, "b": true, "c": true, "d": true, "e": true, "f": true, "g": true, "h": true, "i": true }
\ No newline at end of file
+{ "a": true, "b": true, "c": true, "d": true, "e": true, "f": true, "g": true, "h": true, "i": true, "j": [ { "b": { "c": [ 2 ] } } ] }
\ No newline at end of file
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifnull/ifnull.1.adm b/asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifnull/ifnull.1.adm
index 633c503..eff2651 100644
--- a/asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifnull/ifnull.1.adm
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifnull/ifnull.1.adm
@@ -1 +1 @@
-{ "a": true, "b": true, "c": true, "d": true, "e": true, "f": true, "g": true, "h": true, "i": true }
\ No newline at end of file
+{ "a": true, "b": true, "c": true, "d": true, "e": true, "f": true, "g": true, "h": true, "i": true, "j": [ { "b": { "c": [ 2 ] } } ] }
\ No newline at end of file
diff --git a/asterixdb/asterix-om/src/main/java/org/apache/asterix/dataflow/data/common/TypeResolverUtil.java b/asterixdb/asterix-om/src/main/java/org/apache/asterix/dataflow/data/common/TypeResolverUtil.java
index 561df5e..b7bd8ca 100644
--- a/asterixdb/asterix-om/src/main/java/org/apache/asterix/dataflow/data/common/TypeResolverUtil.java
+++ b/asterixdb/asterix-om/src/main/java/org/apache/asterix/dataflow/data/common/TypeResolverUtil.java
@@ -106,7 +106,7 @@
// Gets the actual types for UNIONs and mark unknownable to be true.
if (leftTypeTag == ATypeTag.UNION || rightTypeTag == ATypeTag.UNION) {
leftType = TypeComputeUtils.getActualType(leftType);
- rightType = TypeComputeUtils.getActualType(leftType);
+ rightType = TypeComputeUtils.getActualType(rightType);
leftTypeTag = leftType.getTypeTag();
rightTypeTag = rightType.getTypeTag();
unknownable = true;
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 4
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Michael Blow <mb...@apache.org>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 1:
Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-source-format/4391/ (9/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 2:
Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-ensure-ancestor/2438/ (2/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 2:
Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-verify-asterix-app/4816/ (6/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 2:
Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-sonar/8364/ (8/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 3:
Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-source-assemblies/4647/ (5/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 3:
Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-notopic/9904/ (9/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 3:
Build Started https://asterix-jenkins.ics.uci.edu/job/hyracks-gerrit/4338/ (2/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 2:
Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-verify-storage/4984/ (1/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 3:
Integration Tests Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-integration-tests/7252/
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 2:
Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-verify-no-installer-app/4778/ (3/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 3:
Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-source-format/4393/ (10/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 1:
Integration Tests Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-integration-tests/7250/
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 2:
Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-source-assemblies/4646/ (4/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 3:
Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-ensure-ancestor/2439/ (4/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Dmitry Lychagin (Code Review)" <do...@asterixdb.incubator.apache.org>.
Hello Jenkins,
I'd like you to reexamine a change. Please visit
https://asterix-gerrit.ics.uci.edu/2935
to look at the new patch set (#2).
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
[ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
- user model changes: no
- storage format changes: no
- interface changes: no
Details:
- Introduce cast operation for parameters of if_missing, if_null functions
(as performed for parameters of the switch_case function)
- Fix union type handling in TypeResolverUtil.generalizeTypes()
Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
---
M asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/InjectTypeCastForSwitchCaseRule.java
M asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifmissing/ifmissing.1.query.sqlpp
M asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifmissingornull/ifmissingornull.1.query.sqlpp
M asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/null-missing/ifnull/ifnull.1.query.sqlpp
M asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifmissing/ifmissing.1.adm
M asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifmissingornull/ifmissingornull.1.adm
M asterixdb/asterix-app/src/test/resources/runtimets/results/null-missing/ifnull/ifnull.1.adm
M asterixdb/asterix-om/src/main/java/org/apache/asterix/dataflow/data/common/TypeResolverUtil.java
8 files changed, 81 insertions(+), 19 deletions(-)
git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb refs/changes/35/2935/2
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Michael Blow (Code Review)" <do...@asterixdb.incubator.apache.org>.
Michael Blow has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 3:
(1 comment)
https://asterix-gerrit.ics.uci.edu/#/c/2935/3/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/InjectTypeCastForSwitchCaseRule.java
File asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/InjectTypeCastForSwitchCaseRule.java:
Line 99: if (rewriteFunction(op, func, context)) {
> MAJOR SonarQube violation:
consider this?
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Michael Blow <mb...@apache.org>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>
Gerrit-HasComments: Yes
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 1:
Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-notopic/9902/ (8/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Anon. E. Moose (Code Review)" <do...@asterixdb.incubator.apache.org>.
Anon. E. Moose #1000171 has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 2: Contrib-2
Analytics Compatibility Compilation Failed
https://goo.gl/9VsX2e : UNSTABLE
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 3: Integration-Tests+1
Integration Tests Successful
https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-integration-tests/7252/ : SUCCESS
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 3:
Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-asterix-app-sql-execution/4428/ (11/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 1:
Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-verify-no-installer-app/4777/ (11/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 1:
Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-ensure-ancestor/2437/ (6/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 1: Integration-Tests+1
Integration Tests Successful
https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-integration-tests/7250/ : SUCCESS
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 1:
Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-sonar/8363/ (2/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 1:
Build Started https://asterix-jenkins.ics.uci.edu/job/hyracks-gerrit/4336/ (7/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 2:
Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-cancellation-test/4426/ (5/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Dmitry Lychagin (Code Review)" <do...@asterixdb.incubator.apache.org>.
Dmitry Lychagin has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 3:
(1 comment)
https://asterix-gerrit.ics.uci.edu/#/c/2935/3/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/InjectTypeCastForSwitchCaseRule.java
File asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/InjectTypeCastForSwitchCaseRule.java:
Line 99: if (rewriteFunction(op, func, context)) {
> consider this?
I'd keep it as is. It looks aligned with the previous block (lines 94-97) and we cannot merge 2 ifs in that one.
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Michael Blow <mb...@apache.org>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>
Gerrit-HasComments: Yes
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 2:
Build Started https://asterix-jenkins.ics.uci.edu/job/hyracks-gerrit/4337/ (7/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 3:
Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-cancellation-test/4427/ (8/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 1:
Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-source-assemblies/4645/ (4/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 1:
Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-verify-asterix-app/4815/ (10/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Anon. E. Moose (Code Review)" <do...@asterixdb.incubator.apache.org>.
Anon. E. Moose #1000171 has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 1:
Analytics Compatibility Compilation Successful
https://goo.gl/9UUsQV : SUCCESS
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 3:
Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-sonar/8365/ (3/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Anon. E. Moose (Code Review)" <do...@asterixdb.incubator.apache.org>.
Anon. E. Moose #1000171 has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 3:
Analytics Compatibility Compilation Successful
https://goo.gl/zo5eBp : SUCCESS
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No
Change in asterixdb[stabilization-f69489]: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, i...
Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.
Change subject: [ASTERIXDB-2447][COMP] Parameter rewriting for if_missing, if_null functions
......................................................................
Patch Set 3:
Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-verify-no-installer-app/4779/ (6/11)
--
To view, visit https://asterix-gerrit.ics.uci.edu/2935
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I768d8236f5b0ccb9a850304ffedd3686d911702d
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: stabilization-f69489
Gerrit-Owner: Dmitry Lychagin <dm...@couchbase.com>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-HasComments: No