<!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>
In my ongoing attempt to implement a CL-SQL based backend, I have checked out <BR>
the latest version of the CVS repository and attempted to install it before merging <BR>
my (extremely large) patch from the Elephant 0.2.1 version where I have been developing <BR>
previously.  I am running SBCL 0.8.18.<BR>
<BR>
When I attempt to do: (asdf:operate 'asdf:load-op :elephant),  (after properly compiling <BR>
and installing in the correct places the berkeleydb 4.3 library and the libsleepycat C library)<BR>
I get the error pasted in below.<BR>
<BR>
I understand CLOS, but just barely.  It is not obvious why this is happening; I assume it<BR>
is some SBCL specific feature, and the the head of the repository build successfully<BR>
on some other system?  Or am I just confused?<BR>
<BR>
If anyone has any idea or can help, please post immediately; I have been working on<BR>
this full-time for over a month now and would really like to put a ribbon around it<BR>
and publish it rather than abandon it.<BR>
<BR>
<BR>
<BR>
The slot %PERSISTENT-SLOTS is unbound in the object #<PERSISTENT-METACLASS INDEXED-BTREE>.<BR>
   [Condition of type UNBOUND-SLOT]
<PRE>

   [Condition of type UNBOUND-SLOT]

Restarts:
  0: [ABORT] Abort handling SLIME request.
  1: [ABORT] Reduce debugger level (leaving debugger, returning to toplevel).
  2: [TOPLEVEL] Restart at toplevel READ/EVAL/PRINT loop.

