GNU bug report logs - #66117
30.0.50; `find-buffer-visiting' is slow when opening large number of buffers

Previous Next

Package: emacs;

Reported by: Ihor Radchenko <yantar92 <at> posteo.net>

Date: Wed, 20 Sep 2023 08:53:02 UTC

Severity: minor

Found in version 30.0.50

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: dmitry <at> gutov.dev, Ihor Radchenko <yantar92 <at> posteo.net>, mattias.engdegard <at> gmail.com, 66117 <at> debbugs.gnu.org
Subject: bug#66117: 30.0.50; `find-buffer-visiting' is slow when opening large number of buffers
Date: Sun, 17 Dec 2023 10:17:40 -0500
> I'm talking specifically about any changes from previous behavior
> visible from Lisp.  I think we should test all of the following:
>
>   default-value
>   default-boundp
>   setq-default
>   default-toplevel-value
>   set-default-toplevel-value
>
> and make sure they all behave exactly the same, both in and out of a
> let-binding.

There should be absolutely no change visible using any combination of
the above function (including with the addition of `let`).

If there is, it's a bug in our C code (I don't know of such bugs, but
given the complexity of the code and its past history of a long litany
of bugs, I definitely won't vouch for it).

Some DEFVAR_PER_BUFFER variables *do* behave differently from normal
DEFVAR_LISP, but these are the "always buffer-local" ones, like
`mode-name`, `buffer-file-name`, etc...

Most of the DEFVAR_PER_BUFFER variables behave just like any
normal variable.  They just use a different implementation strategy and
the C code works hard to hide that difference.


        Stefan





This bug report was last modified 1 year and 135 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.