none
WCF HttpResponseStream.Write throws "The specified network name is no longer available" RRS feed

  • Question

  • I've been getting this issue for the last month or so and it has been getting worse and worst to the point that my service stops responding propperly for about 1 minute out of 30...

    I get the following exceptions

    "The specified network name is no longer available. This often indicates that the HTTP client has prematurely closed the underlying TCP connection."

    at System.ServiceModel.Channels.HttpOutput.ListenerResponseHttpOutput.ListenerResponseOutputStream.Write(Byte[] buffer, Int32 offset, Int32 count)
    at System.ServiceModel.Channels.HttpOutput.Send(TimeSpan timeout)
    at System.ServiceModel.Channels.HttpPipeline.EmptyHttpPipeline.SendReplyCore(Message message, TimeSpan timeout)
    at System.ServiceModel.Channels.HttpRequestContext.OnReply(Message message, TimeSpan timeout)
    at System.ServiceModel.Channels.RequestContextBase.Reply(Message message, TimeSpan timeout)
    at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.Reply(MessageRpc& rpc)

    "The specified network name is no longer available"

    at System.Net.HttpResponseStream.Write(Byte[] buffer, Int32 offset, Int32 size)
    at System.ServiceModel.Channels.BytesReadPositionStream.Write(Byte[] buffer, Int32 offset, Int32 count)
    at System.ServiceModel.Channels.HttpOutput.ListenerResponseHttpOutput.ListenerResponseOutputStream.Write(Byte[] buffer, Int32 offset, Int32 count)

    "The I/O operation has been aborted because of either a thread exit or an application request"

    at System.ServiceModel.Channels.HttpOutput.ListenerResponseHttpOutput.ListenerResponseOutputStream.Write(Byte[] buffer, Int32 offset, Int32 count)
    at System.ServiceModel.Channels.HttpOutput.Send(TimeSpan timeout)
    at System.ServiceModel.Channels.HttpPipeline.EmptyHttpPipeline.SendReplyCore(Message message, TimeSpan timeout)
    at System.ServiceModel.Channels.HttpRequestContext.OnReply(Message message, TimeSpan timeout)
    at System.ServiceModel.Channels.RequestContextBase.Reply(Message message, TimeSpan timeout)
    at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.Reply(MessageRpc& rpc)

    and

    "The semaphore timeout period has expired"

    at System.ServiceModel.Channels.HttpOutput.ListenerResponseHttpOutput.ListenerResponseOutputStream.Write(Byte[] buffer, Int32 offset, Int32 count)
    at System.ServiceModel.Channels.HttpOutput.Send(TimeSpan timeout)
    at System.ServiceModel.Channels.HttpPipeline.EmptyHttpPipeline.SendReplyCore(Message message, TimeSpan timeout)
    at System.ServiceModel.Channels.HttpRequestContext.OnReply(Message message, TimeSpan timeout)
    at System.ServiceModel.Channels.RequestContextBase.Reply(Message message, TimeSpan timeout)
    at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.Reply(MessageRpc& rpc)

    I've been looking at this from so many different angles that I'm now desperate... I've replaced the devices in between, I've played around with registry settings that manage the timeouts of the different connection states, I've played with WCF binding configurations, etc...

    I'm losing the will to live... Can anyone help me out?


    Thursday, November 19, 2015 8:02 PM

Answers

All replies