>>>>> "ew" == Edi Weitz <[EMAIL PROTECTED]> writes:
ew> GC lossage. No transport function for object 0x656a624f
ew> LDB monitor
ew> I was able to leave the LDB monitor with "exit" and everything seems
ew> to work fine now (I'm writing this only some minutes after it
ew> happened) but I have no idea what's happening here and wonder if this
ew> is something I have to worry about.
I run into this very infrequently, but most often after having made
changes to CMUCL internals. GC lossage is probably a symptom of the
lisp heap having been corrupted. You can enable extra checking for the
generational garbage collector (which may help detect the problem more
quickly) using code such as:
(alien:def-alien-variable ("gencgc_verbose" gencgc-verbose) c-call::int)
(alien:def-alien-variable ("pre_verify_gen_0" gencgc-pre-verify-gen0) c-call::int)
(alien:def-alien-variable ("verify_after_free_heap" gencgc-verify-after-free-heap)
c-call::int)
(alien:def-alien-variable ("verify_dynamic_code_check"
gencgc-verify-dynamic-code-check) c-call::int)
(alien:def-alien-variable ("check_code_fixups" gencgc-check-code-fixups) c-call::int)
(alien:def-alien-variable ("gencgc_zero_check" gencgc-zero-check) c-call::int)
(alien:def-alien-variable ("gencgc_enable_verify_zero_fill"
gencgc-enable-verify-zero-fill) c-call::int)
(alien:def-alien-variable ("gencgc_zero_check_during_free_heap"
gencgc-zero-check-during-free-heap) c-call::int)
(defun gencgc-enable-checking ()
(format *debug-io* "~&Enabling GenCGC checking...~%")
(setf gencgc-verbose 2)
(dolist (check '(gencgc-pre-verify-gen0
gencgc-verify-after-free-heap
gencgc-verify-dynamic-code-check
gencgc-check-code-fixups
gencgc-zero-check
gencgc-enable-verify-zero-fill
gencgc-zero-check-during-free-heap))
(setf check 1))))
ew> I tried to reproduce this error but didn't succeed. I'm using 18e-pre,
ew> built 2002-12-19 on melbourne. The application uses UncommonSQL and
ew> had an open database connection to PostgreSQL, so FFI stuff was
ew> involved if that's important.
foreign code can corrupt the lisp heap if it misbehaves.
(with-plug
You could write an UncommonSQL backend to pg.lisp to avoid the
FFI and be more thread-safe.)
--
Eric Marsden <URL:http://www.laas.fr/~emarsden/>