Cocoon 2.1.5.1
Jetty 4.2.15
JVM 1.4.1
OS X Server 10.3
On Sep 17, 2004, at 12:35 PM, Mark Lundquist wrote:
OK... this is weird!
My Cocoon app uses ImageReader, and the images weren't displaying. It turns out the call to com.sun.image.codec.jpeg.JPEGImageDecoder.decodeAsBufferedImage() in ImageReader.processStream() crashes the JVM! It crashes hard, immediately and silently (no error messages). What faked me out was that I'm running Cocoon under control of daemontools, so as soon as it crashed, supervise would start up a new one right away! But I've debugged ImageReader.processStream() and I can see it go down the black hole.
Now, get this... if I just invoke Cocoon by hand instead of using supervise, it works fine!
I use a wrapper script that invokes cocoon.sh from the Cocoon build, and I've instrumented this wrapper script to dump out the environment and the process limits. They're identical, whether invoked by hand or by supervise. So that's not the difference. The command line invoking the JVM as reported by 'ps' is also the same for both cases.
So, any ideas about what the problem could possibly be, or where else I might look? Any daemontools experts out there?
It would seem that somehow, I am seeing a JVM bug that occurs under conditions that only obtain for me when running under "supervise", but I can't imagine what those conditions might be...
~mark
P.S. — I told you it was weird! :-)
