Subject: Re: bug#22814: 25.0.91; Emacs runs out of file descriptors on OS X

From: Michael Albinus <[email-masked]>
Date: Sat, 27 Feb 2016 20:26:07 +0100

Eli Zaretskii <[email-masked]> writes:

> Even if it can't, it shouldn't hang.  It could signal an error for any
> operation that needs a file descriptor, but it shouldn't hang.  Then
> the user could kill one of the buffers under auto-revert, or manually
> switch to not using notifications, and be able to continue the
> session.

But this doesn't seem to hang in kqueue. My test has shown, that it
returned with a proper

Test file-notify-test09-sufficient-ressources condition:
    (file-error "File cannot be opened" "Too many open files in system" "/tmp/file-notify-test-parent112045XZ/file-notify-test11204ZxG")

The hang must be somewhere else in Emacs, where the request for a new
file descriptor is assumed to work w/o check.

> Btw, my recommendation is to turn off auto-revert-use-notify in any
> session that uses global-auto-revert-mode.  File notifications simply
> don't scale up well enough for that, given that Emacs sessions tend to
> run for many weeks and have many hundreds of file-visiting buffers.

We have already auto-revert-use-notify.

> Also, if you somehow end up visiting a file in /tmp, your Emacs will
> get notifications about every temp file operation on the OS, which
> will probably slow it down quite a lot.

Not necessarily for every backend.

Best regards, Michael.