xiaokang opened a new issue, #17387:
URL: https://github.com/apache/doris/issues/17387

   ### 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
   
   maser
   
   ### What's Wrong?
   
   ```
   
   start time: Thu 02 Mar 2023 07:10:20 PM CST
   WARNING: Logging before InitGoogleLogging() is written to STDERR
   I0302 19:10:20.475816 1482042 doris_main.cpp:324] enable_fuzzy_mode is true, 
set fuzzy configs
   =================================================================
   ==1482042==ERROR: AddressSanitizer: stack-buffer-overflow on address 
0x7fbb5a9cb848 at pc 0x557378f79b17 bp 0x7fbb5a9cb810 sp 0x7fbb5a9cafb8
   WRITE of size 24 at 0x7fbb5a9cb848 thread T741 (TaskWorkerPool.)
       #0 0x557378f79b16 in __interceptor_sigaltstack.part.0 
(/mnt/ssd01/pipline/OpenSourceDoris/clusterEnv/P0/Cluster7/be/lib/doris_be+0xa252b16)
       #1 0x557378fdf8bf in __asan::PlatformUnpoisonStacks() 
(/mnt/ssd01/pipline/OpenSourceDoris/clusterEnv/P0/Cluster7/be/lib/doris_be+0xa2b88bf)
       #2 0x557378fe5224 in __asan_handle_no_return 
(/mnt/ssd01/pipline/OpenSourceDoris/clusterEnv/P0/Cluster7/be/lib/doris_be+0xa2be224)
       #3 0x55737bb5894d in 
apache::thrift::protocol::TProtocol::decrementOutputRecursionDepth() 
/var/local/thirdparty/installed/include/thrift/protocol/TProtocol.h:576
       #4 0x55737bb5894d in 
apache::thrift::protocol::TOutputRecursionTracker::~TOutputRecursionTracker() 
/var/local/thirdparty/installed/include/thrift/protocol/TProtocol.h:648
       #5 0x55737bb5894d in 
doris::TTabletInfo::write(apache::thrift::protocol::TProtocol*) const 
/root/doris/gensrc/build/gen_cpp/MasterService_types.cpp:483
       #6 0x55737bb4ed88 in 
doris::TTablet::write(apache::thrift::protocol::TProtocol*) const 
/root/doris/gensrc/build/gen_cpp/MasterService_types.cpp:1215
       #7 0x55737bb553d6 in 
doris::TReportRequest::write(apache::thrift::protocol::TProtocol*) const 
/root/doris/gensrc/build/gen_cpp/MasterService_types.cpp:1930
       #8 0x55737b7a6c83 in 
doris::FrontendService_report_pargs::write(apache::thrift::protocol::TProtocol*)
 const /root/doris/gensrc/build/gen_cpp/FrontendService.cpp:1204
       #9 0x55737b7e0174 in 
doris::FrontendServiceClient::send_report(doris::TReportRequest const&) 
/root/doris/gensrc/build/gen_cpp/FrontendService.cpp:5566
       #10 0x55737b806e68 in 
doris::FrontendServiceClient::report(doris::TMasterResult&, 
doris::TReportRequest const&) 
/root/doris/gensrc/build/gen_cpp/FrontendService.cpp:5555
       #11 0x557379ce124f in 
doris::MasterServerClient::report(doris::TReportRequest const&, 
doris::TMasterResult*) /root/doris/be/src/agent/utils.cpp:109
       #12 0x557379c6bad4 in 
doris::TaskWorkerPool::_handle_report(doris::TReportRequest&, 
doris::TaskWorkerPool::ReportType) 
/root/doris/be/src/agent/task_worker_pool.cpp:1651
       #13 0x557379c72675 in 
doris::TaskWorkerPool::_report_tablet_worker_thread_callback() 
/root/doris/be/src/agent/task_worker_pool.cpp:1376
       #14 0x557379cc0e01 in void std::__invoke_impl<void, void 
(doris::TaskWorkerPool::*&)(), 
doris::TaskWorkerPool*&>(std::__invoke_memfun_deref, void 
(doris::TaskWorkerPool::*&)(), doris::TaskWorkerPool*&) 
/var/local/ldb-toolchain/include/c++/11/bits/invoke.h:74
       #15 0x557379cc0e01 in std::enable_if<is_invocable_r_v<void, void 
(doris::TaskWorkerPool::*&)(), doris::TaskWorkerPool*&>, void>::type 
std::__invoke_r<void, void (doris::TaskWorkerPool::*&)(), 
doris::TaskWorkerPool*&>(void (doris::TaskWorkerPool::*&)(), 
doris::TaskWorkerPool*&) 
/var/local/ldb-toolchain/include/c++/11/bits/invoke.h:111
       #16 0x557379cc0e01 in void std::_Bind_result<void, void 
(doris::TaskWorkerPool::*(doris::TaskWorkerPool*))()>::__call<void, , 
0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) 
/var/local/ldb-toolchain/include/c++/11/functional:570
       #17 0x557379cc0e01 in void std::_Bind_result<void, void 
(doris::TaskWorkerPool::*(doris::TaskWorkerPool*))()>::operator()<>() 
/var/local/ldb-toolchain/include/c++/11/functional:629
       #18 0x557379cc0e01 in void std::__invoke_impl<void, 
std::_Bind_result<void, void 
(doris::TaskWorkerPool::*(doris::TaskWorkerPool*))()>&>(std::__invoke_other, 
std::_Bind_result<void, void 
(doris::TaskWorkerPool::*(doris::TaskWorkerPool*))()>&) 
/var/local/ldb-toolchain/include/c++/11/bits/invoke.h:61
       #19 0x557379cc0e01 in std::enable_if<is_invocable_r_v<void, 
std::_Bind_result<void, void 
(doris::TaskWorkerPool::*(doris::TaskWorkerPool*))()>&>, void>::type 
std::__invoke_r<void, std::_Bind_result<void, void 
(doris::TaskWorkerPool::*(doris::TaskWorkerPool*))()>&>(std::_Bind_result<void, 
void (doris::TaskWorkerPool::*(doris::TaskWorkerPool*))()>&) 
/var/local/ldb-toolchain/include/c++/11/bits/invoke.h:111
       #20 0x557379cc0e01 in std::_Function_handler<void (), 
std::_Bind_result<void, void 
(doris::TaskWorkerPool::*(doris::TaskWorkerPool*))()> 
>::_M_invoke(std::_Any_data const&) 
/var/local/ldb-toolchain/include/c++/11/bits/std_function.h:291
       #21 0x55737b2cd3b6 in std::function<void ()>::operator()() const 
/var/local/ldb-toolchain/include/c++/11/bits/std_function.h:560
       #22 0x55737b2cd3b6 in doris::FunctionRunnable::run() 
/root/doris/be/src/util/threadpool.cpp:46
       #23 0x55737b2cb290 in doris::ThreadPool::dispatch_thread() 
/root/doris/be/src/util/threadpool.cpp:529
       #24 0x55737b2ccf6a in void std::__invoke_impl<void, void 
(doris::ThreadPool::*&)(), doris::ThreadPool*&>(std::__invoke_memfun_deref, 
void (doris::ThreadPool::*&)(), doris::ThreadPool*&) 
/var/local/ldb-toolchain/include/c++/11/bits/invoke.h:74
       #25 0x55737b2ccf6a in std::__invoke_result<void 
(doris::ThreadPool::*&)(), doris::ThreadPool*&>::type std::__invoke<void 
(doris::ThreadPool::*&)(), doris::ThreadPool*&>(void (doris::ThreadPool::*&)(), 
doris::ThreadPool*&) /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:96
       #26 0x55737b2ccf6a in void std::_Bind<void 
(doris::ThreadPool::*(doris::ThreadPool*))()>::__call<void, , 
0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) 
/var/local/ldb-toolchain/include/c++/11/functional:420
       #27 0x55737b2ccf6a in void std::_Bind<void 
(doris::ThreadPool::*(doris::ThreadPool*))()>::operator()<, void>() 
/var/local/ldb-toolchain/include/c++/11/functional:503
       #28 0x55737b2ccf6a in void std::__invoke_impl<void, std::_Bind<void 
(doris::ThreadPool::*(doris::ThreadPool*))()>&>(std::__invoke_other, 
std::_Bind<void (doris::ThreadPool::*(doris::ThreadPool*))()>&) 
/var/local/ldb-toolchain/include/c++/11/bits/invoke.h:61
       #29 0x55737b2ccf6a in 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*))()>&) 
/var/local/ldb-toolchain/include/c++/11/bits/invoke.h:111
       #30 0x55737b2ccf6a in std::_Function_handler<void (), std::_Bind<void 
(doris::ThreadPool::*(doris::ThreadPool*))()> >::_M_invoke(std::_Any_data 
const&) /var/local/ldb-toolchain/include/c++/11/bits/std_function.h:291
       #31 0x55737b29d556 in std::function<void ()>::operator()() const 
/var/local/ldb-toolchain/include/c++/11/bits/std_function.h:560
       #32 0x55737b29d556 in doris::Thread::supervise_thread(void*) 
/root/doris/be/src/util/thread.cpp:453
       #33 0x7fbd446e9608 in start_thread 
/build/glibc-SzIz7B/glibc-2.31/nptl/pthread_create.c:477
       #34 0x7fbd444bf132 in __clone (/lib/x86_64-linux-gnu/libc.so.6+0x11f132)
   
   Address 0x7fbb5a9cb848 is located in stack of thread T741 (TaskWorkerPool.) 
at offset 40 in frame
       #0 0x557379ce360f in 
apache::thrift::protocol::TVirtualProtocol<apache::thrift::protocol::TBinaryProtocolT<apache::thrift::transport::TTransport,
 apache::thrift::protocol::TNetworkBigEndian>, 
apache::thrift::protocol::TProtocolDefaults>::writeI64_virt(long) 
/var/local/thirdparty/installed/include/thrift/protocol/TVirtualProtocol.h:380
   
     This frame has 1 object(s):
       [32, 40) 'net' <== Memory access at offset 40 overflows this variable
   HINT: this may be a false positive if your program uses some custom stack 
unwind mechanism, swapcontext or vfork
         (longjmp and C++ exceptions *are* supported)
   Thread T741 (TaskWorkerPool.) created by T0 here:
       #0 0x557378f7e061 in pthread_create 
(/mnt/ssd01/pipline/OpenSourceDoris/clusterEnv/P0/Cluster7/be/lib/doris_be+0xa257061)
       #1 0x55737b299312 in 
doris::Thread::start_thread(std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, 
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > 
const&, std::function<void ()> const&, unsigned long, 
scoped_refptr<doris::Thread>*) /root/doris/be/src/util/thread.cpp:407
       #2 0x55737b2b7302 in doris::Status doris::Thread::create<void 
(doris::ThreadPool::*)(), doris::ThreadPool*>(std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, 
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > 
const&, void (doris::ThreadPool::* const&)(), doris::ThreadPool* const&, 
scoped_refptr<doris::Thread>*) /root/doris/be/src/util/thread.h:57
       #3 0x55737b2b7302 in doris::ThreadPool::create_thread() 
/root/doris/be/src/util/threadpool.cpp:598
       #4 0x55737b2c2591 in doris::ThreadPool::init() 
/root/doris/be/src/util/threadpool.cpp:257
       #5 0x557379c6a1af in doris::Status 
doris::ThreadPoolBuilder::build<doris::ThreadPool>(std::unique_ptr<doris::ThreadPool,
 std::default_delete<doris::ThreadPool> >*) const 
/root/doris/be/src/util/threadpool.h:114
       #6 0x557379c6a1af in doris::TaskWorkerPool::start() 
/root/doris/be/src/agent/task_worker_pool.cpp:223
       #7 0x55737ade441a in doris::AgentServer::AgentServer(doris::ExecEnv*, 
doris::TMasterInfo const&) /root/doris/be/src/agent/agent_server.cpp:96
       #8 0x55737adbd5bb in 
doris::BackendService::BackendService(doris::ExecEnv*) 
/root/doris/be/src/service/backend_service.cpp:68
       #9 0x55737adc866b in 
doris::BackendService::create_service(doris::ExecEnv*, int, 
doris::ThriftServer**) /root/doris/be/src/service/backend_service.cpp:71
       #10 0x55737902ba87 in main /root/doris/be/src/service/doris_main.cpp:464
       #11 0x7fbd443c4082 in __libc_start_main ../csu/libc-start.c:308
   
   SUMMARY: AddressSanitizer: stack-buffer-overflow 
(/mnt/ssd01/pipline/OpenSourceDoris/clusterEnv/P0/Cluster7/be/lib/doris_be+0xa252b16)
 in __interceptor_sigaltstack.part.0
   Shadow bytes around the buggy address:
     0x0ff7eb5316b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     0x0ff7eb5316c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     0x0ff7eb5316d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     0x0ff7eb5316e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     0x0ff7eb5316f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
   =>0x0ff7eb531700: 00 00 00 00 f1 f1 f1 f1 00[f3]f3 f3 00 00 00 00
     0x0ff7eb531710: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     0x0ff7eb531720: f1 f1 f1 f1 f1 f1 01 f2 00 f2 f2 f2 00 f2 f2 f2
     0x0ff7eb531730: 00 f2 f2 f2 00 f2 f2 f2 00 f3 f3 f3 00 00 00 00
     0x0ff7eb531740: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     0x0ff7eb531750: f1 f1 f1 f1 f1 f1 01 f2 00 f2 f2 f2 00 f2 f2 f2
   Shadow byte legend (one shadow byte represents 8 application bytes):
     Addressable:           00
     Partially addressable: 01 02 03 04 05 06 07
     Heap left redzone:       fa
     Freed heap region:       fd
     Stack left redzone:      f1
     Stack mid redzone:       f2
     Stack right redzone:     f3
     Stack after return:      f5
     Stack use after scope:   f8
     Global redzone:          f9
     Global init order:       f6
     Poisoned by user:        f7
     Container overflow:      fc
     Array cookie:            ac
     Intra object redzone:    bb
     ASan internal:           fe
     Left alloca redzone:     ca
     Right alloca redzone:    cb
     Shadow gap:              cc
   ==1482042==ABORTING
   ```
   
   ### What You Expected?
   
   be works normally
   
   ### How to Reproduce?
   
   p0 regression test
   
   ### 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