Subject: *** PANIC: Unhandled exception!

From: [email-masked]
Date: Tue, 14 Sep 1993 06:22:40 -0700

Running on a DEC Alpha 500S with OSF/1 v1.2, MOO dies from time to time with
the result you see in the Subject line.

The stack dump is kinda useless, since at the point of an unhandled execption
a longjmp() has just finished.  It's also hard to tell exactly which exception
isn't being handled.

If anyone else has had any experience with MOO on this platform, any advice
would be appreciated.  I don't have the time right now to go in and printf()
the thing to death and try and figure out any more, but I should get around to
it eventually.

Thanks.

--joe

---

From: Pavel Curtis <[email-masked]>
Date: Tue, 14 Sep 1993 14:18:07 -0700

> the result you see in the Subject line.

There isn't much I can do for you without a lot more information, but I can
tell you some things that it might be useful.

There are only two exceptions used in the server right now, one for throwing
out of a call to gethostbyaddr() when a timer goes off (net_bsd_tcp.c) and
another for throwing out of the checkpointing code when some printf to the
database file fails, usually because of running out of disk space (storage.c).
There is only either zero or one entry on the handler stack at any time, for
the only exception, if any, that can be raised during that time.

Exceptions are raised pretty rarely in the server, so you could put copious
printf()s in exceptions.c/ES_RaiseException to show all of the state without
getting spammed by the output.

I suspect that the problem is a bug in the implementation of setjmp/longjmp in
OSF/1; I've found other bugs in their runtime system from time to time.

	Pavel