7hrs and rising...

Richard Michael Todd rmtodd at mailhost.ecn.ou.edu
Fri Nov 5 23:33:50 UTC 1999

In message <Pine.BSF.4.10.9911051727560.2296-100000 at thelab.hub.org>you write:
>Am running 'makedbz -o' on a 654Meg history file, and its still going
>strong??  I'm on a PIII-500Mhz with 768Meg of RAM...shouldn't it run just
>slightly faster then that? :)

Yeah.  On a PPro 200 with 128M and a 250M or so history file, makedbz 
-s 2808378 (the history file length) takes 58 seconds.  

As a later correspondent whose name I can't get to easily while I'm writing
this message writes, the most likely cause of this long time is not having
the -s parameter set right.   *However*, closer inspection reveals that

	1) the -o parameter, according to the man page, is supposed to use
	   the size of the old history file to autosize the new one, and yet
	2) the actual code for makedbz says:

        case 'o':
            Overwrite = TRUE;
            IgnoreOld = TRUE;
IgnoreOld does exactly what you might guess, making it ignore the old history
dbz size.  Hmm.  From the looks of the code, it looks like the -o option has 
been blithely ignoring the old DBZ size since well before INN2.2.  Try the
enclosed patch which seems to make -o work the way the man page says.

Index: expire/makedbz.c
RCS file: /home/rmtodd/TempCVS/Temp-CVS-Repository/inn-current/expire/makedbz.c,v
retrieving revision 1.5
diff -u -r1.5 makedbz.c
--- makedbz.c	1999/07/04 05:56:45	1.5
+++ makedbz.c	1999/11/05 23:25:33
@@ -97,7 +97,11 @@
     else {
 	temp[0] = '\0';
-	RemoveDBZFiles(TextFile);
+	/* 
+	** only do removedbz files if a. we're using something besides 
+	** $pathdb/history, or b. we're ignoring the old db.
+	*/
+	if (!EQ(TextFile, HISTORY) || IgnoreOld) RemoveDBZFiles(TextFile);
 	p = TextFile;
@@ -230,7 +234,6 @@
 	case 'o':
 	    Overwrite = TRUE;
-	    IgnoreOld = TRUE;
 	case 'i':
 	    IgnoreOld = TRUE;


More information about the inn-workers mailing list