t.maint fails with QDBM -- DB and TDB are fine

Matthias Andree matthias.andree at gmx.de
Thu Sep 25 04:18:31 CEST 2003


Hi,

t.maint fails when the package is used with QDBM. I suspect the QDBM
iterator breaks when tokens are removed while the iteration is in
progress, man depot(3):

  "char *dpiternext(DEPOT *depot, int *sp); [...]
   It is possible to access every record by iteration of calling this
   function. However, it is not assured if updating the database is
   occurred while the iteration. [...]"

If that's really the case, we'll need to build a list of "tokens to be
removed" and flush them after traversal.

I'm not going to check or implement anything now, so feel free.

Cheers,

-- 
Matthias Andree

Encrypt your mail: my GnuPG key ID is 0x052E7D95




More information about the bogofilter-dev mailing list