This post has been republished via RSS; it originally appeared at: IIS Support Blog articles.
While navigating the pages in an application, the page was spinning for about a minute and giving a timeout error. This application utilizes a WCF service.
We collected a dump file from both the ASP.NET page and WCF service while the page was spinning. Here are the exceptions we saw in the dump files:
Exception Type : System.Net.Sockets.SocketExceptionMessage: An existing connection was forcibly closed by the remote hostSystem.ServiceModel.Channels.SocketConnection.Write(Byte[], Int32, Int32, Boolean, System.TimeSpan)Exception Type : System.ServiceModel.CommunicationExceptionMessage: The server did not provide a meaningful reply; this might be caused by a contract mismatch, a premature session shutdown or an internal server error.System.Runtime.AsyncResult.End[[System.__Canon, mscorlib]](System.IAsyncResult)System.ServiceModel.Activation.WorkerProcess.EndDispatchSession(System.IAsyncResult)Exception Type : System.IO.PipeExceptionMessage: There was an error reading from the pipe: The pipe has been ended. (109, 0x6d).System.ServiceModel.Channels.PipeConnection.OnAsyncReadComplete(Boolean, Int32, Int32)
Solution
For this website, Idle Time-out Action was set to “Suspend”. This option isn’t always helpful. I don’t recommend using it.
Setting Idle Time-out Action to Terminate solved the issue. Website started displaying pages.
If you like to find out who change the application pool settings, check this post out.