xy720 opened a new issue, #11592: URL: https://github.com/apache/doris/issues/11592
### Search before asking - [X] I had searched in the [issues](https://github.com/apache/incubator-doris/issues?q=is%3Aissue) and found no similar issues. ### Version master ### What's Wrong? select cast([1,2,3] as Array<Int>) causes be core dump on origin exec engine. ``` #0 0x00007fe034551f47 in Peek (this=0x7fde9c73a350) at /home/disk4/xuyang/work/baidu/bdg/doris/core/thirdparty/installed/include/rapidjson/memorystream.h:45 #1 EncodedInputStream (is=..., this=0x7fde9c73a348) at /home/disk4/xuyang/work/baidu/bdg/doris/core/thirdparty/installed/include/rapidjson/encodedstream.h:73 #2 Parse<0, rapidjson::UTF8<> > (length=140603493010728, str=0x3 <error: Cannot access memory at address 0x3>, this=0x7fde9c73a420) at /home/disk4/xuyang/work/baidu/bdg/doris/core/thirdparty/installed/include/rapidjson/document.h:2430 #3 Parse<0> (length=140603493010728, str=0x3 <error: Cannot access memory at address 0x3>, this=0x7fde9c73a420) at /home/disk4/xuyang/work/baidu/bdg/doris/core/thirdparty/installed/include/rapidjson/document.h:2437 #4 Parse (length=140603493010728, str=0x3 <error: Cannot access memory at address 0x3>, this=0x7fde9c73a420) at /home/disk4/xuyang/work/baidu/bdg/doris/core/thirdparty/installed/include/rapidjson/document.h:2441 #5 doris::ArrayParser::parse (array_val=..., context=0x7fe04f6549d8, str_val=...) at /home/disk4/xuyang/work/baidu/bdg/doris/core/be/src/util/array_parser.h:44 #6 0x00007fe0345452f2 in doris::CastFunctions::cast_to_array_val (context=<optimized out>, val=...) at /home/disk4/xuyang/work/baidu/bdg/doris/core/be/src/exprs/cast_functions.cpp:814 #7 0x00007fe0345d2bbe in doris::ScalarFnCall::interpret_eval<doris_udf::CollectionVal> (this=0x7fe157366800, context=<optimized out>, row=<optimized out>) at /home/disk4/xuyang/work/baidu/bdg/doris/palo-toolchain/ldb_toolchain/include/c++/11/bits/stl_vector.h:1043 #8 0x00007fe0345cb758 in get_array_val (row=<optimized out>, context=<optimized out>, this=<optimized out>) at /home/disk4/xuyang/work/baidu/bdg/doris/core/be/src/exprs/scalar_fn_call.cpp:533 #9 doris::ScalarFnCall::get_array_val (this=<optimized out>, context=<optimized out>, row=<optimized out>) at /home/disk4/xuyang/work/baidu/bdg/doris/core/be/src/exprs/scalar_fn_call.cpp:528 #10 0x00007fe0345a4907 in doris::ExprContext::get_value (this=0x7fe0f2041e00, e=<optimized out>, row=row@entry=0x0, precision=precision@entry=0, scale=scale@entry=0) at /home/disk4/xuyang/work/baidu/bdg/doris/core/be/src/exprs/expr_context.cpp:310 #11 0x00007fe034ce9c8b in get_value (row=0x0, this=<optimized out>) at /home/disk4/xuyang/work/baidu/bdg/doris/core/be/src/exprs/expr_context.h:200 #12 doris::Tuple::materialize_exprs<false> (this=this@entry=0x7fe0fda2c000, row=row@entry=0x0, desc=..., materialize_expr_ctxs=..., pool=pool@entry=0x7fe054cbdab0, non_null_var_len_values=non_null_var_len_values@entry=0x0, total_var_len=0x0) at /home/disk4/xuyang/work/baidu/bdg/doris/core/be/src/runtime/tuple.cpp:232 #13 0x00007fe034a33a4f in materialize_exprs (dst_batch=0x7fe054cbda00, tuple_buf=0x7fe0fda2c000 "", row=0x0, exprs=..., this=0x7fe09b034c80) at /home/disk4/xuyang/work/baidu/bdg/doris/core/be/src/runtime/row_batch.h:239 #14 doris::UnionNode::get_next_const (this=this@entry=0x7fe09b034c80, state=state@entry=0x7fe148da5000, row_batch=row_batch@entry=0x7fe054cbda00) at /home/disk4/xuyang/work/baidu/bdg/doris/core/be/src/exec/union_node.cpp:226 #15 0x00007fe034a343c7 in doris::UnionNode::get_next (this=0x7fe09b034c80, state=0x7fe148da5000, row_batch=0x7fe054cbda00, eos=0x7fe1461ef549) at /home/disk4/xuyang/work/baidu/bdg/doris/core/be/src/exec/union_node.cpp:258 #16 0x00007fe034d07244 in doris::PlanFragmentExecutor::get_next_internal (this=this@entry=0x7fe1461ef470, batch=batch@entry=0x7fde9c73c918) at /home/disk4/xuyang/work/baidu/bdg/doris/palo-toolchain/ldb_toolchain/include/c++/11/bits/unique_ptr.h:421 #17 0x00007fe034d0bcb1 in doris::PlanFragmentExecutor::open_internal (this=0x7fe1461ef470) at /home/disk4/xuyang/work/baidu/bdg/doris/core/be/src/runtime/plan_fragment_executor.cpp:371 #18 0x00007fe034d0cb15 in doris::PlanFragmentExecutor::open (this=this@entry=0x7fe1461ef470) at /home/disk4/xuyang/work/baidu/bdg/doris/core/be/src/runtime/plan_fragment_executor.cpp:241 #19 0x00007fe034cee1b5 in doris::FragmentExecState::execute (this=0x7fe1461ef400) at /home/disk4/xuyang/work/baidu/bdg/doris/core/be/src/runtime/fragment_mgr.cpp:246 #20 0x00007fe034cf1309 in doris::FragmentMgr::_exec_actual(std::shared_ptr<doris::FragmentExecState>, std::function<void (doris::PlanFragmentExecutor*)>) (this=this@entry=0x7fe03ce44540, exec_state=..., cb=...) at /home/disk4/xuyang/work/baidu/bdg/doris/palo-toolchain/ldb_toolchain/include/c++/11/bits/shared_ptr_base.h:1290 #21 0x00007fe034cf18fa in operator() (__closure=<optimized out>) at /home/disk4/xuyang/work/baidu/bdg/doris/palo-toolchain/ldb_toolchain/include/c++/11/ext/atomicity.h:109 #22 __invoke_impl<void, doris::FragmentMgr::exec_plan_fragment(const doris::TExecPlanFragmentParams&, doris::FragmentMgr::FinishCallback)::<lambda()>&> (__f=...) at /home/disk4/xuyang/work/baidu/bdg/doris/palo-toolchain/ldb_toolchain/include/c++/11/bits/invoke.h:61 #23 __invoke_r<void, doris::FragmentMgr::exec_plan_fragment(const doris::TExecPlanFragmentParams&, doris::FragmentMgr::FinishCallback)::<lambda()>&> (__fn=...) at /home/disk4/xuyang/work/baidu/bdg/doris/palo-toolchain/ldb_toolchain/include/c++/11/bits/invoke.h:111 #24 std::_Function_handler<void(), doris::FragmentMgr::exec_plan_fragment(const doris::TExecPlanFragmentParams&, doris::FragmentMgr::FinishCallback)::<lambda()> >::_M_invoke(const std::_Any_data &) (__functor=...) at /home/disk4/xuyang/work/baidu/bdg/doris/palo-toolchain/ldb_toolchain/include/c++/11/bits/std_function.h:291 #25 0x00007fe034f97eed in operator() (this=<optimized out>) at /home/disk4/xuyang/work/baidu/bdg/doris/palo-toolchain/ldb_toolchain/include/c++/11/bits/std_function.h:556 #26 run (this=<optimized out>) at /home/disk4/xuyang/work/baidu/bdg/doris/core/be/src/util/threadpool.cpp:45 #27 doris::ThreadPool::dispatch_thread (this=0x7fe03cfe3400) at /home/disk4/xuyang/work/baidu/bdg/doris/core/be/src/util/threadpool.cpp:540 #28 0x00007fe034f8c9ef in operator() (this=0x7fe068859b38) at /home/disk4/xuyang/work/baidu/bdg/doris/palo-toolchain/ldb_toolchain/include/c++/11/bits/std_function.h:556 #29 doris::Thread::supervise_thread (arg=0x7fe068859b20) at /home/disk4/xuyang/work/baidu/bdg/doris/core/be/src/util/thread.cpp:408 #30 0x00007fe02fa18aa1 in start_thread () from /lib64/libpthread.so.0 #31 0x00007fe02fd16c4d in clone () from /lib64/libc.so.6 ``` ### What You Expected? work well. ### How to Reproduce? ``` set enable_vectorized_engine = false; select cast([1,2,3] as Array<Int>) ``` ### Anything Else? _No response_ ### Are you willing to submit PR? - [X] Yes I am willing to submit a PR! ### Code of Conduct - [X] I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org