一台tikv节点间断性进行重启

  1. 麻烦在 /var/log/messages 中 grep -i ‘out of memory’ 看下是否有 OOM 导致重启的情况
  2. 可以的话,麻烦上传一下 tikv.log 日志文件我们看下

这个是tikv的日志
tikv.log (304.1 KB)

  1. 请问 pd 日志中有类似 alloc timestamp failed, lease expired 的日志么
  2. 麻烦在 /var/log/messages 中 grep -i ‘out of memory’ 看下是否有 OOM 导致重启的情况


在PD中没有找到类似 alloc timestamp failed, lease expired 的日志

是数据同步到tiflash引起的吗?


根据日志应该是tikv和tiflash在一台机器上,在进行从tikv同步到tiflash造成的OOM,这个有限制同步的数据条数或者同步数据大小参数的配置不?能否通过调整数据同步相关参数来降低内存?

可以调整一下 tikv 的 block cache 参数值,限制一下 tikv 进程使用的内存
目前机器的配置是怎么样?可以考虑 tiflash 单独部署吗?

机器内存是56G, tikv 的 block cache 参数值设置多少好? 目前机器资源紧张,暂时无法单独部署tiflash

目前 TiKV 的内存占用包括 block cache, region 元信息,聚合下推等使用的一些内存,目前的话可以控制的是 block cache 这块,默认会被设置为机器内存的 45% ,可以考虑设置为机器内存/2*0.45 。另外的 region 元信息这个内存占用与 region 数量有关系,聚合下推会与请求量有关系,这几块的内存不好限制。

关于 TiFlash 的内存控制可以调一下以下参数,可以先限制小一些

[profiles.default]
    dt_enable_logical_split = true # 存储引擎的 segment 分裂是否使用逻辑分裂。使用逻辑分裂可以减小写放大,提高写入速度,但是会造成一定的空间浪费。默认为 true
    max_memory_usage = 10000000000 # 单次 coprocessor 查询过程中,对中间数据的内存限制,单位为 byte,默认为 10000000000。如果设置为 0 表示不限制
    max_memory_usage_for_all_queries = 0 # 所有查询过程中,对中间数据的内存限制,单位为 byte,默认为 0,表示不限制

好的,我调整下再观察一段时间看看

多谢,有问题再继续反馈

此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。