Discussion:
Causing an exception rather than calling the debugger
Blake McBride
2018-04-30 23:11:34 UTC
Permalink
Hi,

I embedded ABCL in an app some years ago. When an error occurred, ABCL
threw an exception. It did what I want.

Today I upgraded to the latest jar and I am experiencing a different
behavior. When an error occurs ABCL enters a debug REP loop. Calling a
REP loop on error is perfect for interactive use but not workable in an
embedded situation.

I'm hoping there is a simple way for me to change this behavior. Any help
is greatly appreciated.

Thanks.

Blake McBride
Vibhu Mohindra
2018-05-01 12:44:02 UTC
Permalink
Hi Blake,

I, too, have some Lisp code embedded in Java code. I investigated this
issue in the following three posts beneath:
https://mailman.common-lisp.net/pipermail/armedbear-devel
titled, "disabling debugger in production"

/2016-June/003690.html
/2016-July/003692.html
/2017-April/003837.html

My current solution is to call the installDebuggerHook() function
described in the first post. And also to install the error() function as
described at the bottom of the last post. But as that post says, this
solution isn't perfect.

Vibhu
Blake McBride
2018-05-02 14:39:44 UTC
Permalink
Thanks. That fixed my problem. This is an important issue.

I am putting together a system that provides microservices in Lisp. I'll
be making it public when done.

Without this fix, a bug in a microservice kills the whole thing thus
eliminating the whole value of a microservice.

It would be great to have a formal solution incorporated.

Thanks!

Blake McBride
Post by Vibhu Mohindra
Hi Blake,
I, too, have some Lisp code embedded in Java code. I investigated this
https://mailman.common-lisp.net/pipermail/armedbear-devel
titled, "disabling debugger in production"
/2016-June/003690.html
/2016-July/003692.html
/2017-April/003837.html
My current solution is to call the installDebuggerHook() function
described in the first post. And also to install the error() function as
described at the bottom of the last post. But as that post says, this
solution isn't perfect.
Vibhu
Loading...