Inconsistency in news.notice

Julien ÉLIE julien at trigofacile.com
Mon Apr 30 11:19:05 UTC 2007


En réponse à Russ Allbery :
> The way that logging works is that article counts are only logged when the
> connection is closed, except that you should get checkpoints logged from
> time to time in the interim.  The odd part about your situation is that
> you're not seeing the checkpoints.

I do not know how much time (or articles) there is between checkpoints.
I had one yesterday:
Apr 29 10:04:47 news innd: tomate.motzarella.org:639 checkpoint seconds 65533 accepted 298 refused 2774 rejected 2 duplicate 0 accepted size 633978 duplicate size 0 rejected size 7675

And I believe the 298 accepted articles are the right number at 10:04:47
(since I had 224 accepted articles the previous day, until 04:15).


> There were some patches to innreport committed to CURRENT to try to fix
> this by taking the checkpoints into account, but they're wrong.  They'll
> double-count articles when the connection close doesn't happen until the
> next day

Yes, you're right.


> I'm not sure why you're not seeing those; maybe some
> sort of unusual logging configuration?

Probably because I receive a few articles in that news server.
I had a checkpoint, though :)


> The fundamental problem here is hard to fix.  I think it's going to take
> some significant changes to how innd logs its article counts, such as
> resetting the counters each time it logs a checkpoint rather than
> accumulating the counters until connection close.

I do not thing such changes should be made.
Indeed, it is a problem inherent in innreport.  I believe an innreport
temp file should be created (in /var/log/news/innreport.channels for
instance) wherein, during the process of news.notice, it will log,
as it is already done with the CURRENT innreport, server:channel when
it is initiated.
The file should be written at the end of the process of news.notice.
It contains all the channels still opened (with their last checkpoint).

The next day, we see, when there is a closed connection, if there
already was a line in innreport.channels.  We just substract the
counts and we have a once-count number of articles.

I hope my explanations were clear enough.  Do not hesitate to tell
me in case they were not.

-- 
Julien

« Vous serez ma bonne légion qu'il disait... » (Astérix)



More information about the inn-bugs mailing list