divide by zero in sleep
Asa Hardcastle <[email protected]> Mon, 26 Jun 2006 12:09:17 -0400
| Newsgroups | gmane.comp.java.openjms.user |
|---|---|
| Message-ID | <[email protected]> |
Hello,
I am running openjms 0.7.6.1 on several mac os x Tiger machines
(running intel core duos). One is running the server and others are
using the client library. All three are receiving a java native
crash that can be tracked down to the "Clock.java" class, and more
specifically "sleep(_unsynchTicks);" in the run class.
public void run() {
while (true) {
try {
for (int i = 0; i < _synchEvery; ++i) {
sleep(_unsynchTicks);
synchronized (Clock.class) {
_clock += _unsynchTicks + _adjust;
}
}
synchronize();
} catch (Throwable exception) {
_log.error("Internal error in clock daemon",
exception);
}
}
}
What happens is that I get a fatal crash that kills the JVM and
reports the following in the java native crash log:
at java.lang.Thread.sleep(Native Method)
at org.exolab.jms.util.Clock.run(Clock.java:210)
in the java log I get:
Exception: EXC_ARITHMETIC (0x0003)
Codes: EXC_I386_DIV (divide by zero)
Apparently a PPC chip would not have a fatal error on a divide by zero.
This crash is intermittent and does not seem to follow any pattern,
other than it happens a few times a week.
Any help would be greatly appreciated.
thanks,
asa
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642