Problems with cnfsstat output...
Russ Allbery
rra at stanford.edu
Sat Oct 18 05:12:11 UTC 2003
Todd Kaehler <kaehler at psmfc.org> writes:
> I am using cycbuffs of 2 Gb (was using 1 Gb cycbuffs without any
> problems) and when I do a 'cnfsstat -a' I now get:
> # cnfsstat -a
> Class LARGE for groups matching "*", article size min/max: 200000/0
> Malformed UTF-8 character (overflow at 0xdd3fd70e, byte 0x98, after
> start byte 0xff) in pattern match (m//) at /usr/lib/news/bin/cnfsstat
> line 465.
This line in INN 2.3.x (which is what I assume you're using) is in a line
where it's trying to find the message ID of a message. I'm not sure
what's going on there; maybe you have a bunch of messages with weird
characters in the message ID? In any case, I don't know how to fix this.
> Note it says the size is 1.00 GBytes (not 2 GBytes).
I think I know how to fix this. I believe this is the same issue as was
reported on news.software.nntp. I'm currently hoping the following patch
will fix the problem; if you can test this, I'd be much appreciative (note
that it's against CURRENT, though, so I'm not sure if it will apply).
--- cnfsstat.in 2002/10/06 04:11:42 1.18
+++ cnfsstat.in 2003/10/18 04:59:14
@@ -17,6 +17,7 @@
use vars qw($opt_l $opt_h $opt_a $opt_s);
use Getopt::Long;
use Math::BigInt;
+use Math::BigFloat;
use English;
my($conffile) = "$inn::pathetc/cycbuff.conf";
@@ -324,7 +325,7 @@ sub human_readable {
my $factor = 1024;
my $unit = -1;
- my $oldscaled = $val / $base;
+ my $oldscaled = Math::BigFloat->new ($val) / $base;
my $scaled = $oldscaled;
while ( ( int($scaled) > 0 ) && ( $unit < $#name ) ) {
$oldscaled = $scaled;
--
Russ Allbery (rra at stanford.edu) <http://www.eyrie.org/~eagle/>
Please send questions to the list rather than mailing me directly.
<http://www.eyrie.org/~eagle/faqs/questions.html> explains why.
More information about the inn-workers
mailing list