From: Manuel Giraud via "Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@gnu.org>
To: Andrew Cohen <cohen@bu.edu>
Cc: Eli Zaretskii <eliz@gnu.org>, 63842@debbugs.gnu.org, cohen@andy.bu.edu
Subject: bug#63842: 30.0.50; Slow 'gnus-summary-refer-thread'
Date: Sun, 18 Jun 2023 00:16:26 +0200 [thread overview]
Message-ID: <87352ppwed.fsf@ledu-giraud.fr> (raw)
In-Reply-To: <87fs6rashz.fsf@ust.hk> (Andrew Cohen's message of "Sat, 17 Jun 2023 07:37:28 +0800")
Andrew Cohen <cohen@bu.edu> writes:
> Sorry, I have gotten busy with other things at the moment.
Hi Andrew and you don't need to be sorry for this :-)
>>>>>> "MG" == Manuel Giraud <manuel@ledu-giraud.fr> writes:
>
> MG> Hi, So here is the crux of this issue. When using
> MG> 'gnus-summary-refer-thread' in a nnml group, Emacs ends up
> MG> calling 'gnus-get-newsgroup-headers-xover' (via
> MG> 'gnus-fetch-headers'). AFAIU in this function when
> MG> 'gnus-read-all-available-headers' is t, Emacs will parse *all*
> MG> of the " *nntp*" buffer content. In my case, this buffer is
> MG> quite big (about 50k lines and 23MiB) hence the slowness.
>
> Thanks for continuing to debug this. I am confused---why is the nntp
> buffer so full?
I think in a nnml group the nntp buffer is populated with the content of
the ".overview" file. In this particular group, I have thousands of
messages and I think that explains the size of this file.
> The search routine should populate the buffer only with the headers of
> the articles found in the search (I am assuming that this list of
> found articles is not 50K lines long). Maybe the search is not
> working properly?
As we are talking about 'gnus-summary-refer-thread', I guess that it is
expected that the nntp buffer is filled with this content. A regular
query (with 'G G') is still fast, so I think my search engine is set up
properly.
> Can you step through gnus-summary-refer-thread and in the conditional
> that retrieves the new headers can you tell me which branch of the
> conditional is chosen (there are three possibilities:
> 'gnus-request-thread, 'gnus-search-thread, and the clause with the
> comment "Otherwise just retrieve some headers").
In my case, Emacs is using the 'gnus-search-thread' branch and ends up
calling 'gnus-get-newsgroup-headers-xover' which is the function that
parses all the nntp buffer content.
> MG>BTW, I also have examples where 'gnus-summary-refer-thread' gives me
> MG>some false positives (eg., not the same thread but part of the subject
> MG>matching)
>
> This is probably by design: in the olden days many mailers were broken
> and didn't handle the references header properly (I don't know if this
> is still the case). So by default gnus tries to use information from the
> subject header to help gather loose threads, which can result in
> articles not actually part of the thread being included. You can check
> if this is the reason for what you are seeing by setting
>
> (setq gnus-summary-thread-gathering-function
> 'gnus-gather-threads-by-references)
>
> and seeing if this makes a difference.
Ok, thanks for the explanation and FWIW, my
'gnus-summary-thread-gathering-function' is already set to
'gnus-gather-threads-by-references.
Best regards,
--
Manuel Giraud
next prev parent reply other threads:[~2023-06-17 22:16 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-06-02 13:17 bug#63842: 30.0.50; Slow 'gnus-summary-refer-thread' Manuel Giraud via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-06-02 15:26 ` Manuel Giraud via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-06-02 23:32 ` Andrew Cohen
2023-06-03 13:23 ` Manuel Giraud via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-06-15 5:55 ` Eli Zaretskii
2023-06-15 17:59 ` Manuel Giraud via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-06-16 10:36 ` Manuel Giraud via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-06-16 23:37 ` Andrew Cohen
2023-06-17 22:16 ` Manuel Giraud via Bug reports for GNU Emacs, the Swiss army knife of text editors [this message]
2023-06-18 0:45 ` Andrew Cohen
2023-06-18 20:57 ` Manuel Giraud via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-06-19 12:58 ` Andrew Cohen
2023-06-19 15:44 ` Manuel Giraud via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-06-23 10:00 ` Manuel Giraud via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-07-01 8:25 ` Eli Zaretskii
[not found] ` <87edlsav34.fsf@ust.hk>
2023-07-01 9:49 ` Eli Zaretskii
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=87352ppwed.fsf@ledu-giraud.fr \
--to=bug-gnu-emacs@gnu.org \
--cc=63842@debbugs.gnu.org \
--cc=cohen@andy.bu.edu \
--cc=cohen@bu.edu \
--cc=eliz@gnu.org \
--cc=manuel@ledu-giraud.fr \
/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).