I have a complex webMethods service that facilitates execution of SQL Scripts with a Sybase database. I have no problems running this service from webMethods Developer (4.6). When I hook up a scheduler to this service in the Integration Server (4.6), and after successfully processing a few SQL scripts, I get an exception - java.net.SocketException: JVM_recv in socket input stream read (code=10004).
Does anyone know or experience facing a similar anomaly? If so, is there a work around or a patch that I can install? It seems to be some thread management issue on webMethods part, but maybe I’m missing something.
This might happen if the connection pooling is not handled properly.
Its better to have global connection pooling and set the following properties accordingly.
watt.server.db.blocktimeout
watt.server.db.maintainminimum
watt.server.db.connectionCache=server
watt.server.db.testSQL=select * from dual
Also the time out for the connection should be less than the idle time out of firewall or proxy server if any in between.
If there is a firewall in between, it has its idle time out, might be the case that the connection is time out by it.
When this error occurs take a thread dump and see where the error occurs. When connection pooling is not handled properly there are high chances of thread waiting for a connection for a long time and time out.
The stack trace can reveal some reasons for socket exceptions.