Skip to content

branch-2.1: [fix](agg) Fixed a core dump when using the IPv6 type in array_agg. #44877 - #44918

Merged
yiguolei merged 1 commit into
branch-2.1from
auto-pick-44877-branch-2.1
Dec 4, 2024
Merged

branch-2.1: [fix](agg) Fixed a core dump when using the IPv6 type in array_agg. #44877#44918
yiguolei merged 1 commit into
branch-2.1from
auto-pick-44877-branch-2.1

Conversation

@github-actions

Copy link
Copy Markdown
Contributor

Cherry-picked from #44877

…44877)
### What problem does this PR solve?
#40697 that introduced the issue.
```
F20241202 18:56:00.498481 233860 assert_cast.h:57] Bad cast from type:doris::vectorized::ColumnVector<unsigned __int128> to doris::vectorized::ColumnVector<wide::integer<128ul, unsigned int> >
*** Check failure stack trace: ***
@ 0x562c12168fb6 google::LogMessage::SendToLog()
@ 0x562c12165a00 google::LogMessage::Flush()
@ 0x562c121697f9 google::LogMessageFatal::~LogMessageFatal()
@ 0x562c0acb66a6 _ZZ11assert_castIRN5doris10vectorized12ColumnVectorIN4wide7integerILm128EjEEEEL18TypeCheckOnRelease1ERNS1_7IColumnEET_OT1_ENKUlOSB_E_clISA_EES7_SE_
@ 0x562c0acb64e7 assert_cast<>()
@ 0x562c0acb637d doris::vectorized::AggregateFunctionArrayAggData<>::insert_result_into()
@ 0x562c11f12282 doris::pipeline::AggLocalState::_get_results_without_key()
@ 0x562c11f3a251 std::_Function_handler<>::_M_invoke()
@ 0x562c11f13ee8 doris::pipeline::AggSourceOperatorX::get_block()
@ 0x562c1174e3cf doris::pipeline::OperatorXBase::get_block_after_projects()
@ 0x562c120ad87b doris::pipeline::PipelineTask::execute()
@ 0x562c120bb7b2 doris::pipeline::TaskScheduler::_do_work()
@ 0x562c081ef935 doris::ThreadPool::dispatch_thread()
@ 0x562c081e6321 doris::Thread::supervise_thread()
@ 0x7f446f9b01ca start_thread
@ 0x7f447039fe73 __GI___clone
@ (nil) (unknown)
*** Query id: c24a997f61b847d2-adece222f56b3b9e ***
*** is nereids: 1 ***
*** tablet id: 0 ***
*** Aborted at 1733136960 (unix time) try "date -d @1733136960" if you are using GNU date ***
*** Current BE git commitID: 1551ef9 ***
*** SIGABRT unknown detail explain (@0x47000039002) received by PID 233474 (TID 233860 OR 0x7f436d1f2700) from PID 233474; stack trace: ***
0# doris::signal::(anonymous namespace)::FailureSignalHandler(int, siginfo_t*, void*) at /mnt/disk2/yanxuecheng/doris/be/src/common/signal_handler.h:421
1# 0x00007F44703B4B50 in /lib64/libc.so.6
2# gsignal in /lib64/libc.so.6
3# __GI_abort in /lib64/libc.so.6
4# 0x0000562C1217388D in /mnt/disk2/yanxuecheng/doris/output/be/lib/doris_be
5# 0x0000562C12165ECA in /mnt/disk2/yanxuecheng/doris/output/be/lib/doris_be
6# google::LogMessage::SendToLog() in /mnt/disk2/yanxuecheng/doris/output/be/lib/doris_be
7# google::LogMessage::Flush() in /mnt/disk2/yanxuecheng/doris/output/be/lib/doris_be
8# google::LogMessageFatal::~LogMessageFatal() in /mnt/disk2/yanxuecheng/doris/output/be/lib/doris_be
9# doris::vectorized::ColumnVector<wide::integer<128ul, unsigned int> >& assert_cast<doris::vectorized::ColumnVector<wide::integer<128ul, unsigned int> >&, (TypeCheckOnRelease)1, doris::vectorized::IColumn&>(doris::vectorized::IColumn&)::{lambda(auto:1&&)#1}::operator()<doris::vectorized::IColumn&>(doris::vectorized::IColumn&) const at /mnt/disk2/yanxuecheng/doris/be/src/vec/common/assert_cast.h:57
10# doris::vectorized::ColumnVector<wide::integer<128ul, unsigned int> >& assert_cast<doris::vectorized::ColumnVector<wide::integer<128ul, unsigned int> >&, (TypeCheckOnRelease)1, doris::vectorized::IColumn&>(doris::vectorized::IColumn&) at /mnt/disk2/yanxuecheng/doris/be/src/vec/common/assert_cast.h:72
11# doris::vectorized::AggregateFunctionArrayAggData<wide::integer<128ul, unsigned int> >::insert_result_into(doris::vectorized::IColumn&) const in /mnt/disk2/yanxuecheng/doris/output/be/lib/doris_be
12# doris::pipeline::AggLocalState::_get_results_without_key(doris::RuntimeState*, doris::vectorized::Block*, bool*) at /mnt/disk2/yanxuecheng/doris/be/src/pipeline/exec/aggregation_source_operator.cpp:349
13# std::_Function_handler<doris::Status (doris::RuntimeState*, doris::vectorized::Block*, bool*), std::_Bind_result<doris::Status, doris::Status (doris::pipeline::AggLocalState::*(doris::pipeline::AggLocalState*, std::_Placeholder<1>, std::_Placeholder<2>, std::_Placeholder<3>))(doris::RuntimeState*, doris::vectorized::Block*, bool*)> >::_M_invoke(std::_Any_data const&, doris::RuntimeState*&&, doris::vectorized::Block*&&, bool*&&) at /mnt/disk2/yanxuecheng/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/std_function.h:290
14# doris::pipeline::AggSourceOperatorX::get_block(doris::RuntimeState*, doris::vectorized::Block*, bool*) at /mnt/disk2/yanxuecheng/doris/be/src/pipeline/exec/aggregation_source_operator.cpp:439
15# doris::pipeline::OperatorXBase::get_block_after_projects(doris::RuntimeState*, doris::vectorized::Block*, bool*) in /mnt/disk2/yanxuecheng/doris/output/be/lib/doris_be
16# doris::pipeline::PipelineTask::execute(bool*) at /mnt/disk2/yanxuecheng/doris/be/src/pipeline/pipeline_task.cpp:378
17# doris::pipeline::TaskScheduler::_do_work(int) at /mnt/disk2/yanxuecheng/doris/be/src/pipeline/task_scheduler.cpp:138
18# doris::ThreadPool::dispatch_thread() in /mnt/disk2/yanxuecheng/doris/output/be/lib/doris_be
19# doris::Thread::supervise_thread(void*) at /mnt/disk2/yanxuecheng/doris/be/src/util/thread.cpp:499
20# start_thread in /lib64/libpthread.so.0
21# __clone in /lib64/libc.so.6
```
@doris-robot

