Describe the bug (描述bug)
使用thrift server时coredump
To Reproduce (复现方法)
非必现,cpu压力大时容易出现
Expected behavior (期望行为)
Versions (各种版本)
OS: CentOS release 7.2
Compiler: gcc-4.8.2-1.el6.x86_64
brpc: 2018年7月下旬的brpc版本
protobuf: 3.5
Additional context/screenshots (更多上下文/截图)
(gdb) bt
#0 0x00007f43a18b25f7 in raise () from /lib64/libc.so.6
#1 0x00007f43a18b3ce8 in abort () from /lib64/libc.so.6
#2 0x00007f43a18f2317 in __libc_message () from /lib64/libc.so.6
#3 0x00007f43a18f9fe1 in _int_free () from /lib64/libc.so.6
#4 0x00000000007c1bd7 in _M_dispose (__a=..., this=) at /usr/include/c++/4.8.2/bits/basic_string.h:249
#5 ~basic_string (this=0x7f41f4a28698, __in_chrg=) at /usr/include/c++/4.8.2/bits/basic_string.h:539
#6 brpc::Controller::~Controller (this=0x7f41f4a28488, __in_chrg=) at src/brpc/controller.cpp:128
#7 0x000000000089472b in brpc::policy::ThriftClosure::~ThriftClosure (this=0x7f41f4a28400, __in_chrg=) at src/brpc/policy/thrift_protocol.cpp:208
#8 0x0000000000894761 in brpc::policy::ThriftClosure::~ThriftClosure (this=0x7f41f4a28400, __in_chrg=) at src/brpc/policy/thrift_protocol.cpp:210
#9 0x00000000008948dd in operator() (this=, __ptr=0x7f41f4a28400) at /usr/include/c++/4.8.2/bits/unique_ptr.h:67
#10 brpc::policy::ThriftClosure::DoRun (this=0x7f41f4a28400) at /usr/include/c++/4.8.2/bits/unique_ptr.h:184
#11 0x00000000008958cc in brpc::policy::ProcessThriftRequest (msg_base=0x7f4248062720) at src/brpc/policy/thrift_protocol.cpp:548
#12 0x00000000009897ea in brpc::ProcessInputMessage (void_arg=void_arg@entry=0x7f4248062720) at src/brpc/input_messenger.cpp:133
#13 0x000000000098a824 in operator() (this=, last_msg=0x7f4248062720) at src/brpc/input_messenger.cpp:139
#14 brpc::InputMessenger::OnNewMessages (m=0x7f42280642c0) at /usr/include/c++/4.8.2/bits/unique_ptr.h:184
#15 0x00000000009742fd in brpc::Socket::ProcessEvent (arg=0x7f42280642c0) at src/brpc/socket.cpp:1070
#16 0x00000000008e968a in bthread::TaskGroup::task_runner (skip_remained=) at src/bthread/task_group.cpp:293
#17 0x00000000008ec991 in bthread_make_fcontext ()
我记得较早版本中有些异常处理有问题,master head应该后面有修复过, 但是看上面的core不太像异常