irods / irods

Open Source Data Management Software
https://irods.org
BSD 3-Clause "New" or "Revised" License
444 stars 141 forks source link

Grandpa dies from file descriptor exhaustion #5144

Open bh9 opened 4 years ago

bh9 commented 4 years ago

Bug Report

iRODS Version, OS and Version

4.2.7 Ubuntu 18.04 running 16.04 binaries

What did you try to do?

High parallel load from igets on 2 consumers exhaused the file descriptors available to the original (grandpa) irodsServer process Once the file descriptors are exhausted, the server process can not function until it is restarted, and any connection attempts will receive a USER_SOCK_CONNECT_TIMEDOUT.

Workaround

We plan to work around this issue by bumping the number of available file descriptors from the default 1024 to a more sensible 131072 In systemd, this is done by adding the following to the irods service file

LimitNOFILE=131072

If a systemd service file is not in use, it should be sufficient to edit /etc/security/limits.conf to include

*     hard     nofile     131072
*     soft     nofile     131072
trel commented 4 years ago

Need to determine whether

Perhaps we should do the last one, regardless.