DB_PAGE_NOTFOUND

David Relson <[email protected]>
Newsgroups gmane.mail.bogofilter.devel
Organization Osage Software Systems, Inc.
Message-ID <[email protected]>
Matthias,

I've found out how to reproduce the problem with t.bogoutil, i.e. the
generation of message:

bogofilter: (db) DB->get(TXN=134689768,  '.MSG_COUNT' ), err: -30988,
DB_PAGE_NOTFOUND: Requested page not found

It happens when db-4.2.52 is used (but not db-4.3.27) and when 
"--enable-transactions" is used, but not with AUTO-XA.

I reduced t.bogoutil and t.frame to their essentials and ended up with
script t.DB_PAGE_NOTFOUND.sh.  

To ensure a clean build, I ran:

   ./configure --enable-transactions
   make -s distclean
   make -s all

When I run the following commands from my bogofilter/src directory

   t.DB_PAGE_NOTFOUND.sh
   ./bogofilter -xd -C -s -d bogodir/ -M -B ./tests/inputs/spam.mbx

Alternatively, after running t.DB_PAGE_NOTFOUND.sh, the second command
can be used as gdb arguments and the problem appears.

Note that to get the error, the script _must_ be run before each
running of the bogofilter command.  If the bogofilter command is run
_twice_, the first run will generate the error and the second will
succeed.

As wild speculation, might the txn_probe code be involved?  Might
running it in AUTO-XA do something crucial that --enable-transactions
doesn't do.

Regards,

David

_______________________________________________
Bogofilter-dev mailing list
[email protected]
http://www.bogofilter.org/mailman/listinfo/bogofilter-dev
t.DB_PAGE_NOTFOUND.sh (application/x-sh, 747 B)
#!/bin/sh -x

### run from src /subdirectory

### setup (one time)
# cd ..
# make -s distclean
# ./configure --enable-transactions --quiet
#make -s all
### end of setup

echo "###### t.DB_PAGE_NOTFOUND.sh begins ######"

rm -rf bogodir
mkdir bogodir

./bogoutil -l bogodir/wordlist.db < /dev/null

rm bogodir/wordlist.db
./bogofilter -xd -C -n -d bogodir/ -M -B ./tests/inputs/good.mbx

### The following command can be run from the command line or
### the equivalent put into .gdbinit

#./bogofilter -xd -C -s -d bogodir/ -M -B ./tests/inputs/spam.mbx

echo "###### t.DB_PAGE_NOTFOUND.sh done ######"

### And this is the result either way
#bogofilter: (db) DB->get(TXN=134689880,  '.MSG_COUNT' ), err: DB_PAGE_NOTFOUND: Requested page not found
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.