expire/makehistory and mmap/madvise'd dbz filez
rmtodd at servalan.servalan.com
Sun Dec 3 21:55:41 UTC 2000
In servalan.mailinglist.inn-workers you write:
>I'm engaged in a discussion on one of the FreeBSD developer lists
>and I thought I'd verify the present source against my memory of how
>INN 1.5 runs, to see if I might be having problems...
>Anyway, the Makefile in the 1.5 expire directory has the following bit,
>that seems to be absent in present source, and I didn't see any
>obvious indication in the makedbz source as to how it's initializing
>the new files, which, if done wrong, could trigger some bugs, at least
>when `expire' is run.
># Build our own version of dbz.o for expire and makehistory, to avoid
># any -DMMAP in DBZCFLAGS - using mmap() for dbz in expire can slow it
># down really bad, and has no benefits as it pertains to the *new* .pag.
> $(CC) $(CFLAGS) -c ../lib/dbz.c
>Is this functionality in the newest expire, or do I need to go a hackin'?
Whether dbz uses mmap or not on a given invocation is controlled by the
dbzsetoptions() call; look for that call and setting of the INCORE_MEM
option in expire/expire.c and expire/makedbz.c. Neither expire nor
makedbz mmaps the new dbz indices it creates.
More information about the inn-workers