Subject: bug#66117: 30.0.50; `find-buffer-visiting' is slow when opening large number of buffers

From: Ihor Radchenko <[email-masked]>
Date: Wed, 13 Dec 2023 13:06:06 +0000

Eli Zaretskii <[email-masked]> writes:

> Btw, the title of this bug is about find-buffer-visiting, and AFAIR I
> proposed to have a primitive written in C that replaces
> find-buffer-visiting without a need to actually switch to each buffer
> (which is what triggers the costly rebinding of buffer-local variables
> like case-fold-search).  So why we are talking about case-fold-search
> instead of solving the original problem?  If we want to discuss the
> case-fold-search issue, IMO we should discuss it in a separate bug
> report.

The bottlenecks now (after applying my patch for `find-buffer-visiting')
are `abbreviate-file-name' and `inhibit-local-variables-p'; not the
`find-buffer-visiting' per se (both are slow because they let-bind
case-fold-search).
AFAIU, it is very hard to rewrite them in C, as I explained in
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=66117#157

-- 
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>