我已经使用 QuestDB 一段时间了(Ubuntu、XFS 文件系统),没有任何问题。几天前我更新到8.0.2(还测试了最新版本8.1.0),我收到两个警告:一个关于最大虚拟内存,一个关于最大打开文件。
警告给出了解决此问题的说明。对于虚拟内存,我更改了
vm.max_map_count=1048576
,警告消失了。但我也改变了fs.file-max=1048576
,警告仍然存在。上面写着Warning: fs.file-max limit is too low [current=1000000, recommended=1048576]
如果我运行
ulimit -Hn
或sysctl fs.file-max
,我会看到设置现在是1048576
,但警告仍然存在。我重新启动了 QuestDB 服务,但无法摆脱它。
数据库本身似乎表现良好,与 7.4.2 相比,我实际上可以看到性能有所提高,但警告很烦人。
任何提示,我们将不胜感激。
问题出在 systemd 中。我必须修改
~/.config/systemd/user/questdb.service
处的文件并添加属性 LimitNOFILE=1048576
。服务重新启动后,我的警告消失了。
附注在 slack 上与 QuestDB 核心团队交谈后,他们告诉我这个警告一直存在,但只是在启动时的日志中。显然,我很幸运没有遇到问题,因为我的表上没有太多分区,否则我可能会达到限制并看到服务崩溃或行为不当。他们只是在文档中添加了一个部分来解释这一点以及如何在 Mac 上进行设置。