南大通用GBase 8a数据库,在磁盘io、cpu使用正常时,集群性能下降,有一种可能是cpu线程不足导致,具体可以收集如下信息进行分析:

1、执行show engine express status命令查看引擎状态时,发现有的计算节点Total tasks in groups值高,集群任务执行慢。

2、nmon查看该节点的磁盘IO是否正常。如果使用达100%,执行pidstat -d 2命令看出是什么进程占用磁盘IO。

3、如果IO正常,执行以下步骤进行排查:

应该是可执行线程不够。出问题的时候需要这些信息:

1)trace (load没完成节点和慢的节点)

2)show engine express status\G|grep Temp (所有gn)

3)show engine express status\G|grep RepTask (所有gn)

4)select * from performance_schema.heap_usage_info;(慢的节点)

5)pstack堆栈 (慢的节点)

6)nmon监控信息 (慢的节点)

7)show (full) processlist (慢的节点)

解决方式:

建议将_gbase_sis_ctq_threads、gbase_parallel_max_thread_in_pool参数调整为512