BiteTheDDDDt opened a new pull request, #28050:
URL: https://github.com/apache/doris/pull/28050

   ## Proposed changes
   fix stream load failed on agg-state column
   ```cpp
   2023-12-06 11:30:51,014 INFO (thrift-server-pool-3|533) 
[DatabaseTransactionMgr.abortTransaction():1433] abort transaction: 
TransactionState. transaction id: 33020, label: 
784f0131-35ad-449b-9c26-a5e40109e08b, db id: 18879, table id list: 336021, 
callback id: -1, coordinator: BE: 127.0.0.1, transaction status: ABORTED, error 
replicas num: 0, replica ids: , prepare time: 1701833419507, commit time: -1, 
finish time: 1701833451011, reason: [INTERNAL_ERROR]State function meet input 
nullable column, but signature is not nullable
   
        0#  doris::Status doris::Status::Error<6, 
true>(std::basic_string_view<char, std::char_traits<char> >) at 
/mnt/disk1/xiaolei/incubator-doris/be/src/common/status.h:366
        1#  doris::Status 
doris::Status::InternalError<true>(std::basic_string_view<char, 
std::char_traits<char> >) at 
/mnt/disk1/xiaolei/incubator-doris/be/src/common/status.h:411
        2#  
doris::vectorized::FunctionAggState::execute_impl(doris::FunctionContext*, 
doris::vectorized::Block&, std::vector<unsigned long, std::allocator<unsigned 
long> > const&, unsigned long, unsigned long) const at 
/mnt/disk1/xiaolei/incubator-doris/be/src/vec/functions/function_agg_state.h:77
        3#  
doris::vectorized::DefaultExecutable::execute_impl(doris::FunctionContext*, 
doris::vectorized::Block&, std::vector<unsigned long, std::allocator<unsigned 
long> > const&, unsigned long, unsigned long) const at 
/mnt/disk1/xiaolei/incubator-doris/be/src/vec/functions/function.h:499
        4#  
doris::vectorized::PreparedFunctionImpl::_execute_skipped_constant_deal(doris::FunctionContext*,
 doris::vectorized::Block&, std::vector<unsigned long, std::allocator<unsigned 
long> > const&, unsigned long, unsigned long, bool) at 
/mnt/disk1/xiaolei/incubator-doris/be/src/vec/functions/function.cpp:151
        5#  
doris::vectorized::PreparedFunctionImpl::execute_without_low_cardinality_columns(doris::FunctionContext*,
 doris::vectorized::Block&, std::vector<unsigned long, std::allocator<unsigned 
long> > const&, unsigned long, unsigned long, bool) at 
/mnt/disk1/xiaolei/incubator-doris/be/src/vec/functions/function.cpp:262
        6#  
doris::vectorized::PreparedFunctionImpl::execute(doris::FunctionContext*, 
doris::vectorized::Block&, std::vector<unsigned long, std::allocator<unsigned 
long> > const&, unsigned long, unsigned long, bool) at 
/mnt/disk1/xiaolei/incubator-doris/be/src/vec/functions/function.cpp:268
        7#  doris::vectorized::IFunctionBase::execute(doris::FunctionContext*, 
doris::vectorized::Block&, std::vector<unsigned long, std::allocator<unsigned 
long> > const&, unsigned long, unsigned long, bool) at 
/mnt/disk1/xiaolei/incubator-doris/be/src/vec/functions/function.h:177
        8#  
doris::vectorized::VectorizedFnCall::execute(doris::vectorized::VExprContext*, 
doris::vectorized::Block*, int*) at 
/mnt/disk1/xiaolei/incubator-doris/be/src/vec/exprs/vectorized_fn_call.cpp:164
        9#  doris::vectorized::VExprContext::execute(doris::vectorized::Block*, 
int*) at 
/mnt/disk1/xiaolei/incubator-doris/be/src/vec/exprs/vexpr_context.cpp:60
        10# 
doris::vectorized::VFileScanner::_convert_to_output_block(doris::vectorized::Block*)
 at 
/mnt/disk1/xiaolei/incubator-doris/be/src/vec/exec/scan/vfile_scanner.cpp:584
        11# 
doris::vectorized::VFileScanner::_get_block_impl(doris::RuntimeState*, 
doris::vectorized::Block*, bool*) at 
/mnt/disk1/xiaolei/incubator-doris/be/src/vec/exec/scan/vfile_scanner.cpp:350
        12# doris::vectorized::VScanner::get_block(doris::RuntimeState*, 
doris::vectorized::Block*, bool*) at 
/mnt/disk1/xiaolei/incubator-doris/be/src/vec/exec/scan/vscanner.cpp:92
        13# 
doris::vectorized::ScannerScheduler::_scanner_scan(doris::vectorized::ScannerScheduler*,
 doris::vectorized::ScannerContext*, 
std::shared_ptr<doris::vectorized::VScanner>) at 
/mnt/disk1/xiaolei/incubator-doris/be/src/vec/exec/scan/scanner_scheduler.cpp:372
        14# 
doris::vectorized::ScannerScheduler::_schedule_scanners(doris::vectorized::ScannerContext*)::$_1::operator()()
 const::{lambda()#5}::operator()() const at 
/mnt/disk1/xiaolei/incubator-doris/be/src/vec/exec/scan/scanner_scheduler.cpp:272
        15# void std::__invoke_impl<void, 
doris::vectorized::ScannerScheduler::_schedule_scanners(doris::vectorized::ScannerContext*)::$_1::operator()()
 const::{lambda()#5}&>(std::__invoke_other, 
doris::vectorized::ScannerScheduler::_schedule_scanners(doris::vectorized::ScannerContext*)::$_1::operator()()
 const::{lambda()#5}&) at 
/mnt/disk1/xiaolei/ldb_16/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:61
        16# std::enable_if<is_invocable_r_v<void, 
doris::vectorized::ScannerScheduler::_schedule_scanners(doris::vectorized::ScannerContext*)::$_1::operator()()
 const::{lambda()#5}&>, void>::type std::__invoke_r<void, 
doris::vectorized::ScannerScheduler::_schedule_scanners(doris::vectorized::ScannerContext*)::$_1::operator()()
 
const::{lambda()#5}&>(doris::vectorized::ScannerScheduler::_schedule_scanners(doris::vectorized::ScannerContext*)::$_1::operator()()
 const::{lambda()#5}&) at 
/mnt/disk1/xiaolei/ldb_16/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:117
        17# std::_Function_handler<void (), 
doris::vectorized::ScannerScheduler::_schedule_scanners(doris::vectorized::ScannerContext*)::$_1::operator()()
 const::{lambda()#5}>::_M_invoke(std::_Any_data const&) at 
/mnt/disk1/xiaolei/ldb_16/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/std_function.h:291
        18# std::function<void ()>::operator()() const at 
/mnt/disk1/xiaolei/ldb_16/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/std_function.h:560
        19# doris::WorkThreadPool<true>::work_thread(int) at 
/mnt/disk1/xiaolei/incubator-doris/be/src/util/work_thread_pool.hpp:158
        20# void std::__invoke_impl<void, void (doris::WorkThreadPool<true>::* 
const&)(int), doris::WorkThreadPool<true>*&, int&>(std::__invoke_memfun_deref, 
void (doris::WorkThreadPool<true>::* const&)(int), 
doris::WorkThreadPool<true>*&, int&) at 
/mnt/disk1/xiaolei/ldb_16/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:74
        21# std::__invoke_result<void (doris::WorkThreadPool<true>::* 
const&)(int), doris::WorkThreadPool<true>*&, int&>::type std::__invoke<void 
(doris::WorkThreadPool<true>::* const&)(int), doris::WorkThreadPool<true>*&, 
int&>(void (doris::WorkThreadPool<true>::* const&)(int), 
doris::WorkThreadPool<true>*&, int&) at 
/mnt/disk1/xiaolei/ldb_16/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:96
        22# decltype (std::__invoke((*this)._M_pmf, 
std::forward<doris::WorkThreadPool<true>*&>({parm#1}), 
std::forward<int&>({parm#1}))) std::_Mem_fn_base<void 
(doris::WorkThreadPool<true>::*)(int), 
true>::operator()<doris::WorkThreadPool<true>*&, 
int&>(doris::WorkThreadPool<true>*&, int&) const at 
/mnt/disk1/xiaolei/ldb_16/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/functional:131
        23# void std::__invoke_impl<void, std::_Mem_fn<void 
(doris::WorkThreadPool<true>::*)(int)>&, doris::WorkThreadPool<true>*&, 
int&>(std::__invoke_other, std::_Mem_fn<void 
(doris::WorkThreadPool<true>::*)(int)>&, doris::WorkThreadPool<true>*&, int&) 
at 
/mnt/disk1/xiaolei/ldb_16/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:61
        24# std::enable_if<is_invocable_r_v<void, std::_Mem_fn<void 
(doris::WorkThreadPool<true>::*)(int)>&, doris::WorkThreadPool<true>*&, int&>, 
void>::type std::__invoke_r<void, std::_Mem_fn<void 
(doris::WorkThreadPool<true>::*)(int)>&, doris::WorkThreadPool<true>*&, 
int&>(std::_Mem_fn<void (doris::WorkThreadPool<true>::*)(int)>&, 
doris::WorkThreadPool<true>*&, int&) at 
/mnt/disk1/xiaolei/ldb_16/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:117
        25# void std::_Bind_result<void, std::_Mem_fn<void 
(doris::WorkThreadPool<true>::*)(int)> (doris::WorkThreadPool<true>*, 
int)>::__call<void, , 0ul, 1ul>(std::tuple<>&&, std::_Index_tuple<0ul, 1ul>) at 
/mnt/disk1/xiaolei/ldb_16/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/functional:570
        26# void std::_Bind_result<void, std::_Mem_fn<void 
(doris::WorkThreadPool<true>::*)(int)> (doris::WorkThreadPool<true>*, 
int)>::operator()<>() at 
/mnt/disk1/xiaolei/ldb_16/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/functional:629
        27# void std::__invoke_impl<void, std::_Bind_result<void, 
std::_Mem_fn<void (doris::WorkThreadPool<true>::*)(int)> 
(doris::WorkThreadPool<true>*, int)>>(std::__invoke_other, 
std::_Bind_result<void, std::_Mem_fn<void 
(doris::WorkThreadPool<true>::*)(int)> (doris::WorkThreadPool<true>*, int)>&&) 
at 
/mnt/disk1/xiaolei/ldb_16/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:61
        28# std::__invoke_result<std::_Bind_result<void, std::_Mem_fn<void 
(doris::WorkThreadPool<true>::*)(int)> (doris::WorkThreadPool<true>*, 
int)>>::type std::__invoke<std::_Bind_result<void, std::_Mem_fn<void 
(doris::WorkThreadPool<true>::*)(int)> (doris::WorkThreadPool<true>*, 
int)>>(std::_Bind_result<void, std::_Mem_fn<void 
(doris::WorkThreadPool<true>::*)(int)> (doris::WorkThreadPool<true>*, int)>&&) 
at 
/mnt/disk1/xiaolei/ldb_16/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:96
        29# void std::thread::_Invoker<std::tuple<std::_Bind_result<void, 
std::_Mem_fn<void (doris::WorkThreadPool<true>::*)(int)> 
(doris::WorkThreadPool<true>*, int)> > 
>::_M_invoke<0ul>(std::_Index_tuple<0ul>) at 
/mnt/disk1/xiaolei/ldb_16/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/std_thread.h:253
        30# std::thread::_Invoker<std::tuple<std::_Bind_result<void, 
std::_Mem_fn<void (doris::WorkThreadPool<true>::*)(int)> 
(doris::WorkThreadPool<true>*, int)> > >::operator()() at 
/mnt/disk1/xiaolei/ldb_16/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/std_thread.h:260
        31# 
std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::_Bind_result<void,
 std::_Mem_fn<void (doris::WorkThreadPool<true>::*)(int)> 
(doris::WorkThreadPool<true>*, int)> > > >::_M_run() at 
/mnt/disk1/xiaolei/ldb_16/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/std_thread.h:211
        32# execute_native_thread_routine at 
/data/gcc-11.1.0/build/x86_64-pc-linux-gnu/libstdc++-v3/include/bits/unique_ptr.h:85
        33# start_thread
        34# clone
    successfully
   ```
   
   ## Further comments
   
   If this is a relatively large or complex change, kick off the discussion at 
[d...@doris.apache.org](mailto:d...@doris.apache.org) by explaining why you 
chose the solution you did and what alternatives you considered, etc...
   
   


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

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