Could be some odd case in asdf. When you open a store, the appropriate asdf file is called to load the backend code if it isn't loaded. Try loading the :elephant system instead of :ele-bdb, then doing open-store and see what happens.
I'll test this on SBCL later tonight. Ian Red Daly wrote: > Thank you for the quick and helpful response :). > > With your corrections, all tests passed and I seem to be able to open a > functioning store! However, life is not perfect yet. The main problem > I seem to be facing right now is when I attempt to load elephant using > my slime environment (when calling (asdf:operate > 'asdf:load-op :ele-bdb)). For some reason, I lose my lisp connection. > A sample transcript of a common slime session can be found here: > http://paste.lisp.org/display/27406 > > This is the point of failure of a similar session: > (let ((store-spec '(:BDB "store"))) > (ele:open-store store-spec)) > ; loading system definition from > ; /home/red/code/edufacebook/elephant-0.6.0/ele-bdb.asd into > ; #<PACKAGE "ASDF1189"> > ; registering #<SYSTEM ELE-BDB {B6DF6B9}> as ELE-BDB > --- > Lisp connection closed unexpectedly: exited abnormally with code 256 > > This is perhaps a slime/sbcl/other bug, but so far I haven't seen > anything like it, and since slime is so popular (and useful) perhaps > others have seen this bug or know what to do about it. > > In the raw sbcl REPL I do not seem to have a problem, but only when I > attempt to load ele-bdb. > > If you would like, I can post the problems I had with CMUCL when I have > more time. (off the top of my head, I remember package locking problems > and also a problem loading cl-base64). at the moment I am more > concerned with getting a working system in SBCL with Slime, but I would > like to help make elephant better however I can. > > -red daly > > > On Thu, 2006-10-05 at 09:01 -0400, Ian Eslick wrote: > >> I'm sorry if the website hasn't been updated (Robert, can you check >> this?), but the tutorial should be updated to reflect the new (as of >> 0.6.0) open-store protocol, which requires specification of the type of >> backend you'll be using. A specification is a list of two elements; a >> backend type specification [:bdb, :clsql] and backend-specific store >> information: >> >> (open-store '(:bdb "/home/user/db/testdb")) >> (open-store '(:clsql (:sqlite3 "sqlite3-test.db")) >> (open-store '(:clsql (:postgresql "localhost.localdomain" "test" >> "postgres" ""))) >> >> The tests should print a long list of test names, then return T. >> To run the tests you need to follow the comments in elephant-tests.lisp: >> >> ;; >> ;; GUIDE TO TESTING >> ;; >> ;; 1) Set *default-spec* to the above spec of your choice >> ;; 2) Call (do-backend-tests) to test the standard API >> ;; 3) To test migration: (do-migration-tests *default-spec* >> <second-spec>) inserting a second >> ;; spec, typically a bdb spec or create another instance of a sql db >> depending on >> ;; your configuration >> ;; 4) A backend is green if it passes do-backend-tests and can >> succesfully be >> ;; used as spec1 or spec2 argument in the migration test >> ;; >> >> To set *default-spec* you need to do something like: >> >> (setq *default-spec* *testbdb-spec*) >> >> or >> >> (setq *default-spec* *testsqlite3-spec*) >> >> Can you list the various problems you had trying to get the system to >> run? We're working on useability for the next release and want to fix >> as many of the inconveniences as possible. >> >> Thank you, >> Ian >> >> Red Daly wrote: >> >>> I have been trying to get Elephant up and running for a few days with >>> little luck. I have tried CMUCL and SBCL, with different unsuccessful >>> outcomes. During my latest attempt on SBCL, I seem to be able to call >>> the following two lines without errors: >>> (asdf:operate 'asdf:load-op :elephant) >>> (asdf:operate 'asdf:load-op :ele-bdb) >>> >>> I then run the tests... >>> (asdf:operate 'asdf:load-op :elephant-tests) >>> (in-package :ele-tests) >>> (setf *default-spec* "bdb") >>> (do-backend-tests) >>> >>> do-backend-tests returns NIL.. which I interpret to be success? >>> >>> >>> however, I am unable to open a store according to the instructions in >>> the two tutorials on the common-lisp.net project site. Here is an >>> example attempt: >>> >>> * (open-store "store") >>> >>> debugger invoked on a SIMPLE-ERROR in thread >>> #<THREAD "initial thread" {A7B93E1}>: >>> The assertion (CONSP ELEPHANT::SPEC) failed. >>> >>> Type HELP for debugger help, or (SB-EXT:QUIT) to exit from SBCL. >>> >>> restarts (invokable by number or by possibly-abbreviated name): >>> 0: [CONTINUE] Retry assertion. >>> 1: [ABORT ] Exit debugger, returning to top level. >>> >>> (SB-KERNEL:ASSERT-ERROR (CONSP ELEPHANT::SPEC) NIL NIL) >>> 0] backtrace >>> >>> 0: (SB-KERNEL:ASSERT-ERROR (CONSP ELEPHANT::SPEC) NIL NIL) >>> 1: (OPEN-STORE "store" :RECOVER NIL :RECOVER-FATAL NIL :THREAD T) >>> 2: (SB-INT:EVAL-IN-LEXENV (OPEN-STORE "store") #<NULL-LEXENV>) >>> 3: (SB-EXT:INTERACTIVE-EVAL (OPEN-STORE "store")) >>> 4: (SB-IMPL::REPL-FUN NIL) >>> 5: ((LAMBDA ())) >>> 6: ((LAMBDA ())) >>> 7: (SB-IMPL::%WITH-REBOUND-IO-SYNTAX #<CLOSURE (LAMBDA #) {A7F28FD}>) >>> 8: (SB-IMPL::TOPLEVEL-REPL NIL) >>> 9: (SB-IMPL::TOPLEVEL-INIT) >>> 10: ((LABELS SB-IMPL::RESTART-LISP)) >>> >>> >>> I would appreciate any help in getting elephant up and running. I am >>> running SBCL 0.9.8, ubuntu dapper, and bdb 4.3 (apt-installable >>> version). I will gladly supply more information to help determine the >>> error of my ways. I can't wait to try out elephant! >>> >>> Thanks sincerely, >>> red daly >>> >>> _______________________________________________ >>> 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 > _______________________________________________ elephant-devel site list elephant-devel@common-lisp.net http://common-lisp.net/mailman/listinfo/elephant-devel