[elephant-devel] trouble getting going (with open-store, ...)

Red Daly reddaly at gmail.com
Thu Oct 5 19:17:06 UTC 2006


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 at common-lisp.net
> > http://common-lisp.net/mailman/listinfo/elephant-devel
> >   




More information about the elephant-devel mailing list