unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: David Caldwell <david@porkrind.org>
To: 22814@debbugs.gnu.org
Subject: bug#22814: 25.0.91; Emacs runs out of file descriptors on OS X
Date: Fri, 26 Feb 2016 01:05:56 -0800	[thread overview]
Message-ID: <e0934802-5d13-551c-9412-617aa57a24e8@porkrind.org> (raw)
In-Reply-To: <87lh673m51.fsf@gmx.de>

[-- Attachment #1: Type: text/plain, Size: 1810 bytes --]

On 2/26/16 12:34 AM, Michael Albinus wrote:
> David Caldwell <david@porkrind.org> writes:
>> I have a large emacs desktop file (600+ buffers at the moment). Emacs
>> 24.5 would open all the buffers just fine, but 25.0.91 (and 90)
>> apparently don't close the file after reading the buffer (or maybe it's
>> part of the new kqueue stuff?). By default OS X limits the number of
>> file descriptors per process to 256. So trying to open my large desktop
>> file gets it into a stuck state where it cannot open any more files
>> after it loads the first 240ish buffers.
>
> You are using "global-auto-revert-mode: t". kqueue does not support a
> directory monitor, therefore it starts a new file notification monitor
> for every single file, indeed.

Ah, I see. Maybe the FSEvents API[1] would be better in this case?

> I believe it is questionable to run auto-revert-mode for so many
> files,

> but that's your choice.=20

It's just stat()s, right? Those are really fast, especially on my ssd.
At any rate, I've never noticed any slowdown. I guess I always assumed
it would check only for buffers I was displaying, rather than ones in
the background (because why would I care if a buffer I couldn't see had
stale data in it?).

> In order to suppress kqueue running for auto-revert-mode, you shall 
> set auto-revert-use-notify to nil.

Thanks! That indeed does the trick. I'm back to 24.5 numbers of fds open.

> Maybe there are means in OS X to increase the number of file
> descriptors for Emacs, don't know. I don't use OS X.

`ulimit -u 10000` was my temporary work-around, but I had to remember to
do it every time I booted or emacs would hose itself (I don't think I
ever successfully remembered).

> I will add a note to the Emacs manual.

Thanks.

-David


[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 3819 bytes --]

  reply	other threads:[~2016-02-26  9:05 UTC|newest]

Thread overview: 53+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-02-26  6:18 bug#22814: 25.0.91; Emacs runs out of file descriptors on OS X David Caldwell
2016-02-26  8:34 ` Michael Albinus
2016-02-26  9:05   ` David Caldwell [this message]
2016-02-26 10:26     ` Nicolas Richard
2016-02-26  9:22   ` Eli Zaretskii
2016-02-26 20:05     ` Michael Albinus
2016-02-26  9:04 ` Eli Zaretskii
2016-02-26 20:51 ` Anders Lindgren
2016-02-27  8:00   ` Michael Albinus
2016-02-27  9:19     ` Eli Zaretskii
2016-02-27 13:26       ` Michael Albinus
2016-02-27 19:00         ` Anders Lindgren
2016-02-27 19:12           ` Michael Albinus
2016-02-27 19:17             ` Eli Zaretskii
2016-02-27 19:33               ` Michael Albinus
2016-02-27 19:39                 ` Eli Zaretskii
2016-02-27 19:51                   ` Michael Albinus
2016-02-27 19:58                     ` Eli Zaretskii
2016-02-27 20:06                       ` Michael Albinus
2016-02-27 20:25                         ` Eli Zaretskii
2016-02-28  9:57                           ` Michael Albinus
2016-02-28 15:51                             ` Eli Zaretskii
2016-02-27 19:14           ` Eli Zaretskii
2016-02-27 19:26             ` Michael Albinus
2016-02-27 19:36               ` Eli Zaretskii
2016-02-27 19:39                 ` Michael Albinus
2016-02-27 19:56                 ` Michael Albinus
2016-02-27 20:06                   ` Eli Zaretskii
2016-02-29 10:24                     ` Michael Albinus
2016-02-29 16:02                       ` Eli Zaretskii
2016-03-02 15:03                         ` Michael Albinus
2016-03-02 16:01                           ` Eli Zaretskii
2016-03-04  7:53                             ` Michael Albinus
2016-03-04  8:14                               ` John Wiegley
2016-03-04  8:29                               ` Eli Zaretskii
2016-03-04 14:05                                 ` Michael Albinus
2016-03-04 14:11                             ` Michael Albinus
2016-04-10  8:21                               ` Michael Albinus
2016-04-10 20:37                                 ` Anders Lindgren
2016-04-11  6:40                                   ` Michael Albinus
2016-04-11  6:48                                     ` Anders Lindgren
2016-04-11  6:58                                       ` Michael Albinus
2016-04-11 18:59                                         ` Anders Lindgren
2016-04-12  7:44                                           ` Michael Albinus
2016-02-27  9:55     ` Anders Lindgren
2016-02-27 10:46       ` Eli Zaretskii
2016-02-27 11:38         ` Anders Lindgren
2016-02-27 12:17           ` Michael Albinus
2016-02-27 12:40             ` Eli Zaretskii
2016-02-27 12:49               ` Michael Albinus
2016-02-27 12:52                 ` Eli Zaretskii
2016-02-27 13:00                   ` Michael Albinus
2016-03-05  0:32 ` Paul Eggert

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=e0934802-5d13-551c-9412-617aa57a24e8@porkrind.org \
    --to=david@porkrind.org \
    --cc=22814@debbugs.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).