Gnus development mailing list
 help / color / mirror / Atom feed
From: Ted Zlatanov <tzz@lifelogs.com>
Subject: Re: Spam processing slows down group exit
Date: Fri, 02 Jan 2004 11:08:47 -0500	[thread overview]
Message-ID: <4nznd6jptc.fsf@collins.bwh.harvard.edu> (raw)
In-Reply-To: <v9pte3u68w.fsf@marauder.physik.uni-ulm.de> (Reiner Steib's message of "Thu, 01 Jan 2004 14:51:27 +0100")

On Thu, 01 Jan 2004, 4.uce.03.r.s@nurfuerspam.de wrote:

> I found that the group and topic parameters (spam/ham) are
> calculated[1] for *every article* rather than once for each group
> exit.  I have set up spam processing for some IMAP groups and all
> Gmane groups[2], but not for nnml (and other nntp groups).
[...]
> Couldn't each possible mark be checked _once_ per group exit instead
> once for every article?  (==> O(1) instead of O(n), AFAIKS.)

There were two problems here, one that I had forgotten to use the new
spam-list-articles function which encapsulated that check, and the
other that I had forgotten to optimize spam-list-articles as I should
have.

OK, that's three problems, if you count my forgetfulness :)

Fixed in CVS, take a look.  I didn't bother with a global cache,
because it would be much optimizing for a small gain, plus the
customization functions would need triggers to set the caches to nil,
plus if a user modified the ham-marks or spam-marks manually we're in
trouble anyhow.  Instead the caches of "yes" and "no" matches
(spam-list-articles can take a classification, so "yes" the mark
matches the 'spam or 'ham classification, or "no" it doesn't) are
rebuilt every time the function spam-list-articles is run.

> Why is `spam-ham-copy-or-move-routine' called in the first place?  I
> have not requested any spam processing in this group.

It's called from spam-summary-prepare-exit, can you check why it's
being invoked in your case in particular?  It should only be called
here (through the spam-ham-{copy,move}-routine proxies):

    (when (spam-group-ham-processor-copy-p gnus-newsgroup-name)
      (gnus-message 5 "Copying ham")
      (spam-ham-copy-routine
       (gnus-parameter-ham-process-destination gnus-newsgroup-name)))

    ;; now move all ham articles out of spam groups
    (when (spam-group-spam-contents-p gnus-newsgroup-name)
      (gnus-message 5 "Moving ham messages from spam group")
      (spam-ham-move-routine
       (gnus-parameter-ham-process-destination gnus-newsgroup-name))))

Thanks
Ted



  reply	other threads:[~2004-01-02 16:08 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-12-30  3:58 Profiling Lars Magne Ingebrigtsen
2003-12-30  5:06 ` Profiling Kevin Greiner
2003-12-31  1:39   ` Profiling Lars Magne Ingebrigtsen
2004-01-04 15:37     ` Profiling Per Abrahamsen
2004-01-04 20:41       ` Profiling Lars Magne Ingebrigtsen
2003-12-31  1:49 ` Profiling Michael Cook
2004-01-03 16:56   ` Profiling Robert Marshall
2004-01-01 13:51 ` Spam processing slows down group exit (was: Profiling) Reiner Steib
2004-01-02 16:08   ` Ted Zlatanov [this message]
2004-01-02 18:40     ` Spam processing slows down group exit Reiner Steib

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

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

  git send-email \
    --in-reply-to=4nznd6jptc.fsf@collins.bwh.harvard.edu \
    --to=tzz@lifelogs.com \
    /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.
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 NNTP newsgroup(s).