Tencent / Tendis

Tendis is a high-performance distributed storage system fully compatible with the Redis protocol.
http://tendis.cn
Other
2.87k stars 317 forks source link

db下面分片太多,导致报错file open too many #232

Closed zf853109035 closed 1 year ago

zf853109035 commented 1 year ago

Description

写了一百多G后,db下面分片太多,编号我看已经到几十万了,导致报错file open too many

Expected Behavior

这个是触发了系统的ulimit -n的上限,我增大了这个值,但是好像需要重启tendis,我不知道怎么重启tendis 于是我执行tendisadmin recovery,好像是恢复了,主备机器换了,但是担心后面还会遇到这个问题 cluster nodes发现恢复期间有十几秒连不上,请问tendisadmin recovery是重启进程了吗?为什会出现很多小的sst分片(几十KB),要怎么避免?

raffertyyu commented 1 year ago

你好,请问方便说一下你的操作步骤,或者复现的方式吗。

zf853109035 commented 1 year ago

你好,请问方便说一下你的操作步骤,或者复现的方式吗。

部署tendis后,启用spark 集群往里面写数据,写的较慢,大概写了七八个小时(中途可能卡住了),写了一百多G,然后就报错file open too many

复现的方式,可能不太好复现,sst分片要达到系统ulimit -n的上限,可以把系统ulimit -n的值调小,然后塞数据,就可以复现了

zf853109035 commented 1 year ago

在redis-cli命令行里,有什么命令可以重启tendis的吗,还是说只能后台重启进程?

raffertyyu commented 1 year ago

tendis不支持重启操作,可以通过redis-cli发送shutdown指令关闭进程,然后使用启动时相同的命令行进行重启

方便发送一下日志信息吗。