Linux 打开的文件太多-KairosDB
运行此查询时: {“绝对开始”:1359695700000,“绝对结束”:142285320000, “度量”:[{“标记”:“{”Building_id:“[“100”]}”,name:“{”meterreadings”,“group_by:“[{”name:“time”,“group_count:“12”,“range_size:“{”value:“1”,“unit:“MONTHS”}],“aggregators:“[{”name:“sum”,“align_sampling:”true,“sampling:“{”value:“1”,“unit:“MONTHS”}]}]} 我得到以下回应: 500{“错误”:[“打开的文件太多”]} 这里写的是增加file-max的大小 我的文件最大输出为:Linux 打开的文件太多-KairosDB,linux,ubuntu,cassandra,opentsdb,kairosdb,Linux,Ubuntu,Cassandra,Opentsdb,Kairosdb,运行此查询时: {“绝对开始”:1359695700000,“绝对结束”:142285320000, “度量”:[{“标记”:“{”Building_id:“[“100”]}”,name:“{”meterreadings”,“group_by:“[{”name:“time”,“group_count:“12”,“range_size:“{”value:“1”,“unit:“MONTHS”}],“aggregators:“[{”name:“sum”,“align_sampling:”true,“s
cat /proc/sys/fs/file-max
382994
它已经很大了,我需要增加它的限制吗您使用的是什么版本?您在查询中是否使用了大量grou by? 您可能需要重新启动kairosDB作为解决方法 是否可以检查是否已删除(ghost)文件句柄(在下面的命令行中替换为kairosDB进程ID)
ls-l/proc//fd | grep kairos_cache | grep-v'(删除)| wc-l
0.9.5中有一个未关闭文件句柄的修复程序。
下一个版本(1.0.1)有一个修复程序挂起
请参阅和。$ls-l/proc/10186/fd | grep kairos_cache | grep-v'(delete)| wc-l ls:无法访问/proc/10186/fd:没有这样的文件或目录0是的,我正在使用大量group by子句来获取KairosDB版本?您可能知道下载和部署了什么包(或者您可以使用版本API端点http://[host]:[port]/api/v1/version)。否则,如果您自己构建,源代码的版本是什么?我不确定版本API端点是否工作如果项目是用maven构建的,我会检查。我得到了以下版本的输出:{“version”:“KairosDB 0.9.4-6.20140730155336”}
ls -l /proc/<PID>/fd | grep kairos_cache | grep -v '(delete)' | wc -l