lide-reed opened a new issue, #13977:
URL: https://github.com/apache/doris/issues/13977

   ### 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
   
   1.1.3-rc02
   
   ### What's Wrong?
   
   one BE crash as following stack:
   
   WARNING: Logging before InitGoogleLogging() is written to STDERR
   I1104 20:18:24.117200 672798 env.cpp:46] Env init successfully.
   *** Check failure stack trace: ***
       @     0x56059e0f7a4d  google::LogMessage::Fail()
       @     0x56059e0f9f89  google::LogMessage::SendToLog()
       @     0x56059e0f75b6  google::LogMessage::Flush()
       @     0x56059e0fa5f9  google::LogMessageFatal::~LogMessageFatal()
       @     0x56059ca08116  doris::vectorized::ColumnNullable::ColumnNullable()
       @     0x56059ca0b4d1  doris::vectorized::ColumnNullable::create()
       @     0x56059dadf39a  
doris::vectorized::FunctionIf::execute_for_null_then_else()
       @     0x56059dadfd2c  doris::vectorized::FunctionIf::execute_impl()
       @     0x56059d5f9d4d  
doris::vectorized::PreparedFunctionImpl::execute_without_low_cardinality_columns()
       @     0x56059d5fb2c9  doris::vectorized::PreparedFunctionImpl::execute()
       @     0x56059d0e2504  doris::vectorized::IFunctionBase::execute()
       @     0x56059dbb452d  doris::vectorized::VectorizedFnCall::execute()
       @     0x56059cac50a7  doris::vectorized::VExprContext::execute()
       @     0x56059ceb0595  
doris::vectorized::HashJoinNode::_build_output_block()
       @     0x56059ceb154e  doris::vectorized::HashJoinNode::get_next()
       @     0x56059ceb179e  doris::vectorized::HashJoinNode::get_next()
       @     0x56059ceb179e  doris::vectorized::HashJoinNode::get_next()
       @     0x56059ceb179e  doris::vectorized::HashJoinNode::get_next()
       @     0x56059c4be66a  
doris::PlanFragmentExecutor::get_vectorized_internal()
       @     0x56059c4c2c2d  
doris::PlanFragmentExecutor::open_vectorized_internal()
       @     0x56059c4c46df  doris::PlanFragmentExecutor::open()
       @     0x56059c43233f  doris::FragmentExecState::execute()
       @     0x56059c436eda  doris::FragmentMgr::_exec_actual()
       @     0x56059c4401cc  std::_Function_handler<>::_M_invoke()
       @     0x56059c5fbd1b  doris::ThreadPool::dispatch_thread()
       @     0x56059c5f531f  doris::Thread::supervise_thread()
       @     0x7fae62fbfea5  start_thread
       @     0x7fae632d29fd  __clone
       @              (nil)  (unknown)
   *** Aborted at 1667564733 (unix time) try "date -d @1667564733" if you are 
using GNU date ***
   *** SIGABRT unkown detail explain (@0xa441e) received by PID 672798 (TID 
0x7fad217fa700) from PID 672798; stack trace: ***
    0# doris::signal::(anonymous namespace)::FailureSignalHandler(int, 
siginfo_t*, void*) at /data/hc2/be/src/common/signal_handler.h:420
    1# 0x00007FAE6320A400 in /lib64/libc.so.6
    2# __GI_raise in /lib64/libc.so.6
    3# abort in /lib64/libc.so.6
    4# 0x000056059BCE06F2 in /usr/local/service/doris/lib/be/doris_be
    5# 0x000056059E0F7A4D in /usr/local/service/doris/lib/be/doris_be
    6# google::LogMessage::SendToLog() in 
/usr/local/service/doris/lib/be/doris_be
    7# google::LogMessage::Flush() in /usr/local/service/doris/lib/be/doris_be
    8# google::LogMessageFatal::~LogMessageFatal() in 
/usr/local/service/doris/lib/be/doris_be
    9# 
