【详述】查询一个多表关联的sql,造成be宕机
【StarRocks版本】1.19.2
【集群规模】1fe + 3be
【机器信息】be 8c/32g
单独执行此sql时,没有问题
并发3个执行此sql时,be进程的内存就会超过10G,然后宕机
只有be.out有日志
日志如下
terminate called after throwing an instance of ‘std::bad_alloc’
what(): std::bad_alloc
*** Aborted at 1639550178 (unix time) try “date -d @1639550178” if you are using GNU date ***
PC: @ 0x7f482bb01207 __GI_raise
*** SIGABRT (@0x6e5fb) received by PID 452091 (TID 0x7f47f1f8e700) from PID 452091; stack trace: ***
@ 0x32b8712 google::(anonymous namespace)::FailureSignalHandler()
@ 0x7f482c7cb5d0 (unknown)
@ 0x7f482bb01207 __GI_raise
@ 0x7f482bb028f8 __GI_abort
@ 0x14b2b4f _ZN9__gnu_cxx27__verbose_terminate_handlerEv.cold
@ 0x4b1eaf6 __cxxabiv1::__terminate()
@ 0x4b1eb61 std::terminate()
@ 0x4b1ecb5 __cxa_throw
@ 0x14b1a2e _ZN12_GLOBAL__N_110handle_oomEPFPvS0_ES0_bb.cold
@ 0x4bce07e tcmalloc::allocate_full_cpp_throw_oom()
@ 0x15f13cb starrocks::vectorized::FixedLengthColumnBase<>::append()
@ 0x202147e starrocks::vectorized::JoinHashTable::append_chunk()
@ 0x201d431 starrocks::vectorized::HashJoinNode::open()
@ 0x213ea3e starrocks::vectorized::ProjectNode::open()
@ 0x201d845 starrocks::vectorized::HashJoinNode::open()
@ 0x213ea3e starrocks::vectorized::ProjectNode::open()
@ 0x201d845 starrocks::vectorized::HashJoinNode::open()
@ 0x213ea3e starrocks::vectorized::ProjectNode::open()
@ 0x201d845 starrocks::vectorized::HashJoinNode::open()
@ 0x213ea3e starrocks::vectorized::ProjectNode::open()
@ 0x201d845 starrocks::vectorized::HashJoinNode::open()
@ 0x213ea3e starrocks::vectorized::ProjectNode::open()
@ 0x201d845 starrocks::vectorized::HashJoinNode::open()
@ 0x213ea3e starrocks::vectorized::ProjectNode::open()
@ 0x201d845 starrocks::vectorized::HashJoinNode::open()
@ 0x213ea3e starrocks::vectorized::ProjectNode::open()
@ 0x201d845 starrocks::vectorized::HashJoinNode::open()
@ 0x213ea3e starrocks::vectorized::ProjectNode::open()
@ 0x201d845 starrocks::vectorized::HashJoinNode::open()
@ 0x213ea3e starrocks::vectorized::ProjectNode::open()
@ 0x201d845 starrocks::vectorized::HashJoinNode::open()
@ 0x213ea3e starrocks::vectorized::ProjectNode::open()
cat /proc/sys/vm/overcommit_memory确认下be节点这个配置是1嘛,不是的话配置下echo 1 > /proc/sys/vm/overcommit_memory
感谢大神,这个确实是我自己的问题,同样的集群先进行了GP的测试,然后修改了这个参数,没有改回来