You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by GitBox <gi...@apache.org> on 2022/12/26 07:54:31 UTC
[GitHub] [doris] jacktengg opened a new issue, #15359: [Bug] BE coredump for extreme large string columns
jacktengg opened a new issue, #15359:
URL: https://github.com/apache/doris/issues/15359
### Search before asking
- [X] I had searched in the [issues](https://github.com/apache/doris/issues?q=is%3Aissue) and found no similar issues.
### Version
master 24a994eb9fb9e9b9eee2b79ced4bea55b9a98d8d
### What's Wrong?
be coredump when executing the following test sql:
```
select /*+ SET_VAR(query_timeout = 600) */ ref_7.`k1` as c0, ref_8.`p_size` as c1, ref_7.`v1` as c2 from regression_test_datatype_p0_string.str_tb as ref_7 left join regression_test_ssb_sf1.part as ref_8 on (ref_7.`k1` = ref_8.`p_name` ) inner join regression_test_datev2_tpch_sf1_p1.supplier as ref_9 on (true) where true order by ref_8.`p_container` limit 79 offset 121
```
coredump stack:
```
0# doris::signal::(anonymous namespace)::FailureSignalHandler(int, siginfo_t*, void*) at /mnt/disk1/yuejing/projects/doris/be/src/common/signal_handler.h:420
1# 0x00007F0D54185400 in /lib64/libc.so.6
2# __GI_raise in /lib64/libc.so.6
3# __GI_abort in /lib64/libc.so.6
4# _nl_load_domain.cold.0 in /lib64/libc.so.6
5# 0x00007F0D5417DA76 in /lib64/libc.so.6
6# doris::vectorized::PODArray<unsigned char, 4096ul, Allocator<false, false>, 15ul, 16ul>::operator[](long) const in /mnt/disk1/yuejing/projects/doris/output/be/lib/doris_be
7# doris::vectorized::ColumnString::permute(doris::vectorized::PODArray<unsigned long, 4096ul, Allocator<false, false>, 15ul, 16ul> const&, unsigned long) const at /mnt/disk1/yuejing/projects/doris/be/src/vec/columns/column_string.cpp:191
8# doris::vectorized::ColumnNullable::permute(doris::vectorized::PODArray<unsigned long, 4096ul, Allocator<false, false>, 15ul, 16ul> const&, unsigned long) const at /mnt/disk1/yuejing/projects/doris/be/src/vec/columns/column_nullable.cpp:325
9# doris::vectorized::sort_block(doris::vectorized::Block&, doris::vectorized::Block&, std::vector<doris::vectorized::SortColumnDescription, std::allocator<doris::vectorized::SortColumnDescription> > const&, unsigned long) at /mnt/disk1/yuejing/projects/doris/be/src/vec/core/sort_block.cpp:87
10# doris::vectorized::Sorter::partial_sort(doris::vectorized::Block&, doris::vectorized::Block&) at /mnt/disk1/yuejing/projects/doris/be/src/vec/common/sort/sorter.cpp:116
11# doris::vectorized::TopNSorter::_do_sort(doris::vectorized::Block*) at /mnt/disk1/yuejing/projects/doris/be/src/vec/common/sort/topn_sorter.cpp:57
12# doris::vectorized::TopNSorter::append_block(doris::vectorized::Block*) at /mnt/disk1/yuejing/projects/doris/be/src/vec/common/sort/topn_sorter.cpp:31
13# doris::vectorized::VSortNode::sink(doris::RuntimeState*, doris::vectorized::Block*, bool) at /mnt/disk1/yuejing/projects/doris/be/src/vec/exec/vsort_node.cpp:92
14# doris::vectorized::VSortNode::open(doris::RuntimeState*) at /mnt/disk1/yuejing/projects/doris/be/src/vec/exec/vsort_node.cpp:122
15# doris::PlanFragmentExecutor::open_vectorized_internal() at /mnt/disk1/yuejing/projects/doris/be/src/runtime/plan_fragment_executor.cpp:278
16# doris::PlanFragmentExecutor::open() at /mnt/disk1/yuejing/projects/doris/be/src/runtime/plan_fragment_executor.cpp:250
17# doris::FragmentExecState::execute() at /mnt/disk1/yuejing/projects/doris/be/src/runtime/fragment_mgr.cpp:251
18# doris::FragmentMgr::_exec_actual(std::shared_ptr<doris::FragmentExecState>, std::function<void (doris::RuntimeState*, doris::Status*)>) at /mnt/disk1/yuejing/projects/doris/be
/src/runtime/fragment_mgr.cpp:495
19# doris::FragmentMgr::exec_plan_fragment(doris::TExecPlanFragmentParams const&, std::function<void (doris::RuntimeState*, doris::Status*)>)::$_3::operator()() const at /mnt/disk
1/yuejing/projects/doris/be/src/runtime/fragment_mgr.cpp:731
20# void std::__invoke_impl<void, doris::FragmentMgr::exec_plan_fragment(doris::TExecPlanFragmentParams const&, std::function<void (doris::RuntimeState*, doris::Status*)>)::$_3&>(
std::__invoke_other, doris::FragmentMgr::exec_plan_fragment(doris::TExecPlanFragmentParams const&, std::function<void (doris::RuntimeState*, doris::Status*)>)::$_3&) at /mnt/disk1
/yuejing/projects/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:61
21# std::enable_if<is_invocable_r_v<void, doris::FragmentMgr::exec_plan_fragment(doris::TExecPlanFragmentParams const&, std::function<void (doris::RuntimeState*, doris::Status*)>)
::$3&>, void>::type std::_invoke_r<void, doris::FragmentMgr::exec_plan_fragment(doris::TExecPlanFragmentParams const&, std::function<void (doris::RuntimeState*, doris::Status*)>
)::$_3&>(doris::FragmentMgr::exec_plan_fragment(doris::TExecPlanFragmentParams const&, std::function<void (doris::RuntimeState*, doris::Status*)>)::$_3&) at /mnt/disk1/yuejing/pro
jects/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:117
22# std::_Function_handler<void (), doris::FragmentMgr::exec_plan_fragment(doris::TExecPlanFragmentParams const&, std::function<void (doris::RuntimeState*, doris::Status*)>)::$_3>
::_M_invoke(std::_Any_data const&) at /mnt/disk1/yuejing/projects/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/std_function.h:291
23# std::function<void ()>::operator()() const at /mnt/disk1/yuejing/projects/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/std_function.h:560
24# doris::FunctionRunnable::run() at /mnt/disk1/yuejing/projects/doris/be/src/util/threadpool.cpp:46
25# doris::ThreadPool::dispatch_thread() at /mnt/disk1/yuejing/projects/doris/be/src/util/threadpool.cpp:535
26# void std::_invoke_impl<void, void (doris::ThreadPool::&)(), doris::ThreadPool&>(std::_invoke_memfun_deref, void (doris::ThreadPool::&)(), doris::ThreadPool&) at /mnt/dis
k1/yuejing/projects/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:74
27# std::_invoke_result<void (doris::ThreadPool::&)(), doris::ThreadPool&>::type std::_invoke<void (doris::ThreadPool::&)(), doris::ThreadPool&>(void (doris::ThreadPool::*&)
(), doris::ThreadPool*&) at /mnt/disk1/yuejing/projects/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:96
28# void std::Bind<void (doris::ThreadPool::(doris::ThreadPool))()>::_call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) at /mnt/disk1/yuejing/projects/ldb_toolchain/bi
n/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/functional:420
29# void std::_Bind<void (doris::ThreadPool::(doris::ThreadPool))()>::operator()<, void>() at /mnt/disk1/yuejing/projects/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../
../../include/c++/11/functional:503
30# void std::_invoke_impl<void, std::_Bind<void (doris::ThreadPool::(doris::ThreadPool))()>&>(std::_invoke_other, std::_Bind<void (doris::ThreadPool::(doris::ThreadPool))()
>&) at /mnt/disk1/yuejing/projects/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:61
31# std::enable_if<is_invocable_r_v<void, std::Bind<void (doris::ThreadPool::(doris::ThreadPool))()>&>, void>::type std::_invoke_r<void, std::_Bind<void (doris::ThreadPool::*(
doris::ThreadPool*))()>&>(std::_Bind<void (doris::ThreadPool::(doris::ThreadPool))()>&) at /mnt/disk1/yuejing/projects/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../
../include/c++/11/bits/invoke.h:117
32# std::_Function_handler<void (), std::_Bind<void (doris::ThreadPool::(doris::ThreadPool))()> >::_M_invoke(std::_Any_data const&) at /mnt/disk1/yuejing/projects/ldb_toolchain/
bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/std_function.h:291
33# std::function<void ()>::operator()() const at /mnt/disk1/yuejing/projects/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/std_function.h:560
34# doris::Thread::supervise_thread(void*) at /mnt/disk1/yuejing/projects/doris/be/src/util/thread.cpp:454
35# start_thread in /lib64/libpthread.so.0
36# _GI__clone in /lib64/libc.so.6
```
### What You Expected?
no coredump
### How to Reproduce?
_No response_
### 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-unsubscribe@doris.apache.org.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org
[GitHub] [doris] yiguolei closed issue #15359: [Bug] BE coredump for extreme large string columns
Posted by GitBox <gi...@apache.org>.
yiguolei closed issue #15359: [Bug] BE coredump for extreme large string columns
URL: https://github.com/apache/doris/issues/15359
--
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-unsubscribe@doris.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org