Tuesday, January 18, 2011

SRVE0133E: An error occurred while parsing parameters. java.net.SocketTimeoutException: Async operation timed out

You might have seen this error in your websphere environment.

[9/28/09 22:23:29:538 EST] 00000040 SRTServletReq E   SRVE0133E: 
An error occurred 
while parsing parameters. java.net.SocketTimeoutException:
 Async operation timed out
 at com.ibm.ws.tcp.channel.impl.AioTCPReadRequestContextImpl.
processSyncReadRequest
(AioTCPReadRequestContextImpl.java:157)
 at com.ibm.ws.tcp.channel.impl.TCPReadRequestContextImpl.read
(TCPReadRequestContextImpl.java:109)
 at com.ibm.ws.http.channel.impl.HttpServiceContextImpl.fillABuffer

As you can see this error will originate from Web Container’s http transport channel. And the reason for this error to come is Network delay. By default, in WebSphere application server, ConnectionTimeout will be set to 5 seconds for http transport channels. So if your network is slow, you may see this error in the logs

If you would like to change this timeout settings, follow these steps:
        • Application Servers -> serverA -> Web Container -> HTTP Transport -> Application Name
        • go to custom properties
        • Add these two parameters (where xx is the time in seconds)
        • ConnectionIOTimeOut=xx and ConnectionKeepAliveTimeout=xx
        • Repeat this for all servers, if your application is mapped to multiple servers.
        • Restart the server (s)