Copy link
Copy Markdown

Thank you for your contribution to Apache Doris.
Don't know what should be done next? See How to process your PR.

Please clearly describe your PR:

  1. What problem was fixed (it's best to include specific error reporting information). How it was fixed.
  2. Which behaviors were modified. What was the previous behavior, what is it now, why was it modified, and what possible impacts might there be.
  3. What features were added. Why was this function added?
  4. Which code was refactored and why was this part of the code refactored?
  5. Which functions were optimized and what is the difference before and after the optimization?

@doris-robot

Copy link
Copy Markdown

run buildall

@doris-robot

Copy link
Copy Markdown

TeamCity be ut coverage result:
Function Coverage: 36.74% (9612/26161)
Line Coverage: 28.13% (79071/281060)
Region Coverage: 26.78% (40573/151508)
Branch Coverage: 23.61% (20654/87466)
Coverage Report: http://coverage.selectdb-in.cc/coverage/0071f6eff29124b4c8e8728daf70076347ee5c50_0071f6eff29124b4c8e8728daf70076347ee5c50/report/index.html

@yiguolei
yiguolei merged commit dcf3eb3 into branch-2.1Dec 4, 2024
@github-actions
github-actionsBot deleted the auto-pick-44877-branch-2.1 branch December 4, 2024 14:05
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@doris-robot@yiguolei@dataroaring@Mryange