3.1.7版本,存算分离fe leader cpu 使用率突增

为了更快的定位您的问题,请提供以下信息,谢谢
【详述】fe cpu 使用率突增至90%以上,fe.out中包含大量如下日志
【背景】无
【业务影响】
【是否存算分离】是
【StarRocks版本】例如:3.1.7
【集群规模】例如:3fe(1 follower+2observer)+3be(fe与be非混部)
【机器信息】CPU虚拟核/内存/网卡,例如:48C/64G/万兆
【联系方式】为了在解决问题过程中能及时联系到您获取一些日志信息,请补充下您的联系方式,例如:社区群16-zrk,谢谢
【附件】

升级到3.1.9 版本,cpu使用率还是会很高,后端存储用的是GCS对应fe 的节点cpu使用截图以及fe.out 日志如下:



堆栈信息为附件内容:feThread.txt (263.1 KB)

对应的线程16进制是:
starrocks@bi-yourbox-eu-starrocks-fe-2:~/StarRocks/fe$ printf “%x\n” 69254
10e86
starrocks@bi-yourbox-eu-starrocks-fe-2:~/StarRocks/fe$ printf “%x\n” 69316
10ec4
starrocks@bi-yourbox-eu-starrocks-fe-2:~/StarRocks/fe$ printf “%x\n” 69168
10e30
starrocks@bi-yourbox-eu-starrocks-fe-2:~/StarRocks/fe$ printf “%x\n” 69167
10e2f

根据cpu高的线程id,在对应的jstack里搜索,看来是在做gc。你能发下对应时间点的gc日志吗?

附件是对应的GC日志fe.gc.log.20240321-063222 (986.8 KB)
,现在堆内存加到了12G了还是会,之前是8G,

截图内容对应的是gc情况:

这个线程使用率也很高:

附件是另一个fe节点down 掉时候的的fe.out 日志文件:
fe.out (1.4 MB)

fe.log 中包含大量如下日志


还有一些貌似系统发出来的sql异常:

  1. down掉的fe的日志能发下吗?

  2. 另外,在cpu高的时候,执行一下
    ./fe/bin/profiler.sh -e alloc -d 300 -f alloc-profile.html pid
    pid是fe的进程id,然后把alloc-profile.html发出来一下,看下是什么地方在频繁的申请内存

好的,稍等,我现在暂时降级到3.1.7版本了,虽然还会,但是频率很低,3.1.9版本基本十分钟就会一次

这个是退回到3.1.7版本后,cpu使用率较高的时候的profile:
alloc-profile.html (1.6 MB) ,
不过退回到3.1.7版本后再多加内存到12G,基本不会到达90%cpu使用率的机器报警阈值了

大佬,有排查到具体原因么

fe.warn里很多

这种日志

附件为fe.warn.log日志文件:fe.warn.bak.zip (12.8 MB)

mat 分析dump出来的内存分析可能存在的问题如下截图: