FishEyeã§Too many open fileãåºã
èæ¯
Atlassianã®ã½ã¼ã¹ã³ã¼ã管çã½ããã¦ã§ã¢FishEyeã使ã£ã¦ã¿ããToo many open fileã¨ã©ã¼ãåºãã®ã§ã¡ã¢
ç°å¢
- ãã·ã³
- OS:CentOS 5.4 64bit
ç¾è±¡
ã¯ã©ã¤ã¢ã³ãå´ããgit cloneãããã¨ããã400ãè¿ã£ã¦ãã¦ã¢ã¬?!ã¨ãªã£ãã
ãµã¼ãå´ã®ãã°ãè¦ã¦ã¿ãããããªã¨ã©ã¼ãåºã¦ã
Caused by: java.io.IOException: Cannot run program "git" (in directory "/opt/atlassian/fisheye/var/cache/APE-Sapporo/clone"): java .io.IOException: error=24, Too many open files
ãµãå´ã§è»½ã調ã¹ã¦ã¿ãããããªæã
åèµ·åå¾ã«èª¿ã¹ã¦ã¿ãã®ã§ã¾ã ã»ã¼ãã ãã©ããã£ãããããããªã®ããª
$ sudo /usr/sbin/lsof -p [FishEyeã®pid] | wc -l 982
ããã©ã«ãã§éãããã¡ã¤ã«ãã£ã¹ã¯ãªãã¿ã®ä¸éã¯1024ã ã£ããã¤ãã§ã«ããã»ã¹ã®å¤ãè¦ã¦ããããªã£ã¦ã
- ããã»ã¹ã«ããã£ã¦ããã¡ã¤ã«ãã£ã¹ã¯ãªãã¿ã®ä¸é
$ cat /proc/[pid]/limits | grep "open files" Max open files 1024 1024 files
対å¿
å®ç´ã ãã©ããµã¼ãå´ã®ä¸éãä¸ãã¦ãããã¨ã«ãã¾ã
/etc/security/limits.confãç·¨éãã¦ããã®ãæ©ããã ãã©ãããã ã¨å
¨ããã»ã¹ã«å½±é¿ããããã¡ãã£ã¨ãã ãªã¼ã»ã»ã»
ã¨ãããã¨ã§ãFishEyeã®èµ·åã¹ã¯ãªããã«ulimitã追å ãã¾ããã
- diffã¯ãããªæã
$ diff /opt/atlassian/fisheye/bin/fisheyectl.sh{,.org} 55c55 < nohup sh -c "ulimit -n 2048 && exec $FISHEYE_CMD $@ $FISHEYE_ARGS >> $FISHEYE_INST/var/log/fisheye.out 2>&1" & --- > nohup sh -c "exec $FISHEYE_CMD $@ $FISHEYE_ARGS >> $FISHEYE_INST/var/log/fisheye.out 2>&1" &
- åèµ·åãã¦å¶éã確èªããã¨å¢ãã¦ã
$ cat /proc/[pid]/limits | grep "open files" Max open files 2048 2048 files
ã¡ãªã¿ã«ããã®ããæ¹ã ã¨FishEyeã®èµ·åã¦ã¼ã¶ãrootã«ãã¦ããå¿ è¦ãããã¾ãã
$ sudo sh /opt/atlassian/fisheye/bin/fisheyectl.sh start