【 使用环境 】生产环境 or 测试环境
【 OB or 其他组件 】
【 使用版本 】
【问题描述】清晰明确描述问题
【复现路径】问题出现前后相关操作
【问题现象及影响】
你好,请教个问题,我现在用的是OB社区版4.0,会频繁出现observer CRASH的问题,observer.log日志如下:
[2023-03-15 15:33:26.350655] ERROR easy_connection_update_ack_bytes_and_time (easy_connection.c:2154) [294736][RpcIO][T0][Y0-0000000000000000-0-0] [lt=13] Failed to do TIOCOUTQ ioctl on connection(0.0.0.0_10.101.0.121:2882_289_0x7f207326ba40 tp=1 t=0-1678865606115936 s=0 r=0 io=106420434/233602074 sq=233601384), errno(9), strerror(Bad file descriptor). BACKTRACE:0xb61bbbb 0xb60d4f6 0x3be889a 0x3be8577 0xb8891a4 0xcf84a9a 0x3a1def8 0xcf7bdd5 0x3a3be68 0xcf8638c 0x7f214d4fbea5 0x7f214d224b0d
CRASH ERROR!!! IP=39ce0b6, RBP=7f1fdc8cef10, sig=11, sig_code=1, sig_addr=4000000a7, RLIMIT_CORE=unlimited, timestamp=1678865606400179, tid=296130, tname=T1002_TNT_L0_G0, trace_id=12378270138489-1678755907378494-0-0, extra_info=((null)), lbt=0xb742d68 0xb51296a 0x7f214d50362f 0x39ce0b6 0x3a1373f 0x39b478e 0x6f9d84a 0x6f9cc4a 0x75c4613 0x75c6952 0x73e0ebc 0x6f3be04 0x73e0ebc 0x7499d9c 0x73e0ebc 0x73e3e3e 0x73e052f 0x3922301 0x70fc16c 0x3922118 0x39215df 0x394797a 0x3945b40 0x57d62fa
我用addr2line工具解析堆栈信息如下:
addr2line -pCfe /data/oceanbase/bin/observer 0xb742d68 0xb51296a 0x7f214d50362f 0x39ce0b6 0x3a1373f 0x39b478e 0x6f9d84a 0x6f9cc4a 0x75c4613 0x75c6952 0x73e0ebc 0x6f3be04 0x73e0ebc 0x7499d9c 0x73e0ebc 0x73e3e3e 0x73e052f 0x3922301 0x70fc16c 0x3922118 0x39215df 0x394797a 0x3945b40 0x57d62fa
safe_backtrace at ??:?
oceanbase::common::coredump_cb(int, siginfo_t*, void*) at ??:?
?? ??:0
oceanbase::lib::ObjectSet::take_off_free_object(oceanbase::lib::AObject*) at ??:?
oceanbase::lib::ObjectSet::get_free_object(unsigned int) at ??:?
oceanbase::common::ObAllocator::alloc(long, oceanbase::lib::ObMemAttr const&) at ??:?
oceanbase::sql::ObChunkDatumStore::init_batch_ctx(long, long) at ??:?
oceanbase::sql::ObChunkDatumStore::add_batch(oceanbase::common::ObIArrayoceanbase::sql::ObExpr* const&, oceanbase::sql::ObEvalCtx&, oceanbase::sql::ObBitVector const&, long, long&, oceanbase::sql::ObChunkDatumStore::StoredRow**, long) at ??:?
oceanbase::sql::ObNestedLoopJoinOp::process_left_batch() at ??:?
oceanbase::sql::ObNestedLoopJoinOp::inner_get_next_batch(long) at ??:?
oceanbase::sql::ObOperator::get_next_batch(long, oceanbase::sql::ObBatchRows const*&) at ??:?
oceanbase::sql::ObMergeDistinctOp::inner_get_next_batch(long) at ??:?
oceanbase::sql::ObOperator::get_next_batch(long, oceanbase::sql::ObBatchRows const*&) at ??:?
oceanbase::sql::ObSubPlanScanOp::inner_get_next_batch(long) at ??:?
oceanbase::sql::ObOperator::get_next_batch(long, oceanbase::sql::ObBatchRows const*&) at ??:?
oceanbase::sql::ObBatchRowIter::get_next_row(oceanbase::sql::ObEvalCtx&, oceanbase::sql::ObOpSpec const&) at ??:?
oceanbase::sql::ObOperator::get_next_row_vectorizely() at ??:?
oceanbase::sql::ObOperator::get_next_row() at ??:?
oceanbase::sql::ObTableModifyOp::inner_get_next_row() at ??:?
oceanbase::sql::ObOperator::get_next_row() at ??:?
oceanbase::sql::ObExecuteResult::get_next_row(oceanbase::sql::ObExecContext&, oceanbase::common::ObNewRow const*&) at ??:?
oceanbase::sql::ObResultSet::open_result() at ??:?
oceanbase::sql::ObResultSet::open() at ??:?
oceanbase::observer::ObAsyncPlanDriver::response_result(oceanbase::observer::ObMySQLResultSet&) at ??:?
【附件】