[news.admin] 2.11 rmgroup minor bug fix

dennis@rlgvax.UUCP (Dennis Bednar) (12/25/86)

The 'rmgroup' script blindly deletes articles without removing the
entries from the history file.  Since expire(8) manages the history
file, rmgroup should be modified to call expire(8):
	expire -n group -e 0 -E 0

Below are the context diffs for the 2.11 version of the rmgroup sh script:

PS, since expire has to rebuild the entire history file, and expire is so
slow, it might be wise to call expire only when it is known that there
really are articles in that directory.  The script below, however, does it
the brute force way (i.e., it calls expires always).

*** rmgroup.old	Thu Dec 25 04:58:07 1986
--- rmgroup.new	Thu Dec 25 05:05:39 1986
***************
*** 16,21
  		dir=/usr/spool/news/"`echo $group | sed 's/\./\//g'`"
  		if [ -d $dir ]
  		then
  			rm $dir/*
  			rmdir $dir
  		else

--- 16,26 -----
  		dir=/usr/spool/news/"`echo $group | sed 's/\./\//g'`"
  		if [ -d $dir ]
  		then
+ 			# expire command is slow but is needed to remove
+ 			# entries from history file for this group.
+ 			# when this is over, the rm should not find any
+ 			# articles in that directory, if all goes well.
+ 			expire -n $group -e0 -E0
  			rm $dir/*
  			rmdir $dir
  		else

-- 
-Dennis Bednar
{decvax,ihnp4,harpo,allegra}!seismo!rlgvax!dennis	UUCP

kre@munnari.oz (Robert Elz) (12/25/86)

In article <300@rlgvax.UUCP>, dennis@rlgvax.UUCP (Dennis Bednar) writes:
> The 'rmgroup' script blindly deletes articles without removing the
> entries from the history file.

There is no need to fix this, extra message id's in the history file
don't hurt anyone, and they will vanish in time from normal operation
of expire.

Running rmgroup when there are unexpired articles probably isn't the
best thing to do though in most cases (however sometimes its hard
to avoid).

kre