Opened 15 years ago
Closed 14 years ago
#7 closed defect (fixed)
innreport doesn't properly track checkpoints across days
Reported by: | eagle | Owned by: | eagle |
---|---|---|---|
Priority: | low | Milestone: | 2.5.2 |
Component: | utilities | Version: | 2.4.5 |
Severity: | normal | Keywords: | |
Cc: |
Description
When logging incoming article counts, innd logs two types of log messages: closing messages when the remote peer terminates the connection, which summarizes all articles received on that connection and then reset the counter, and checkpoint messages, which say how many articles were received so far.
Currently, innreport takes into account checkpoint messages if no subsequent closing message is seen, but since connections can be open for days, this can produce skewed numbers on how many articles have been received. The articles received on previous days aren't properly subtracted from the checkpoint value.
One possible solution would be to store a local file holding the last checkpoints that innreport processed, and then read that file at the beginning of a new run and subtract off those numbers from subsequent checkpoints. There would need to be some way to run innreport and not save changes to this file.
Change History (4)
comment:1 Changed 15 years ago by
comment:2 Changed 14 years ago by
Milestone: | → 2.5.2 |
---|
comment:3 Changed 14 years ago by
comment:4 Changed 14 years ago by
Resolution: | → fixed |
---|---|
Status: | new → closed |
(In [9016]) Change how innfeed logs its article counts. A checkpoint is added
just before a connection is closed. Checkpoints contain values
accumulated since the last checkpoint.
This way, innreport can rely on checkpoints only, so as to produce
more accurate stats.
See also commit [9002] for innd.
close #7
Another solution (suggested by Russ Allbery) is to have 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. It used to be, before innfeed when the logging was designed, that no one kept connections open for long periods, but now almost everyone does and that means that one sees very few articles for a long time and then a ton of articles all at once in the statistics when the peer closes the connection for some reason.