[elephant-devel] Help with an error on app startup/initialization

Yarek Kowalik yarek.kowalik at gmail.com
Thu Dec 11 21:50:53 UTC 2008


BDB 4.5 for back-end.

I'm using elephant-unstable, pulled last week.

I'm elephant this via Weblocks, so I'm assuming the store is open by the
time the init-session for Weblocks app is called. Maybe I should check on
that - it's possible that the store is not in fully open state?

Yarek

On Thu, Dec 11, 2008 at 1:19 PM, Ian Eslick <eslick at media.mit.edu> wrote:

> Which version of elephant are you using?
> Which backend are you using?  If BDB, which version?
>
> I presume *store-controller* open and reachable from the package you
> are in?
>
> Looks like the elephant store isn't in the proper state (e.g. was
> closed and *store-controller* was not zeroed out).
>
> On Dec 11, 2008, at 1:56 PM, Yarek Kowalik wrote:
>
> > I've converted my weblocks app to use elephant.  One of the first
> > things I do is to initialize some variables.  One of the variables
> > is a "demo" item, that I use as a placeholder until the user choses
> > something more specific.  I'm having trouble initializing the
> > dummy.  Here is my code:
> >
> > (defun init-dummy-item ()
> >   (let* ((ref-type 0)
> >          (ref-id "dummy-item"))
> >     (setf *dummy-item*
> >           (unless-use (awhen (elephant:get-instances-by-value
> > 'product-item 'reference-id ref-id)
> >                         (find-if (lambda (item)
> >                                    (eql (product-item-reference-type
> > item) ref-type))
> >                                  it))
> >                       (make-instance
> >                        'product-item
> >                        :reference-type    ref-type
> >                        :reference-id    ref-id
> >                        :title        "No Item selected"
> >                        :url        "/pub/static/dummy.html"
> >                        :image-url    "/pub/images/dummy.png")))))
> >
> > (The UNLESS-USE macro simply does unless, and if results are nil
> > uses the second sexp.)
> >
> > The problem is that I get an error (see trace below) when calling
> > GET-INSTANCES-BY-VALUE.  What am I doing wrong?
> >
> > The nearest that I can gather is that GET-VALUE is called with the
> > secondd argument as  NIL, but it's supposed to be something
> > reasonable, i.e a controller-index-table held by the controler.  For
> > whatever raeson that's NIL.   What's the deal here?  Am I not alowed
> > to call the get-instances-by-* methods until I create at least one
> > item for each class I'm querying about?
> >
> > Yarek
> >
> > THE ERROR:
> >
> > There is no applicable method for the generic function
> >   #<STANDARD-GENERIC-FUNCTION ELEPHANT:GET-VALUE (3)>
> > when called with arguments
> >   ((FASHION-ORIGAMI::PRODUCT-ITEM
> >     . FASHION-ORIGAMI::REFERENCE-ID)
> >    NIL).
> >    [Condition of type SIMPLE-ERROR]
> >
> > Restarts:
> >  0: [TERMINATE-THREAD] Terminate this thread (#<THREAD "hunchentoot-
> > worker-4" RUNNING {10029A0321}>)
> >
> > Backtrace:
> >   0: ((LAMBDA (SWANK-BACKEND::DEBUGGER-LOOP-FN)) #<FUNCTION (LAMBDA
> > #) {1003F6A4C9}>)
> >   1: (SWANK::DEBUG-IN-EMACS #<SIMPLE-ERROR {1002E3A1A1}>)
> >   2: ((LAMBDA (SWANK-BACKEND::HOOK SWANK-BACKEND::FUN)) #<FUNCTION
> > SWANK:SWANK-DEBUGGER-HOOK> #<CLOSURE (LAMBDA #) {1002E3A9D9}>)
> >   3: (SWANK::CALL-WITH-REDIRECTED-IO #<SWANK::CONNECTION
> > {10037B86D1}> #<CLOSURE (LAMBDA #) {1002E3A9F9}>)
> >   4: (SWANK::CALL-WITH-CONNECTION #<SWANK::CONNECTION {10037B86D1}>
> > #<CLOSURE (LAMBDA #) {1002E3A9D9}>)
> >   5: (SWANK:INVOKE-SLIME-DEBUGGER #<SIMPLE-ERROR {1002E3A1A1}>)
> >   6: ((LAMBDA (SWANK-BACKEND::HOOK SWANK-BACKEND::FUN)) #<FUNCTION
> > SWANK:SWANK-DEBUGGER-HOOK> #<CLOSURE (LAMBDA #) {1002E3A999}>)
> >   7: (INVOKE-DEBUGGER #<SIMPLE-ERROR {1002E3A1A1}>)
> >   8: (INVOKE-DEBUGGER #<SIMPLE-ERROR {1002E3A1A1}>)[:EXTERNAL]
> >   9: ((SB-PCL::FAST-METHOD HUNCHENTOOT:MAYBE-INVOKE-DEBUGGER (T))
> > #<unavailable argument> #<unavailable argument> #<SIMPLE-ERROR
> > {1002E3A1A1}>)
> >  10: (SIGNAL #<SIMPLE-ERROR {1002E3A1A1}>)[:EXTERNAL]
> >  11: (ERROR #<SIMPLE-ERROR {1002E3A1A1}>)[:EXTERNAL]
> >  12: ((FLET #:LAMBDA43) #<SIMPLE-ERROR {1002E3A1A1}>)
> >  13: ((FLET #:LAMBDA43) #<SIMPLE-ERROR {1002E3A1A1}>)[:EXTERNAL]
> >  14: (SIGNAL #<SIMPLE-ERROR {1002E3A1A1}>)[:EXTERNAL]
> >  15: (ERROR "~@<There is no applicable method for the generic
> > function ~2I~_~S~\n          ~I~_when called with arguments
> > ~2I~_~S.~:>")[:EXTERNAL]
> >       Locals:
> >         SB-DEBUG::ARG-0 = 3
> >         SB-DEBUG::ARG-1 = "~@<There is no applicable method for the
> > generic function ~2I~_~S~\n      ..
> >  16: ((SB-PCL::FAST-METHOD NO-APPLICABLE-METHOD (T)) #<unavailable
> > argument> #<unavailable argument> #<STANDARD-GENERIC-FUNCTION
> > ELEPHANT:GET-VALUE (3)>)[:EXTERNAL]
> >       Locals:
> >         SB-DEBUG::ARG-0 = 5
> >         SB-DEBUG::ARG-1 = :<NOT-AVAILABLE>
> >         SB-DEBUG::ARG-2 = :<NOT-AVAILABLE>
> >         SB-DEBUG::ARG-3 = #<STANDARD-GENERIC-FUNCTION ELEPHANT:GET-
> > VALUE (3)>
> >  17: (ELEPHANT::ENSURE-SLOT-DEF-INDEX #<unavailable argument>
> > #<unavailable argument>)
> >       Locals:
> >         SB-DEBUG::ARG-0 = :<NOT-AVAILABLE>
> >         SB-DEBUG::ARG-1 = :<NOT-AVAILABLE>
> >  18: ((SB-PCL::FAST-METHOD ELEPHANT:FIND-INVERTED-INDEX
> > (ELEPHANT:PERSISTENT-METACLASS T)) #<unavailable argument>
> > #<unavailable argument> #<unavailable argument> #<unavailable
> > argument>)[:EXTERNAL]
> >       Locals:
> >         SB-DEBUG::ARG-0 = :<NOT-AVAILABLE>
> >         SB-DEBUG::ARG-1 = :<NOT-AVAILABLE>
> >         SB-DEBUG::ARG-2 = :<NOT-AVAILABLE>
> >         SB-DEBUG::ARG-3 = :<NOT-AVAILABLE>
> >         SB-DEBUG::ARG-4 = :<NOT-AVAILABLE>
> >  19: (ELEPHANT:MAP-INVERTED-INDEX #<unavailable argument>
> > #<unavailable argument> #<unavailable argument>)[:EXTERNAL]
> >       Locals:
> >         SB-DEBUG::ARG-0 = :<NOT-AVAILABLE>
> >         SB-DEBUG::ARG-1 = :<NOT-AVAILABLE>
> >         SB-DEBUG::ARG-2 = :<NOT-AVAILABLE>
> >         SB-DEBUG::ARG-3 = :<NOT-AVAILABLE>
> >  20: (FASHION-ORIGAMI::INIT-DUMMY-ITEM)
> >       Locals:
> >         #:G137 = :<NOT-AVAILABLE>
> >         ANAPHORA:IT = :<NOT-AVAILABLE>
> >
> >
> >
> > _______________________________________________
> > elephant-devel site list
> > elephant-devel at common-lisp.net
> > http://common-lisp.net/mailman/listinfo/elephant-devel
>
>
> _______________________________________________
> elephant-devel site list
> elephant-devel at common-lisp.net
> http://common-lisp.net/mailman/listinfo/elephant-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/elephant-devel/attachments/20081211/2c24455b/attachment.html>


More information about the elephant-devel mailing list