Hello list, I am not certain that this list is the right place to turn to with my question, but since it is related to a web server running a servlet application maybe someone has an idea about the cause (or maybe even a solution):
A web application running on IIS 5.0 w/ New Atlanta ServletExec 3.1 using Microsoft's JDBC drivers to connect to an MS SQL Server 2000 causes IIS' to eat 100% CPU when the database server, for any reason, is switched to another machine (the server is running in a cluster together with a second machine) or a query thread killed. There is sufficient load on the server to make it have at least one database connection open at most times. So it looks like somehow the web application doesn't like the database server "disappearing" while it is executing a query. An interesting phenomenon we observed: The web app is running on three web servers, when we killed a single query thread from one of them (which held a lock that caused all the others to wait, and, even though it was not deadlocked, somehow didn't finish and release its lock. The thread's query itself was a simple update on two fields in a single row, identified by primary key, so it couldn't have been a query that simply took long to execute due to being complex) on the database, all three servers decided to eat up their machine's CPU. Appears strange to me -- how did two independent web servers whose database threads continued and finished after the blocking one was killed get affected, when it wasn't their database query that "disappeared"? Unfortunately, the process monitor only shows IIS at 100%, without any indication whether it is the servlet engine/JVM that apparently gets caught in some loop, or whether it is IIS itself. Has anyone experienced anything similar? Or has anyone an idea of what might cause this strange behaviour, or how to make the servlets more robust against "database disappearance" in the middle of queries (we do watch out for SQLExceptions, of course, and handle them appropriately)? Any other ideas that might help? Thanks a lot in advance Best regards Michael ___________________________________________________________________________ To unsubscribe, send email to [EMAIL PROTECTED] and include in the body of the message "signoff SERVLET-INTEREST". Archives: http://archives.java.sun.com/archives/servlet-interest.html Resources: http://java.sun.com/products/servlet/external-resources.html LISTSERV Help: http://www.lsoft.com/manuals/user/user.html