<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=UTF-8">
<META NAME="GENERATOR" CONTENT="GtkHTML/3.3.2">
</HEAD>
<BODY>
This series of operations hangs an out-of-the box 0.2.1 installation<BR>
on SBC 0.8.18 against BerkeleyDB 4.2 as well as the tip of the branch <BR>
against BerkeleyDB 4.3 (at least, in my code!<BR>
<BR>
<BR>
<BR>
(asdf:operate 'asdf:load-op :elephant)<BR>
(asdf:operate 'asdf:load-op :elephant-tests)<BR>
(in-package "ELEPHANT-TESTS")<BR>
<BR>
(open-store *testdb-path*)<BR>
#<STORE-CONTROLLER {92A4A81}><BR>
ELE-TESTS> (start-transaction)<BR>
#<SB-ALIEN-INTERNALS:ALIEN-VALUE :SAP #X08279EE8 :TYPE (* T)><BR>
ELE-TESTS> (commit-transaction)<BR>
#<SB-ALIEN-INTERNALS:ALIEN-VALUE :SAP #X00000000 :TYPE (* T)><BR>
ELE-TESTS> (setq *current-transaction*<BR>
(db-transaction-begin (controller-environment<BR>
*store-controller*)))<BR>
#<SB-ALIEN-INTERNALS:ALIEN-VALUE :SAP #X08279EE8 :TYPE (* T)><BR>
ELE-TESTS> (db-transaction-commit :transaction *current-transaction*)<BR>
NIL<BR>
ELE-TESTS> (defvar *friends-birthdays* (make-instance 'btree))<BR>
Control stack guard page temporarily disabled: proceed with caution<BR>
; Evaluation aborted<BR>
ELE-TESTS> (defvar *friends-birthdays* (make-instance 'btree))<BR>
*FRIENDS-BIRTHDAYS*<BR>
ELE-TESTS> (add-to-root "friends-birthdays" *friends-birthdays*)<BR>
; Evaluation aborted<BR>
ELE-TESTS> <BR>
<BR>
The hang appears to be somehow have something to do with the LISP <BR>
state; if you restart the LISP, you can again connect without having<BR>
to run "db_recover" on the sleepycat database.<BR>
<BR>
I discovered this bug in my own (highly changed) code and <BR>
went back to a clean 0.2.1 install to verify that it exists there.<BR>
I have not tried it in a clean install against BerkeleyDB 4.3 (that is,<BR>
the tip of the CVS trunk, with none of my modifications.)<BR>
<BR>
I have no reason to belive this is important, but this sequence is<BR>
in the "tutorial" documentation.<BR>
<BR>
</BODY>
</HTML>