Gnus development mailing list
 help / color / mirror / Atom feed
From: Ken Raeburn <raeburn@cygnus.com>
Cc: ding@ifi.uio.no
Subject: Re: backgrounded expire deletes
Date: 07 Oct 1996 15:05:00 -0400	[thread overview]
Message-ID: <tx1enjazjc3.fsf@cygnus.com> (raw)
In-Reply-To: Wesley.Hardaker@sphys.unil.ch's message of 07 Oct 1996 16:21:03 +0100


I've been thinking about this recently too.

> 1) put the file name in a buffer and save the buffer on exiting gnus,
>    and allow a cron job to check for the file at night and remove the
>    articles then.
> 
> 2) collect names of the files and pass them to a long winded /bin/rm
>    system call with a '&' at the end.

Both of these still require spending a lot of time stat'ing each file
when exiting the group.  They probably would cut the time about in
half.  (The stat info can be cached, but in the current implementation
a lot more stats are done than necessary when you have sparse article
numbers.)

How about adding the group to a list of groups that should be expired,
maybe with a list of article numbers to check, and doing the
expiration while idle?  A function could be fired up when emacs is
idle for 5 seconds or do.  It could check and maybe delete a couple of
articles, check for input availability using sit-for, and continue if
none is available or reschedule itself if it is.

If you enter a group already on the list, just remove it from the
list; it'll get re-added when you leave.

On exiting gnus, perhaps the remaining expirations could be run, or
the state could be saved away in .newsrc.eld for processing next time
gnus is fired up.

This could leave unsaved .overview buffers around some of the time
while the expires are in progress.  I'm not sure if that'd be a big
problem, or how best to deal with it if it is.  Maybe they could be
saved when available input is detected.  This would cost a bit of
efficiency, but overall we'd probably win by avoiding large delays for
the user.


      parent reply	other threads:[~1996-10-07 19:05 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1996-10-07 15:21 Wesley.Hardaker
1996-10-07 16:11 ` Kai Grossjohann
1996-10-07 21:31   ` Colin Rafferty
1996-10-07 19:05 ` Ken Raeburn [this message]

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=tx1enjazjc3.fsf@cygnus.com \
    --to=raeburn@cygnus.com \
    --cc=ding@ifi.uio.no \
    /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).