none
System.ServiceModel.CommunicationException: 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 RRS feed

  • Question

  • Our WCF application is deployed in 4 servers with NLB management. some times SMSvcHost crashes in the all the 4 servers consequently and WCF service stops. The event viewer shows the below mentioned log at that time. WCF service is using the net.TCP binding in it.

    SMSvcHost :An error occurred while dispatching a duplicated socket: this handle is now leaked in the process.

    Exception: System.TimeoutException: This request operation sent to "http://schemas.microsoft.com/2005/12/ServiceModel/Addressing/Anonymou"s did not receive a reply within the configured timeout (00:01:00).  The time allotted to this operation may have been a portion of a longer timeout.  This may be because the service is still processing the operation or because the service was unable to send a reply message.  Please consider increasing the operation timeout (by casting the channel/proxy to IContextChannel and setting the OperationTimeout property) and ensure that the service is able to connect to the client

    As per the recommendation from Microsoft, we applied the hotfix "http://support.microsoft.com/kb/2504602"  on all 4 web-servers 

    But after applying the hot fix, still the SMSvcHost crashes with different error in event viewer which is mentioned below.

    SMSvcHost : An error occurred while dispatching a duplicated socket: this handle is now leaked in the process.

    Source: System.ServiceModel.Activation.TcpWorkerProcess/29158541

    Exception: System.ServiceModel.CommunicationException: 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..


    This is the WCF web.config settings

    <bindings>
          <netTcpBinding>
            <binding name="NetTcpBinding_IArcService" portSharingEnabled="true" transferMode="Streamed" sendTimeout="00:10:00" maxReceivedMessageSize="2147483647" maxConnections="500">
              <readerQuotas maxDepth="32" maxStringContentLength="2147483647" maxArrayLength="2000000"
                  maxBytesPerRead="2147483647" maxNameTableCharCount="2000000" />
              <reliableSession />
              <security mode="None" />
            </binding>
          </netTcpBinding> 
     </bindings>
        <behaviors>
          <serviceBehaviors>
            <behavior>
              <!-- To avoid disclosing metadata information, set the value below to false and remove the metadata endpoint above before deployment -->
              <serviceMetadata httpGetEnabled="true"/>
              <!-- To receive exception details in faults for debugging purposes, set the value below to true.  Set to false before deployment to avoid disclosing exception information -->
              <serviceDebug includeExceptionDetailInFaults="true"/>
              <serviceThrottling maxConcurrentCalls="500" maxConcurrentSessions="100" maxConcurrentInstances="100" />
              <dataContractSerializer ignoreExtensionDataObject="true" maxItemsInObjectGraph="2147483647" />
            </behavior>
          </serviceBehaviors>
        </behaviors>
        <serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
      </system.serviceModel>
      <system.webServer>
        <modules runAllManagedModulesForAllRequests="true"/>

    Can anyone suggest us to fix this issue? Because after this issue we need to start the SMSvcHost manually on all 4 WCF service webservers to up the WCF service.

    Wednesday, March 6, 2013 5:14 AM

All replies