あるフリーランスエンジニアの色んなメモ!! ITスキル・ライフハックとか

java.io.IOException: Cannot run program "bash": error=24, Too many open files

事象

Javaで複数ファイルを開く処理を実行した際に以下のようなエラーが発生

...

Caused by: java.util.concurrent.ExecutionException: java.lang.RuntimeException: ERROR: Unrecoverable error when performing local command java.io.IOException: Cannot run program "bash": error=24, Too many open files
        at java.util.concurrent.FutureTask.report(FutureTask.java:122)
        at java.util.concurrent.FutureTask.get(FutureTask.java:192)
        at org.grep4j.core.executors.GrepTaskExecutor.execute(GrepTaskExecutor.java:48)
        ... 7 more

...

原因

ファイルディスクリプタの上限値が不足しているため


対策

ファイルディスクリプタの上限値を増やす

現在のファイルディスクリプタ上限値の確認

ulimit -n
1024

ファイルディスクリプタ上限値を設定

ulimit -n ファイルディスクリプタ上限値
comments powered by Disqus