doris::vectorized::ColumnNullable::ColumnNullable(COW<doris::vectorized::IColumn>::mutable_ptr<doris::vectorized::IColumn>&&,
 COW<doris::vectorized::IColumn>::mutable_ptr<doris::vectorized::IColumn>&&) at 
/data/hc2/be/src/vec/columns/column_nullable.cpp:44
   10# 
doris::vectorized::ColumnNullable::create(COW<doris::vectorized::IColumn>::immutable_ptr<doris::vectorized::IColumn>
 const&, 
COW<doris::vectorized::IColumn>::immutable_ptr<doris::vectorized::IColumn> 
const&) at /data/hc2/be/src/vec/columns/column_nullable.h:56
   11# 
doris::vectorized::FunctionIf::execute_for_null_then_else(doris_udf::FunctionContext*,
 doris::vectorized::Block&, doris::vectorized::ColumnWithTypeAndName const&, 
doris::vectorized::ColumnWithTypeAndName const&, 
doris::vectorized::ColumnWithTypeAndName const&, unsigned long, unsigned long, 
doris::Status&) at /data/hc2/be/src/vec/functions/if.cpp:281
   12# doris::vectorized::FunctionIf::execute_impl(doris_udf::FunctionContext*, 
doris::vectorized::Block&, std::vector<unsigned long, std::allocator<unsigned 
long> > const&, unsigned long, unsigned long) at 
/data/hc2/be/src/vec/functions/if.cpp:447
   13# 
doris::vectorized::PreparedFunctionImpl::execute_without_low_cardinality_columns(doris_udf::FunctionContext*,
 doris::vectorized::Block&, std::vector<unsigned long, std::allocator<unsigned 
long> > const&, unsigned long, unsigned long, bool) at 
/data/hc2/be/src/vec/functions/function.cpp:251
   14# 
doris::vectorized::PreparedFunctionImpl::execute(doris_udf::FunctionContext*, 
doris::vectorized::Block&, std::vector<unsigned long, std::allocator<unsigned 
long> > const&, unsigned long, unsigned long, bool) at 
/data/hc2/be/src/vec/functions/function.cpp:274
   15# doris::vectorized::IFunctionBase::execute(doris_udf::FunctionContext*, 
doris::vectorized::Block&, std::vector<unsigned long, std::allocator<unsigned 
long> > const&, unsigned long, unsigned long, bool) at 
/data/hc2/be/src/vec/functions/function.h:136
   16# 
doris::vectorized::VectorizedFnCall::execute(doris::vectorized::VExprContext*, 
doris::vectorized::Block*, int*) at 
/data/hc2/be/src/vec/exprs/vectorized_fn_call.cpp:90
   17# doris::vectorized::VExprContext::execute(doris::vectorized::Block*, 
int*) at /data/hc2/be/src/vec/exprs/vexpr_context.cpp:42
   18# 
doris::vectorized::HashJoinNode::_build_output_block(doris::vectorized::Block*, 
doris::vectorized::Block*) at 
/data/hc2/be/src/vec/exec/join/vhash_join_node.cpp:1470
   19# doris::vectorized::HashJoinNode::get_next(doris::RuntimeState*, 
doris::vectorized::Block*, bool*) at 
/data/hc2/be/src/vec/exec/join/vhash_join_node.cpp:1044
   20# doris::vectorized::HashJoinNode::get_next(doris::RuntimeState*, 
doris::vectorized::Block*, bool*) at 
/data/hc2/be/src/vec/exec/join/vhash_join_node.cpp:946
   21# doris::vectorized::HashJoinNode::get_next(doris::RuntimeState*, 
doris::vectorized::Block*, bool*) at 
/data/hc2/be/src/vec/exec/join/vhash_join_node.cpp:946
   22# doris::vectorized::HashJoinNode::get_next(doris::RuntimeState*, 
doris::vectorized::Block*, bool*) at 
/data/hc2/be/src/vec/exec/join/vhash_join_node.cpp:946
   23# 
