Need help diagnosing WCF timeout exception

K

Keith

Hello,

I have a Windows Service-hosted WCF service that occasionally throws an
timeout exception, or something that looks like one. The call chain looks
like this:

Client->WCF Service->COM Server->COM App

The exception seems to appear as the call to the service is completing.
Interestingly, these exceptions do not seem to affect the tasks the service
is performing at the time of the error. If the errors are ignored all
subsequent dependent actions are successful.

The exception message is:

The maximum retry count has been exceeded with no response from
the remote endpoint. The reliable session was faulted. This is
often an indication that the remote endpoint is no longer available.

The inner exception says:

The HTTP request to
'http://xpsp2client:8000/CubularityServies/CuIWfcService' has
exceeded the allotted timeout of 00:01:00. The time allotted to this
operation may have
been a portion of a longer timeout.

I also occasionally see an exception claiming that I've exceeded the
inactivityTimeout of 00:10:00.

OK. When I started seeing these I set all the timeout values I could find
to 00:20:00 and the behavior was not affected. I'm setting the following
timeouts in the .config file:

For <binding> :
receiveTimeout
sendTimeout
openTimeout
closeTimeout

For <reliableSession> :
inactivityTimeout

For <host> :
openTimeout
closeTimeout

I'm wondering if there are timeout settings that I'm missing. I don't have
any values less than 20min yet I get errors telling me I've exceeded
timeouts of 1 and 10 minutes. I've used Intellisense to poke around and try
to find properties that aren't obvious in the WCF Config Editor, but haven't
turned up anything.

Any suggestions?

Keith

P.S. I've turned on verbose logging for the service and am trying to
understand them. Some exceptions are shown in the logs but not enough
detail is given to pinpoint the source of these faliure.
 
S

sloan

Number1 thing to learn with debugging WCF.

<system.diagnostics>
<trace autoflush="true" />
<sources>
<source name="System.ServiceModel"
switchValue="Information, ActivityTracing"<listeners>
<add name="sdt"
type="System.Diagnostics.XmlWriterTraceListener"
initializeData= "c:\wutemp\Host1.svclog" />
</listeners>
</source>
</sources>
</system.diagnostics>


and put one in for the client side as well.

THEN

Run this
"C:\Program Files\Microsoft SDKs\Windows\v6.0\Bin\SvcTraceViewer.exe"

If you google
SvcTraceViewer.exe
you'll find more info as well.


As you browse host1.svclog (just a name I gave my file) you'll see more
detailed exception informaiton.
 
K

Keith

Thanks for the reply, but I already have all that set up. My .svclog gets
about 1MB of output everytime I run the operation that causes the exception,
just not really anything helpful.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top