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/06/09 09:06:00 UTC

[GitHub] [incubator-doris] BiteTheDDDDt opened a new issue, #10038: [Bug] [Vectorized] code dump on aggregate node over union node

BiteTheDDDDt opened a new issue, #10038:
URL: https://github.com/apache/incubator-doris/issues/10038

   ### 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?
   
   ```sql
   select k2, count(k1) from ((select k2, avg(k1) k1 from test_query_qa.baseall group by k2)             union all (select k2, count(k1) k1 from test_query_qa.test group by k2) )b group by k2             having k2 > 0 order by k2;
   ```
   
   ```cpp
   start time: Thu Jun 9 12:30:49 CST 2022
   *** Check failure stack trace: ***
       @     0x560f93c4ff01  google::LogMessage::Fail()
       @     0x560f93c52549  google::LogMessage::SendToLog()
       @     0x560f93c4fa3a  google::LogMessage::Flush()
       @     0x560f93c52bdd  google::LogMessageFatal::~LogMessageFatal()
       @     0x560f921e0754  doris::vectorized::VUnionNode::get_next_materialized()
       @     0x560f921e1f9a  doris::vectorized::VUnionNode::get_next()
       @     0x560f92144234  doris::vectorized::AggregationNode::get_next()
       @     0x560f914ee74b  doris::PlanFragmentExecutor::get_vectorized_internal()
       @     0x560f914ed009  doris::PlanFragmentExecutor::open_vectorized_internal()
       @     0x560f914ebd5e  doris::PlanFragmentExecutor::open()
       @     0x560f914c7392  doris::FragmentExecState::execute()
       @     0x560f914c9039  doris::FragmentMgr::_exec_actual()
       @     0x560f914e5b1e  std::__invoke_impl<>()
       @     0x560f914e595c  _ZSt10__invoke_rIvRMN5doris11FragmentMgrEFvSt10shared_ptrINS0_17FragmentExecStateEESt8functionIFvPNS0_20PlanFragmentExecutorEEEEJRPS1_RS4_RS9_EENSt9enable_ifIX16is_invocable_r_vIT_T0_DpT1_EESI_E4typeEOSJ_DpOSK_
       @     0x560f914e58f7  _ZNSt12_Bind_resultIvFMN5doris11FragmentMgrEFvSt10shared_ptrINS0_17FragmentExecStateEESt8functionIFvPNS0_20PlanFragmentExecutorEEEEPS1_S4_S9_EE6__callIvJEJLm0ELm1ELm2EEEET_OSt5tupleIJDpT0_EESt12_Index_tupleIJXspT1_EEE
       @     0x560f914e5866  std::_Bind_result<>::operator()<>()
       @     0x560f914e581d  std::__invoke_impl<>()
       @     0x560f914e57cd  _ZSt10__invoke_rIvRSt12_Bind_resultIvFMN5doris11FragmentMgrEFvSt10shared_ptrINS1_17FragmentExecStateEESt8functionIFvPNS1_20PlanFragmentExecutorEEEEPS2_S5_SA_EEJEENSt9enable_ifIX16is_invocable_r_vIT_T0_DpT1_EESI_E4typeEOSJ_DpOSK_
       @     0x560f914e528d  std::_Function_handler<>::_M_invoke()
       @     0x560f91452545  std::function<>::operator()()
       @     0x560f9183e3c9  doris::FunctionRunnable::run()
       @     0x560f91836cdf  doris::ThreadPool::dispatch_thread()
       @     0x560f9184507e  std::__invoke_impl<>()
       @     0x560f91844fb2  std::__invoke<>()
       @     0x560f91844f6d  _ZNSt5_BindIFMN5doris10ThreadPoolEFvvEPS1_EE6__callIvJEJLm0EEEET_OSt5tupleIJDpT0_EESt12_Index_tupleIJXspT1_EEE
       @     0x560f91844f26  std::_Bind<>::operator()<>()
       @     0x560f91844edd  std::__invoke_impl<>()
       @     0x560f91844e8d  _ZSt10__invoke_rIvRSt5_BindIFMN5doris10ThreadPoolEFvvEPS2_EEJEENSt9enable_ifIX16is_invocable_r_vIT_T0_DpT1_EESA_E4typeEOSB_DpOSC_
       @     0x560f91844c2d  std::_Function_handler<>::_M_invoke()
       @     0x560f91452545  std::function<>::operator()()
       @     0x560f9182874e  doris::Thread::supervise_thread()
       @     0x7f146ccfa609  start_thread
   *** Aborted at 1654749109 (unix time) try "date -d @1654749109" if you are using GNU date ***
   *** SIGABRT unkown detail explain (@0x3e8000006eb) received by PID 1771 (TID 0x7f1428378700) from PID 1771; stack trace: ***
    0# doris::signal::(anonymous namespace)::FailureSignalHandler(int, siginfo_t*, void*) at /home/bitetheddddt/dbdev/incubator-doris/be/src/common/signal_handler.h:407
    1# 0x00007F146CEAD090 in /lib/x86_64-linux-gnu/libc.so.6
    2# raise in /lib/x86_64-linux-gnu/libc.so.6
    3# abort in /lib/x86_64-linux-gnu/libc.so.6
    4# 0x0000560F93C5AC0D in /home/bitetheddddt/dbdev/incubator-doris/output/be/lib/palo_be
    5# 0x0000560F93C4FF01 at src/logging.cc:1650
    6# google::LogMessage::SendToLog() at src/logging.cc:1607
    7# google::LogMessage::Flush() at src/logging.cc:1477
    8# google::LogMessageFatal::~LogMessageFatal() at src/logging.cc:2227
    9# doris::vectorized::VUnionNode::get_next_materialized(doris::RuntimeState*, doris::vectorized::Block*) in /home/bitetheddddt/dbdev/incubator-doris/output/be/lib/palo_be
   10# doris::vectorized::VUnionNode::get_next(doris::RuntimeState*, doris::vectorized::Block*, bool*) at /home/bitetheddddt/dbdev/incubator-doris/be/src/vec/exec/vunion_node.cpp:235
   11# doris::vectorized::AggregationNode::get_next(doris::RuntimeState*, doris::vectorized::Block*, bool*) at /home/bitetheddddt/dbdev/incubator-doris/be/src/vec/exec/vaggregation_node.cpp:380
   12# doris::PlanFragmentExecutor::get_vectorized_internal(doris::vectorized::Block**) at /home/bitetheddddt/dbdev/incubator-doris/be/src/runtime/plan_fragment_executor.cpp:328
   13# doris::PlanFragmentExecutor::open_vectorized_internal() at /home/bitetheddddt/dbdev/incubator-doris/be/src/runtime/plan_fragment_executor.cpp:277
   14# doris::PlanFragmentExecutor::open() at /home/bitetheddddt/dbdev/incubator-doris/be/src/runtime/plan_fragment_executor.cpp:235
   15# doris::FragmentExecState::execute() at /home/bitetheddddt/dbdev/incubator-doris/be/src/runtime/fragment_mgr.cpp:242
   16# doris::FragmentMgr::_exec_actual(std::shared_ptr<doris::FragmentExecState>, std::function<void (doris::PlanFragmentExecutor*)>) at /home/bitetheddddt/dbdev/incubator-doris/be/src/runtime/fragment_mgr.cpp:483
   17# void std::__invoke_impl<void, void (doris::FragmentMgr::*&)(std::shared_ptr<doris::FragmentExecState>, std::function<void (doris::PlanFragmentExecutor*)>), doris::FragmentMgr*&, std::shared_ptr<doris::FragmentExecState>&, std::function<void (doris::PlanFragmentExecutor*)>&>(std::__invoke_memfun_deref, void (doris::FragmentMgr::*&)(std::shared_ptr<doris::FragmentExecState>, std::function<void (doris::PlanFragmentExecutor*)>), doris::FragmentMgr*&, std::shared_ptr<doris::FragmentExecState>&, std::function<void (doris::PlanFragmentExecutor*)>&) at /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:74
   18# std::enable_if<is_invocable_r_v<void, void (doris::FragmentMgr::*&)(std::shared_ptr<doris::FragmentExecState>, std::function<void (doris::PlanFragmentExecutor*)>), doris::FragmentMgr*&, std::shared_ptr<doris::FragmentExecState>&, std::function<void (doris::PlanFragmentExecutor*)>&>, void>::type std::__invoke_r<void, void (doris::FragmentMgr::*&)(std::shared_ptr<doris::FragmentExecState>, std::function<void (doris::PlanFragmentExecutor*)>), doris::FragmentMgr*&, std::shared_ptr<doris::FragmentExecState>&, std::function<void (doris::PlanFragmentExecutor*)>&>(void (doris::FragmentMgr::*&)(std::shared_ptr<doris::FragmentExecState>, std::function<void (doris::PlanFragmentExecutor*)>), doris::FragmentMgr*&, std::shared_ptr<doris::FragmentExecState>&, std::function<void (doris::PlanFragmentExecutor*)>&) at /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:117
   19# void std::_Bind_result<void, void (doris::FragmentMgr::*(doris::FragmentMgr*, std::shared_ptr<doris::FragmentExecState>, std::function<void (doris::PlanFragmentExecutor*)>))(std::shared_ptr<doris::FragmentExecState>, std::function<void (doris::PlanFragmentExecutor*)>)>::__call<void, , 0ul, 1ul, 2ul>(std::tuple<>&&, std::_Index_tuple<0ul, 1ul, 2ul>) at /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/functional:570
   20# void std::_Bind_result<void, void (doris::FragmentMgr::*(doris::FragmentMgr*, std::shared_ptr<doris::FragmentExecState>, std::function<void (doris::PlanFragmentExecutor*)>))(std::shared_ptr<doris::FragmentExecState>, std::function<void (doris::PlanFragmentExecutor*)>)>::operator()<>() at /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/functional:629
   21# void std::__invoke_impl<void, std::_Bind_result<void, void (doris::FragmentMgr::*(doris::FragmentMgr*, std::shared_ptr<doris::FragmentExecState>, std::function<void (doris::PlanFragmentExecutor*)>))(std::shared_ptr<doris::FragmentExecState>, std::function<void (doris::PlanFragmentExecutor*)>)>&>(std::__invoke_other, std::_Bind_result<void, void (doris::FragmentMgr::*(doris::FragmentMgr*, std::shared_ptr<doris::FragmentExecState>, std::function<void (doris::PlanFragmentExecutor*)>))(std::shared_ptr<doris::FragmentExecState>, std::function<void (doris::PlanFragmentExecutor*)>)>&) at /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:61
   22# std::enable_if<is_invocable_r_v<void, std::_Bind_result<void, void (doris::FragmentMgr::*(doris::FragmentMgr*, std::shared_ptr<doris::FragmentExecState>, std::function<void (doris::PlanFragmentExecutor*)>))(std::shared_ptr<doris::FragmentExecState>, std::function<void (doris::PlanFragmentExecutor*)>)>&>, void>::type std::__invoke_r<void, std::_Bind_result<void, void (doris::FragmentMgr::*(doris::FragmentMgr*, std::shared_ptr<doris::FragmentExecState>, std::function<void (doris::PlanFragmentExecutor*)>))(std::shared_ptr<doris::FragmentExecState>, std::function<void (doris::PlanFragmentExecutor*)>)>&>(std::_Bind_result<void, void (doris::FragmentMgr::*(doris::FragmentMgr*, std::shared_ptr<doris::FragmentExecState>, std::function<void (doris::PlanFragmentExecutor*)>))(std::shared_ptr<doris::FragmentExecState>, std::function<void (doris::PlanFragmentExecutor*)>)>&) at /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:117
   23# std::_Function_handler<void (), std::_Bind_result<void, void (doris::FragmentMgr::*(doris::FragmentMgr*, std::shared_ptr<doris::FragmentExecState>, std::function<void (doris::PlanFragmentExecutor*)>))(std::shared_ptr<doris::FragmentExecState>, std::function<void (doris::PlanFragmentExecutor*)>)> >::_M_invoke(std::_Any_data const&) at /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/std_function.h:291
   24# std::function<void ()>::operator()() const at /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/std_function.h:560
   25# doris::FunctionRunnable::run() at /home/bitetheddddt/dbdev/incubator-doris/be/src/util/threadpool.cpp:45
   26# doris::ThreadPool::dispatch_thread() at /home/bitetheddddt/dbdev/incubator-doris/be/src/util/threadpool.cpp:540
   27# void std::__invoke_impl<void, void (doris::ThreadPool::*&)(), doris::ThreadPool*&>(std::__invoke_memfun_deref, void (doris::ThreadPool::*&)(), doris::ThreadPool*&) at /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:74
   28# std::__invoke_result<void (doris::ThreadPool::*&)(), doris::ThreadPool*&>::type std::__invoke<void (doris::ThreadPool::*&)(), doris::ThreadPool*&>(void (doris::ThreadPool::*&)(), doris::ThreadPool*&) at /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:96
   29# void std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()>::__call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) at /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/functional:420
   30# void std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()>::operator()<, void>() at /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/functional:503
   31# void std::__invoke_impl<void, std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()>&>(std::__invoke_other, std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()>&) at /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:61
   32# 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 /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:117
   33# std::_Function_handler<void (), std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()> >::_M_invoke(std::_Any_data const&) at /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/std_function.h:291
   34# std::function<void ()>::operator()() const at /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/std_function.h:560
   35# doris::Thread::supervise_thread(void*) at /home/bitetheddddt/dbdev/incubator-doris/be/src/util/thread.cpp:408
   36# start_thread in /lib/x86_64-linux-gnu/libpthread.so.0
   37# __clone in /lib/x86_64-linux-gnu/libc.so.6
   ```
   
   ### What You Expected?
   
   fix
   
   ### 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] [incubator-doris] yiguolei closed issue #10038: [Bug] [Vectorized] code dump on aggregate node over union node

Posted by GitBox <gi...@apache.org>.
yiguolei closed issue #10038: [Bug] [Vectorized] code dump on aggregate node over union node
URL: https://github.com/apache/incubator-doris/issues/10038


-- 
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