I was finally able to recreate this in the repl (as opposed to seeing it in my error logs), so here is a trace:
The slot DB-BDB::INDICES-CACHE is unbound in the object #<BDB-INDEXED-BTREE oid:2>. [Condition of type UNBOUND-SLOT] Backtrace: 0: ((SB-PCL::FAST-METHOD SLOT-UNBOUND (T T T)) #<unavailable argument> #<unavailable argument> #<unavailable argument> #<BDB-INDEXED-BTREE oid:2> DB-BDB::INDICES-CACHE) 1: (SB-PCL::SLOT-UNBOUND-INTERNAL #<BDB-INDEXED-BTREE oid:2> 2) 2: ((SB-PCL::FAST-METHOD (SETF GET-VALUE) (T T DB-BDB::BDB-INDEXED-BTREE)) #<unavailable lambda list>) 3: ((LAMBDA (WORD)) "34766") 4: (SB-IMPL::MAP1 #<CLOSURE (LAMBDA #) {1003CA4ED9}> (("" "asa" "106007" "deny" "inbound" "udp" ...)) :LIST T) 5: (MAPCAR #<CLOSURE (LAMBDA #) {1003CA4ED9}> ("" "asa" "106007" "deny" "inbound" "udp" ...))[:EXTERNAL] 6: ((SB-PCL::FAST-METHOD INDEX-LOG-ENTRY (LOG-ENTRY)) #<unavailable argument> #<unavailable argument> #<LOG-ENTRY oid:6373>) 7: ((LAMBDA ())) 8: ((SB-PCL::FAST-METHOD ELEPHANT::EXECUTE-TRANSACTION (DB-BDB::BDB-STORE-CONTROLLER T)) #<unavailable argument> #<unavailable argument> #<unavailable argument> #<unavailable argument>)[:EXTERNAL] 9: (ADD-LOG-ENTRY ..) 10: (SB-INT:SIMPLE-EVAL-IN-LEXENV ..) And here is the code that sometimes causes the issue: (defmethod index-log-entry ((log-entry log-entry)) (let ((*store-controller* *syslog-controller*)) (let ((btree (get-from-root "log-entry-index" :sc *syslog-controller*))) (map-words #'(lambda (word) (unless (or (member word *superfluous-words* :test #'string-equal) (< (length word) 2)) (unless (existsp word btree) (setf (get-value word btree) (make-pset :sc *syslog-controller*))) (insert-item log-entry (get-value word btree)))) (text log-entry))))) If I drop and recreate the btree, everything runs smoothly (no errors) for a few hours and then the above error message starts showing up about half to three quarters of the time. Thanks again, Kevin Kevin Raison wrote: > I am seeing an intermittent error with 1.0 alpha when trying to write to > an indexed btree (using BerkeleyDB 4.7 as provided by Ubuntu's package > repositories): > > The slot DB-BDB::INDICES-CACHE is unbound in the object > #<BDB-INDEXED-BTREE oid:2> > > Within the same thread, sometimes this happens and sometimes I am able > to read and write to the btree. I am using sbcl 1.0.24 on 32 bit intel > linux. Is there something obvious that might help alleviate this or > should I provide more context? > > Thanks! > Kevin > > _______________________________________________ > elephant-devel site list > elephant-devel@common-lisp.net > http://common-lisp.net/mailman/listinfo/elephant-devel _______________________________________________ elephant-devel site list elephant-devel@common-lisp.net http://common-lisp.net/mailman/listinfo/elephant-devel