You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by pa...@apache.org on 2022/07/09 08:22:07 UTC
[doris] branch master updated: [Bug][Vectorized] Support array function in where pre in volap_scan_node (#10467)
This is an automated email from the ASF dual-hosted git repository.
panxiaolei pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/master by this push:
new 1f08f2d144 [Bug][Vectorized] Support array function in where pre in volap_scan_node (#10467)
1f08f2d144 is described below
commit 1f08f2d14489d0fe6f39d2b14e7057ad1909041a
Author: HappenLee <ha...@hotmail.com>
AuthorDate: Sat Jul 9 16:22:01 2022 +0800
[Bug][Vectorized] Support array function in where pre in volap_scan_node (#10467)
Co-authored-by: lihaopeng <li...@baidu.com>
Support array function in where pre in volap_scan_node
---
be/src/exprs/array_functions.cpp | 4 ++++
be/src/exprs/array_functions.h | 2 ++
fe/fe-core/src/main/java/org/apache/doris/catalog/FunctionSet.java | 5 +++++
3 files changed, 11 insertions(+)
diff --git a/be/src/exprs/array_functions.cpp b/be/src/exprs/array_functions.cpp
index 32a1639af7..1bb2a59042 100644
--- a/be/src/exprs/array_functions.cpp
+++ b/be/src/exprs/array_functions.cpp
@@ -41,4 +41,8 @@ void ArrayFunctions::init() {}
ARRAY_FUNCTION(IntVal, TYPE_INT);
ARRAY_FUNCTION(StringVal, TYPE_VARCHAR);
+doris_udf::AnyVal array_fake_function(FunctionContext* context) {
+ return doris_udf::AnyVal(true);
+}
+
} // namespace doris
diff --git a/be/src/exprs/array_functions.h b/be/src/exprs/array_functions.h
index 7bceebf429..292e984934 100644
--- a/be/src/exprs/array_functions.h
+++ b/be/src/exprs/array_functions.h
@@ -32,4 +32,6 @@ public:
static CollectionVal array(FunctionContext* context, int num_children, const StringVal* values);
};
+
+doris_udf::AnyVal array_fake_function(FunctionContext* context);
} // namespace doris
diff --git a/fe/fe-core/src/main/java/org/apache/doris/catalog/FunctionSet.java b/fe/fe-core/src/main/java/org/apache/doris/catalog/FunctionSet.java
index c03722b0fa..13a4d938ea 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/catalog/FunctionSet.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/catalog/FunctionSet.java
@@ -1265,6 +1265,11 @@ public class FunctionSet<T> {
boolean varArgs, Type ... args) {
ArrayList<Type> argsType = new ArrayList<Type>();
for (Type type : args) {
+ // only to prevent olap scan node use array expr to find a fake symbol
+ // TODO: delete the code after we remove origin exec engine
+ if (type.isArrayType()) {
+ symbol = "_ZN5doris19array_fake_functionEPN9doris_udf15FunctionContextE";
+ }
argsType.add(type);
}
addBuiltinBothScalaAndVectorized(ScalarFunction.createBuiltin(
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org