Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Running out of sockets leads the node process to hang #187

Open
pal-gstama opened this issue May 4, 2022 · 0 comments
Open

Running out of sockets leads the node process to hang #187

pal-gstama opened this issue May 4, 2022 · 0 comments

Comments

@pal-gstama
Copy link

pal-gstama commented May 4, 2022

We have come up with a problem regarding the media server running out of sockets (file descriptors) and hangs.

(ERR]-EventLoop::Start() | could not start pipe [errno:24]
[ERR]-RTPBundleTransport::Init() | too many failed attemps opening sockets

This was reproduced by reducing the number of available file descriptors for the node process and trying opening new connections to the media server which ended up hanging the process.
strace -p {pid} gives back futex (0x359c800, FUTEX _WAIT, 2147483648, NULL with multiple
bind(-1, Tsa family=AF_INET, sin port=htons (19823), sin_addr=inet_addr("0.0.0.0")}, 16) = -1 EBADF (Bad file descriptor) socket (AF_INET, SOCK_DGRAM, IPPROTO_IP) = -1 EMFILE (Too many open files) messages.

This was tested on both 0.100.2 and 0.117.2 with the same result.

The process seems to be stack waiting for a value back which never comes and as such hangs without entering zombie state.

The file descriptor limits are only affected by the process limits and are not inherited by the system or user limits (this was tested).

Thank you for taking a look at this!

@pal-gstama pal-gstama changed the title Running out of sockets leads the node process to hang. Running out of sockets leads the node process to hang May 4, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant