Kenny, As described in http://developer.java.sun.com/developer/technicalArticles/Programming/Stackt race/...
"For busy programs: The best course of action you can take for busy programs is to generate frequent stack traces. This will narrow down the code path that is causing the errors, and you can then start your investigation from there." For "frequent", read 10 at 10 second intervals as a starting point. You could write a script that generates these "frequent" thread dumps for you. With "frequent" thread dumps you should be able to determine if James is always looking up MX records, as shown in the stacktrace you attached, or typically doing something else. Just to confirm, when you say "James is running above 90% CPU", what do you mean? Is the process that JVM on which James is running using 90% CPU or is the total CPU usage at 90%? If the latter, what other processes are increasing their CPU consumption? -- Steve > -----Original Message----- > From: Kenny Smith [mailto:[EMAIL PROTECTED] > Sent: 27 August 2003 00:33 > To: James Developers List > Subject: High CPU Load Followup > > > Hi all, > > Thanks to a pointer from Steve Brewin I was able to get some thread > dumps while James is running above 90% CPU. I took 4 thread dumps: 3 > within a minute and 1 an hour later. It looks like there are > 4 threads > that are runnable. 3 that are waiting for socket connections > (I assume > that's SMTP, POP, and the Admin Manager), the last 1 is doing DNS for > remote delivery. Here's the stack: --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]