This is an automated email from the ASF dual-hosted git repository.

yiguolei 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 5a700223fe [fix](function) fix coredump cause by return type mismatch 
of vectorized repeat function (#13868)
5a700223fe is described below

commit 5a700223fedbf7651a0537cdab20201a1d68ced3
Author: TengJianPing <18241664+jackte...@users.noreply.github.com>
AuthorDate: Thu Nov 3 09:53:02 2022 +0800

    [fix](function) fix coredump cause by return type mismatch of vectorized 
repeat function (#13868)
    
    
    Will not support repeat function during upgrade in vectorized engine.
---
 be/src/vec/exprs/vectorized_fn_call.cpp | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/be/src/vec/exprs/vectorized_fn_call.cpp 
b/be/src/vec/exprs/vectorized_fn_call.cpp
index f92ec8bc3a..1bf05ce00e 100644
--- a/be/src/vec/exprs/vectorized_fn_call.cpp
+++ b/be/src/vec/exprs/vectorized_fn_call.cpp
@@ -37,6 +37,15 @@ VectorizedFnCall::VectorizedFnCall(const doris::TExprNode& 
node) : VExpr(node) {
 
 doris::Status VectorizedFnCall::prepare(doris::RuntimeState* state,
                                         const doris::RowDescriptor& desc, 
VExprContext* context) {
+    // In 1.2-lts, repeat function return type is changed to always nullable,
+    // which is not compatible with 1.1-lts
+    if ("repeat" == _fn.name.function_name and !_data_type->is_nullable()) {
+        const auto error_msg =
+                "In progress of upgrading from 1.1-lts to 1.2-lts, vectorized 
repeat "
+                "function cannot be executed, you can switch to non-vectorized 
engine by "
+                "'set global enable_vectorized_engine = false'";
+        return Status::InternalError(error_msg);
+    }
     RETURN_IF_ERROR_OR_PREPARED(VExpr::prepare(state, desc, context));
     ColumnsWithTypeAndName argument_template;
     argument_template.reserve(_children.size());


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org
For additional commands, e-mail: commits-h...@doris.apache.org

Reply via email to