【详述】所有BE节点突然崩溃
【背景】无
【业务影响】
【StarRocks版本】3.1.2
【集群规模】1fe +2be(fe与be独享各主机)
【机器信息】fe:6C+16G be:16C+40G
【联系方式】
【附件】
BE log:
be-1-log.txt (7.7 KB)
be.out:
be-0.out (103.3 KB)
be-1.out (72.5 KB)
pod info:
describe-info.txt (4.5 KB)
【详述】所有BE节点突然崩溃
【背景】无
【业务影响】
【StarRocks版本】3.1.2
【集群规模】1fe +2be(fe与be独享各主机)
【机器信息】fe:6C+16G be:16C+40G
【联系方式】
【附件】
BE log:
pod info:
describe-info.txt (4.5 KB)
be.out contains the actual crash core stack
tracker:consistency consumption: 0
*** Aborted at 1695717535 (unix time) try "date -d @1695717535" if you are using GNU date ***
PC: @ 0x5893f56 _ZZN9starrocksL17prepare_ops_datasERKNS_6SchemaERKSt6vectorIjSaIjEERKNS_5ChunkEPS3_IPFvPKviPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEESaISL_EEPS3_ISC_SaISC_EEENUlSC_iSJ_E6_4_FUNESC_iSJ_
*** SIGSEGV (@0x8) received by PID 31 (TID 0x7f718b920640) from PID 8; stack trace: ***
@ 0x7681e6a google::(anonymous namespace)::FailureSignalHandler()
@ 0x7f728e361520 (unknown)
@ 0x5893f56 _ZZN9starrocksL17prepare_ops_datasERKNS_6SchemaERKSt6vectorIjSaIjEERKNS_5ChunkEPS3_IPFvPKviPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEESaISL_EEPS3_ISC_SaISC_EEENUlSC_iSJ_E6_4_FUNESC_iSJ_
@ 0x5897a50 starrocks::PrimaryKeyEncoder::encode_sort_key()
@ 0x5de3f68 starrocks::MergeEntry<>::next()
@ 0x5de7484 starrocks::RowsetMergerImpl<>::_do_merge_horizontally()
@ 0x5de8e6c starrocks::RowsetMergerImpl<>::_do_merge_vertically()
@ 0x5deade8 starrocks::RowsetMergerImpl<>::do_merge()
@ 0x5ddd4bf starrocks::compaction_merge_rowsets()
@ 0x59a131e starrocks::TabletUpdates::_do_compaction()
@ 0x59a292b starrocks::TabletUpdates::compaction()
@ 0x58a0411 starrocks::StorageEngine::_perform_update_compaction()
@ 0x58b9eee starrocks::StorageEngine::_update_compaction_thread_callback()
@ 0x9b823f4 execute_native_thread_routine
@ 0x7f728e3b3b43 (unknown)
@ 0x7f728e445a00 (unknown)
@ 0x0 (unknown)
感谢官方支持同事帮忙跟进问题,感谢RD老师帮忙排查解决问题。
原因是我们自己的建表语句有问题导致的,order by 里有两个chain code。导致BE启动时启动压缩线程崩溃。
老师帮忙排查的过程:
查看建表语句:
show create table statistics_enterprises;
研发排查所有的的建表语句,找出类似有多个字段的表。
drop table 表名 force;
通过加force来删除表。
修改BE配置,将update_compaction_num_threads_per_disk值设置为0,
重启BE后可以正常启动BE,
启动成功后再将update_compaction_num_threads_per_disk值还原,
再重启BE,至此整个集群恢复正常。