0.94.14 problems on Debian/sparc

Matthias Andree matthias.andree at gmx.de
Fri Jun 10 00:28:12 CEST 2005


Clint Adams <schizo at debian.org> writes:

> I've attempted the non-BDB backends on Debian/sparc for the first time,
> and this is what I've run into.
>
> * Debian ships the qdbm include files in /usr/include/qdbm, so I needed
>   to append this to CFLAGS.

Yes. The Debian package is installing qdbm headers into a nonstandard
location (default is ${prefix}/include), so Debian will have to locally
provide for the proper CPPFLAGS (not CFLAGS!)

> * db and qdbm builds passed the test suite.  sqlite failed initially
>   (some locking issue), but I am unable to reproduce it.  tdb fails
>   consistently.

t.lock3 is timing sensitive, and sqlite appears to be quite fast in
starting up, so we'll exhaust the dozen retries in no time when several
processes compete.

I'd suggest to patch Makefile.in before configure runs so the test suite
doesn't run t.lock3 for sqlite for now, we'll need to increase the
aborted transaction retry count or switch to a timeout. This would match
the FreeBSD port, check the pre-configure option:

http://www.freebsd.org/cgi/cvsweb.cgi/ports/mail/bogofilter-sqlite/Makefile?rev=1.3

REINPLACE_CMD is an "in-place" capable sed(1), or you could use
perl -pli -e

> make[6]: Entering directory `/tmp/buildd/bogofilter-0.94.14/obj-tdb/src/tests'
> ../../../src/tests/t._abort: line 6: 21947 Aborted                 ( ./abortme )
> PASS: t.abort

t.abort without backtrace? Try allowing coredumps so we get a backtrace
and know where the bus error occurs. ("Bus error" on RISC machines such
as the SPARC sounds like unaligned access.)

I don't recommend TDB though, it's - IMHO - not properly supported,
incompletely documented and our implementation is pretty inefficient,
as in "works for Gyepi and nobody else uses or has interest in it".

-- 
Matthias Andree



More information about the bogofilter-dev mailing list