doris
doris copied to clipboard
[fix](bug) fix the be coredump caused by type conversion
Proposed changes
1、problem
fix the be coredump caused by type conversion
2、be stack
0# doris::signal::(anonymous namespace)::FailureSignalHandler(int, siginfo_t*, void*) in /usr/local/service/doris/lib/be/doris_be
1# 0x00007EFFC433C400 in /lib64/libc.so.6
2# __GI_raise in /lib64/libc.so.6
3# abort in /lib64/libc.so.6
4# __gnu_cxx::__verbose_terminate_handler() [clone .cold] in /usr/local/service/doris/lib/be/doris_be
5# __cxxabiv1::__terminate(void (*)()) in /usr/local/service/doris/lib/be/doris_be
6# 0x000055F054E53B61 in /usr/local/service/doris/lib/be/doris_be
7# 0x000055F054E53CB4 in /usr/local/service/doris/lib/be/doris_be
8# __cxa_bad_typeid in /usr/local/service/doris/lib/be/doris_be
9# doris::vectorized::ColumnVector<int>::insert_range_from(doris::vectorized::IColumn const&, unsigned long, unsigned long) in /usr/local/service/doris/lib/be/doris_be
10# doris::vectorized::ColumnNullable::insert_range_from(doris::vectorized::IColumn const&, unsigned long, unsigned long) in /usr/local/service/doris/lib/be/doris_be
11# doris::ExecNode::do_projections(doris::vectorized::Block*, doris::vectorized::Block*) in /usr/local/service/doris/lib/be/doris_be
12# doris::ExecNode::get_next_after_projects(doris::RuntimeState*, doris::vectorized::Block*, bool*) in /usr/local/service/doris/lib/be/doris_be
13# doris::vectorized::AggregationNode::get_next(doris::RuntimeState*, doris::vectorized::Block*, bool*) in /usr/local/service/doris/lib/be/doris_be
14# doris::ExecNode::get_next_after_projects(doris::RuntimeState*, doris::vectorized::Block*, bool*) in /usr/local/service/doris/lib/be/doris_be
15# doris::PlanFragmentExecutor::get_vectorized_internal(doris::vectorized::Block**) in /usr/local/service/doris/lib/be/doris_be
16# doris::PlanFragmentExecutor::open_vectorized_internal() in /usr/local/service/doris/lib/be/doris_be
17# doris::PlanFragmentExecutor::open() in /usr/local/service/doris/lib/be/doris_be
18# doris::FragmentExecState::execute() in /usr/local/service/doris/lib/be/doris_be
19# doris::FragmentMgr::_exec_actual(std::shared_ptr<doris::FragmentExecState>, std::function<void (doris::PlanFragmentExecutor*)>) in /usr/local/service/doris/lib/be/doris_be
20# std::_Function_handler<void (), doris::FragmentMgr::exec_plan_fragment(doris::TExecPlanFragmentParams const&, std::function<void (doris::PlanFragmentExecutor*)>)::{lambda()#1}>::_M_invoke(std::_Any_data const&) in /usr/local/service/doris/lib/be/doris_be
21# doris::ThreadPool::dispatch_thread() in /usr/local/service/doris/lib/be/doris_be
22# doris::Thread::supervise_thread(void*) in /usr/local/service/doris/lib/be/doris_be
23# start_thread in /lib64/libpthread.so.0
24# __clone in /lib64/libc.so.6
Further comments
If this is a relatively large or complex change, kick off the discussion at [email protected] by explaining why you chose the solution you did and what alternatives you considered, etc...
Thank you for your contribution to Apache Doris. Don't know what should be done next? See How to process your PR
Since 2024-03-18, the Document has been moved to doris-website. See Doris Document.
run buildall
PR approved by at least one committer and no changes requested.
PR approved by anyone and no changes requested.
same as pr: https://github.com/apache/doris/pull/15326 on branch-2.0