doris::PlanFragmentExecutor::get_vectorized_internal(doris::vectorized::Block**)
 at /data/hc2/be/src/runtime/plan_fragment_executor.cpp:352
   24# doris::PlanFragmentExecutor::open_vectorized_internal() at 
/data/hc2/be/src/runtime/plan_fragment_executor.cpp:301
   25# doris::PlanFragmentExecutor::open() at 
/data/hc2/be/src/runtime/plan_fragment_executor.cpp:259
   26# doris::FragmentExecState::execute() at 
/data/hc2/be/src/runtime/fragment_mgr.cpp:248
   27# 
doris::FragmentMgr::_exec_actual(std::shared_ptr<doris::FragmentExecState>, 
std::function<void (doris::PlanFragmentExecutor*)>) at 
/data/hc2/be/src/runtime/fragment_mgr.cpp:480
   28# 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 
/var/local/ldb-toolchain/include/c++/11/bits/std_function.h:291
   29# doris::ThreadPool::dispatch_thread() at 
/data/hc2/be/src/util/threadpool.cpp:578
   30# doris::Thread::supervise_thread(void*) at 
/data/hc2/be/src/util/thread.cpp:407
   31# start_thread in /lib64/libpthread.so.0
   32# __clone in /lib64/libc.so.6
   
   ### What You Expected?
   
   no crash
   
   ### How to Reproduce?
   
   CREATE TABLE IF NOT EXISTS `t1` (
     `col1` varchar(10) NULL ,
     `col2` varchar(10) NULL ,
     `col3` varchar(10) NULL ,
     `col4` int(11) NULL ,
     `col5` double NULL ,
     `col6` double NULL ,
     `col7` int(11) NULL ,
     `col8` int(11) NULL ,
     `col9` int(11) NULL ,
     `col10` varchar(10) NULL ,
     `col11` varchar(10) NULL ,
     `col12` datetime NULL 
   ) ENGINE=OLAP
   UNIQUE KEY(`col1`)
   DISTRIBUTED BY HASH(`col1`) BUCKETS 2
   ;
   
   INSERT INTO `t1` VALUES 
('2022-11-04','2022-10-31','2022-11-04',62,5410345144.6,72113869936.064819,21,10,16,'-','-','2022-11-04
 17:40:19');
   
   INSERT INTO t1 (col1, col4, col5, col6, col7
           , col8, col9, col10, col11, col12)
   SELECT a.col1, a.col4, a.col5, a.col6, a.col7
           , col8, a.col9
           , CASE 
                   WHEN c.curr_week_num IS NULL
                   OR c.curr_week_num = 0 THEN '0'
                   ELSE CAST((b.next_week_num / c.curr_week_num - 1) * 100 AS 
STRING)
           END
           , CASE 
                   WHEN e.curr_week_value IS NULL
                   OR e.curr_week_value = 0 THEN '0'
                   ELSE CAST((d.next_week_value / e.curr_week_value - 1) * 100 
AS STRING)
           END, now()
   FROM t1 a
           LEFT JOIN (
                   SELECT to_date(now()) AS col1, col5 AS next_week_num
                   FROM t1
                   WHERE col1 = to_date(now())
           ) b
           ON a.col1 = b.col1
           LEFT JOIN (
                   SELECT to_date(now()) AS col1, col5 AS curr_week_num
                   FROM t1
                   WHERE col1 = to_date(days_sub(now(), 7))
           ) c
           ON a.col1 = c.col1
           LEFT JOIN (
                   SELECT to_date(now()) AS col1, col6 AS next_week_value
                   FROM t1
                   WHERE col1 = to_date(now())
           ) d
           ON a.col1 = d.col1
           LEFT JOIN (
                   SELECT to_date(now()) AS col1, col6 AS curr_week_value
                   FROM t1
                   WHERE col1 = to_date(days_sub(now(), 7))
           ) e
           ON a.col1 = e.col1
   WHERE a.col1 = to_date(now());
   
   ### Anything Else?
   
   _No response_
   
   ### Are you willing to submit PR?
   
   - [ ] 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

Reply via email to