Backtrace:
  0: ((SLOT-UNBOUND (T T T)) #<unavailable argument> #<unavailable argument> #<unavailable argument> #<PERSISTENT-METACLASS INDEXED-BTREE> %PERSISTENT-SLOTS)
  1: ("XEP for (SLOT-UNBOUND (T T T))" 5 #<unavailable argument> #<unavailable argument> #<unavailable argument> #<PERSISTENT-METACLASS INDEXED-BTREE> %PERSISTENT-SLOTS)[:EXTERNAL]
      Locals:
        SB-DEBUG::ARG-0 = 5
        SB-DEBUG::ARG-1 = :<NOT-AVAILABLE>
        SB-DEBUG::ARG-2 = :<NOT-AVAILABLE>
        SB-DEBUG::ARG-3 = :<NOT-AVAILABLE>
        SB-DEBUG::ARG-4 = #<PERSISTENT-METACLASS INDEXED-BTREE>
        SB-DEBUG::ARG-5 = %PERSISTENT-SLOTS
      [No catch-tags]
  2: (SB-PCL::SLOT-UNBOUND-INTERNAL #<PERSISTENT-METACLASS INDEXED-BTREE> 19)
      Locals:
        SB-DEBUG::ARG-0 = #<PERSISTENT-METACLASS INDEXED-BTREE>
        SB-DEBUG::ARG-1 = 19
      [No catch-tags]
  3: ((UPDATE-PERSISTENT-SLOTS (PERSISTENT-METACLASS T)) #<unavailable argument> #<unavailable argument> #<PERSISTENT-METACLASS INDEXED-BTREE> (INDICES))
      Locals:
        SB-DEBUG::ARG-0 = :<NOT-AVAILABLE>
        SB-DEBUG::ARG-1 = :<NOT-AVAILABLE>
        SB-DEBUG::ARG-2 = #<PERSISTENT-METACLASS INDEXED-BTREE>
        SB-DEBUG::ARG-3 = (INDICES)
      [No catch-tags]
  4: ((REINITIALIZE-INSTANCE :AROUND (PERSISTENT-METACLASS)) #<unavailable argument> #S(SB-PCL::FAST-METHOD-CALL :FUNCTION #<FUNCTION "CLOSURE" {932DB4D}> :PV-CELL NIL :NEXT-METHOD-CALL NIL :ARG-INFO (1 . T)) #<PERSISTENT-METACLASS INDEXED-BTREE> (:DIRECT-SUPERCLASSES (#<STANDARD-CLASS BTREE>) :DIRECT-SLOTS ((:INITFUNCTION #1=#<FUNCTION "#'(LAMBDA NIL (MAKE-HASH-TABLE))" {9B7FCB5}> :NAME INDICES :READERS # :WRITERS # :INITARGS NIL ...) (:INITFUNCTION #1# :NAME INDICES-CACHE :READERS # :WRITERS # :INITARGS NIL ...)) :DEFINITION-SOURCE ((DEFCLASS INDEXED-BTREE) NIL) :DOCUMENTATION "A BTree which supports secondary indices."))
  5: ((SB-MOP:ENSURE-CLASS-USING-CLASS (SB-PCL::PCL-CLASS T)) #<unavailable argument> #<unavailable argument> #<PERSISTENT-METACLASS INDEXED-BTREE> INDEXED-BTREE (:METACLASS PERSISTENT-METACLASS :DIRECT-SUPERCLASSES (BTREE) :DIRECT-SLOTS ((:INITFUNCTION #1=#<FUNCTION "#'(LAMBDA NIL (MAKE-HASH-TABLE))" {9B7FCB5}> :NAME INDICES :READERS # :WRITERS # :INITARGS NIL ...) (:INITFUNCTION #1# :NAME INDICES-CACHE :READERS # :WRITERS # :INITARGS NIL ...)) :DEFINITION-SOURCE ((DEFCLASS INDEXED-BTREE) NIL) :DOCUMENTATION "A BTree which supports secondary indices."))
  6: (SB-PCL::REAL-LOAD-DEFCLASS INDEXED-BTREE PERSISTENT-METACLASS (BTREE) ((:INITFUNCTION #1=#<FUNCTION "#'(LAMBDA NIL (MAKE-HASH-TABLE))" {9B7FCB5}> :NAME INDICES :READERS (INDICES) :WRITERS (#) :INITARGS NIL ...) (:INITFUNCTION #1# :NAME INDICES-CACHE :READERS (INDICES-CACHE) :WRITERS (#) :INITARGS NIL ...)) (:DOCUMENTATION "A BTree which supports secondary indices.") (INDICES-CACHE INDICES) ((SETF INDICES-CACHE) (SETF INDICES)) (INDICES-CACHE INDICES))
  7: (SB-INT:EVAL-IN-LEXENV 2 (LET ((#:G5805 #)) (SB-PCL::LOAD-DEFCLASS (QUOTE INDEXED-BTREE) (QUOTE PERSISTENT-METACLASS) (QUOTE #) (LIST # #) (LIST :DOCUMENTATION "A BTree which supports secondary indices.") (QUOTE #) (QUOTE #) (QUOTE #))) #S(SB-KERNEL:LEXENV :FUNS NIL :VARS NIL :BLOCKS NIL :TAGS NIL :TYPE-RESTRICTIONS NIL :LAMBDA NIL :CLEANUP NIL :HANDLED-CONDITIONS NIL :DISABLED-PACKAGE-LOCKS NIL :POLICY ((SPEED . 1) (SPACE . 1) (SAFETY . 1) (SB-EXT:INHIBIT-WARNINGS . 1) (DEBUG . 1) (COMPILATION-SPEED . 1))))[:EXTERNAL]
  8: (SB-INT:EVAL-IN-LEXENV 2 (EVAL-WHEN (:LOAD-TOPLEVEL :EXECUTE) (LET (#) (SB-PCL::LOAD-DEFCLASS # # # # # # # #))) #S(SB-KERNEL:LEXENV :FUNS NIL :VARS NIL :BLOCKS NIL :TAGS NIL :TYPE-RESTRICTIONS NIL :LAMBDA NIL :CLEANUP NIL :HANDLED-CONDITIONS NIL :DISABLED-PACKAGE-LOCKS NIL :POLICY ((SPEED . 1) (SPACE . 1) (SAFETY . 1) (SB-EXT:INHIBIT-WARNINGS . 1) (DEBUG . 1) (COMPILATION-SPEED . 1))))[:EXTERNAL]
  9: (SB-INT:EVAL-IN-LEXENV 2 (DEFCLASS INDEXED-BTREE (BTREE) ((INDICES :ACCESSOR INDICES :INITFORM #) (INDICES-CACHE :ACCESSOR INDICES-CACHE :INITFORM # :TRANSIENT T)) (:METACLASS PERSISTENT-METACLASS) (:DOCUMENTATION "A BTree which supports secondary indices.")) #S(SB-KERNEL:LEXENV :FUNS NIL :VARS NIL :BLOCKS NIL :TAGS NIL :TYPE-RESTRICTIONS NIL :LAMBDA NIL :CLEANUP NIL :HANDLED-CONDITIONS NIL :DISABLED-PACKAGE-LOCKS NIL :POLICY ((SPEED . 1) (SPACE . 1) (SAFETY . 1) (SB-EXT:INHIBIT-WARNINGS . 1) (DEBUG . 1) (COMPILATION-SPEED . 1))))[:EXTERNAL]
  10: ("#'(LAMBDA NIL (LET # # ...))")
  11: ((SWANK-BACKEND:CALL-WITH-SYNTAX-HOOKS (T)) #<unused argument> #<unused argument> #<FUNCTION "CLOSURE" {99B893D}>)
  12: (SWANK:INTERACTIVE-EVAL "(defclass indexed-btree (btree)
  ((indices :accessor indices :initform (make-hash-table))
   (indices-cache :accessor indices-cache :initform (make-hash-table)
                  :transient t))
  (:metaclass persistent-metaclass)
  (:documentation \"A BTree which supports secondary indices.\"))
")
  13: (SB-INT:EVAL-IN-LEXENV 2 (SWANK:INTERACTIVE-EVAL "(defclass indexed-btree (btree)
  ((indices :accessor indices :initform (make-hash-table))
   (indices-cache :accessor indices-cache :initform (make-hash-table)
                  :transient t))
  (:metaclass persistent-metaclass)
  (:documentation \"A BTree which supports secondary indices.\"))
") #S(SB-KERNEL:LEXENV :FUNS NIL :VARS NIL :BLOCKS NIL :TAGS NIL :TYPE-RESTRICTIONS NIL :LAMBDA NIL :CLEANUP NIL :HANDLED-CONDITIONS NIL :DISABLED-PACKAGE-LOCKS NIL :POLICY ((SPEED . 1) (SPACE . 1) (SAFETY . 1) (SB-EXT:INHIBIT-WARNINGS . 1) (DEBUG . 1) (COMPILATION-SPEED . 1))))[:EXTERNAL]
  14: (SWANK::EVAL-FOR-EMACS (SWANK:INTERACTIVE-EVAL "(defclass indexed-btree (btree)
  ((indices :accessor indices :initform (make-hash-table))
   (indices-cache :accessor indices-cache :initform (make-hash-table)
                  :transient t))
  (:metaclass persistent-metaclass)
  (:documentation \"A BTree which supports secondary indices.\"))
") "\"ELEPHANT\"" 125)
  15: ("#'(LAMBDA NIL (LET # #))")
  16: (SWANK::CALL-WITH-REDIRECTED-IO #<SWANK::CONNECTION {9A9E831}> #<FUNCTION "#'(LAMBDA NIL (LET # #))" {977829D}>)
  17: (SWANK::HANDLE-REQUEST #<SWANK::CONNECTION {9A9E831}>)
  18: (SWANK::PROCESS-AVAILABLE-INPUT #<FILE-STREAM for "a constant string" {9A98B89}> #<FUNCTION "CLOSURE" {99B82D5}>)
  19: ("FLET SWANK::HANDLER")
  20: ("#'(LAMBDA (SWANK-BACKEND::_) SWANK-BACKEND::_ ...)" #<unused argument>)
</PRE>
</BODY>
</HTML>