Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!rutgers!cs.utexas.edu!uunet!mcvax!kth!sunic!dkuug!tidk!storm From: storm@texas.dk (Kim F. Storm) Newsgroups: news.software.b Subject: Cnews active min field AND nn database expire Message-ID: <352@texas.dk> Date: 4 Jul 89 14:42:01 GMT References: <1989Jun25.174800.13276@utzoo.uucp> <10931@ibmpcug.UUCP> <1989Jun20.213129.8095@utzoo.uucp> <10947@ibmpcug.UUCP> <1989Jun28.172724.15420@vicom.com> Organization: Texas Instruments, Denmark Lines: 57 lmb@vicom.com (Larry Blair) writes: >henry@utzoo.uucp (Henry Spencer) writes: >> Any sensible news reader has >> to be prepared to go in and read the directory itself to find out what >> articles are really present. Given that, what use is min? >Apparently the newly posted NN newsreader isn't sensible. It maintains >an article database on which a crude expire is performed, based on the >min field. I agree with Henry Spencer that reading the spool directory is the best way to do things, and I am starting an investigation on how this can be done in nn (which currently uses the min field to determine whether expire is necessary on the database). But before I can utilize this in nn, NNTP must be expanded to provice the following information: - Modification time on each news directory (to know whether it has changed) - A list of all article numbers in the group (basically an ls on the directory with all non-numeric entries eliminated). Actually, I would very much appreciate if the active file contained a time-stamp on the group (instead of min) so it was possible to see whether the group has changed since the last reading of the active file (it would eliminate the need for the first change to NNTP above - just get the active file). For the time being, nn will work with C news, but expire on the database must be initiated manually (e.g. from cron). > A full rebuild of the database is too expensive to do every >night. But nn's full expire (-E) functionality could be dramatically improved by using the already available information from the database rather than recollecting the information from the spool directory/via NNTP. The default (non -E) expire will reuse the database information, but it is based on the min/max numbers in the active file and will not check for expired articles in that range (that is a bug). To conclude: Henry is right about calling the news readers relying on the min (and max) field broken, but then he (Cnews et.al) and NNTP must provide the proper tools to fix this: Put last update (expire/new article) time stamps in the active file. NNTP must provide a *true* LIST-ARTICLE-NUMBERS-IN-GROUP command. (nn can do without both, but it will have severe performance penalties - and that was neither the intent of nn nor Cnews, right?) -- Kim F. Storm storm@texas.dk Tel +45 429 174 00 Texas Instruments, Marielundvej 46E, DK-2730 Herlev, Denmark No news is good news, but nn is better!