[elephant-devel] linux-sbcl-64 report
Henrik Hjelte
henrik at evahjelte.com
Mon Feb 12 17:55:00 UTC 2007
Minor problems on 64 bit sbcl/linux
.
serializer2 line 174:
(if (< (abs frob) +2^32+)
should be
(if (< (abs frob) +2^31+)
:module utils in elephant.asd should have a serial :t otherwise lock may
be compiled before package.
A reminder about compiler switches,
-arch x86_64 I think is apple specific,
I have
#+(or :X86-64) "-march=x86-64"
on linux.
Maybe a compromise is
"-m64" ?
http://gcc.gnu.org/onlinedocs/gcc-3.3.6/gcc/i386-and-x86_002d64-Options.html#i386-and-x86_002d64-Options
A bigger problem: I get out-of-memory errors after running elephant a
while. I *think* (I am by no means an expert with these things) this can
mean anything, not only out-of-memory. (Because of a low default
error-message level)
What I strongly suspect is that I run out of locks.
Doing dbstat-e reveals:
999 Number of current locks
1000 Maximum number of locks at any one time
13 Number of current lockers
17 Maximum number of lockers at any one time
996 Number of current lock objects
997 Maximum number of lock objects at any one time
When I am thrown to the debugger.
When quiting the debugger:
0 Number of current locks
1000 Maximum number of locks at any one time
I am running the deadlock detector in a shell process: db_deadlock -t 3
Oracle writes about this as point six in the common problems section:
http://www.oracle.com/technology/documentation/berkeley-db/db/ref/debug/common.html
I have tried to use with-locks surrounding the get and put calls in
persistent-slot-reader and writer, but it didn't help anything.
Any ideas? Has no one else seen this? Have I missed something obvious?
Best wishes,
Henrik Hjelte
More information about the elephant-devel
mailing list