3

I've got a coreservice application that is failing on a production machine with the following error:

The socket connection was aborted. This could be caused by an error processing your message or a receive timeout being exceeded by the remote host, or an underlying network resource issue. Local socket timeout was '00:01:00'.

It works perfectly in my development environment :(

The exception details are:

Server stack trace: at System.ServiceModel.Channels.SocketConnection.ReadCore(Byte[] buffer, Int32 offset, Int32 size, TimeSpan timeout, Boolean closing) at System.ServiceModel.Channels.SocketConnection.Read(Byte[] buffer, Int32 offset, Int32 size, TimeSpan timeout) at System.ServiceModel.Channels.ClientFramingDuplexSessionChannel.SendPreamble(IConnection connection, ArraySegment`1 preamble, TimeoutHelper& timeoutHelper)
at System.ServiceModel.Channels.ClientFramingDuplexSessionChannel.DuplexConnectionPoolHelper.AcceptPooledConnection(IConnection connection, TimeoutHelper& timeoutHelper) at System.ServiceModel.Channels.ConnectionPoolHelper.EstablishConnection(TimeSpan timeout) at System.ServiceModel.Channels.ClientFramingDuplexSessionChannel.OnOpen(TimeSpan timeout) at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout) at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout) at System.ServiceModel.Channels.ServiceChannel.OnOpen(TimeSpan timeout)
at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout) at System.ServiceModel.Channels.ServiceChannel.CallOnceManager.CallOnce(TimeSpan timeout, CallOnceManager cascade) at System.ServiceModel.Channels.ServiceChannel.EnsureOpened(TimeSpan timeout) at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout) at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation) at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)

I've completed the steps in the following questions here, and this isn't fixing my issue:

I've also tried upping my config to insane timeout amounts, for example 5 hours, but the error is thrown as soon as i hit the page.

I've check the ServiceHost is working, rebooted the machine, sworn at my keyboard.

Has anyone any advice to help me fix this issue, or help debug further?

Thanks

EDIT:

I'm seeing in the Tridion event log a security issue (it doesn't seem massively related, but a lot of passwords expired on the server recently, which makes me suspect there may be some relation):

Unable to get list of SDL Tridion Content Manager items. You do not have permission to perform this action.

Error Code: 0x80040242 (-2147220926)

Call stack: Tridion.ContentManager.Security.AuthorizationManager.AssertAccessOnOrganizationalItemContents(OrganizationalItemData,Permissions,Rights) Tridion.ContentManager.ContentManagement.OrganizationalItem.GetListItemsData(OrganizationalItemItemsFilter) Tridion.ContentManager.ContentManagement.OrganizationalItem.GetListItemsStream(OrganizationalItemItemsFilter) Tridion.ContentManager.BLFacade.ContentManagement.OrganizationalItemFacade.GetListItemsXml(UserContext,String,ListFilter,ListColumnFilter) Tridion.ContentManager.BLFacade.ContentManagement.OrganizationalItemFacade.GetListData(UserContext,String,EnumListKind,ListColumnFilter,String) Category.GetListItems

2
  • have you checked and I'm assuming your config is dhcp mtu =1500 make suee the following are at optimal settings. your time to live number of hops utm value tcip value assure nat is working and upnp and for, the need for security in me run a tracert via elevated cmd line I don't know uour network confid adjust values for your nwtwork if its dsl ppoe MTU=1492 assure no conflicting ip addresses I glanced at your cat log and seen a timeout on server side it don't ound to serious Commented Nov 28, 2014 at 21:35
  • look at your aystem log type windows key and r then in run box typ mmc and look under swcurity for any failed audits from failed llof in attempts and after a second glance it just may be security issue Commented Nov 28, 2014 at 21:42

2 Answers 2

5

Some possible options from my archive:

  • Increase the COM + timeout setting
  • Increase value in Tridion.ContentManager.config

In addition to TcmNetTcpBinding, it may also be worth changing the values for Tridion.Web.UI.ContentManager.WebServices.WebHttpBindingConfig. For example:

<bindings> 
<netTcpBinding> 
<binding name="TcmNetTcpBinding" maxReceivedMessageSize="2147483647" receiveTimeout="00:10:00" sendTimeout="00:10:00" transactionFlow="true" transactionProtocol="WSAtomicTransaction11"> 
<readerQuotas maxArrayLength="10485760" maxBytesPerRead="5120" maxDepth="32" maxNameTableCharCount="81920" maxStringContentLength="10485760"/> 
</binding> 
</netTcpBinding> 
<webHttpBinding> 
<!-- For http --> 
<binding name="Tridion.Web.UI.ContentManager.WebServices.WebHttpBindingConfig" maxReceivedMessageSize="2097152" maxBufferSize="2097152" bypassProxyOnLocal="true" useDefaultWebProxy="true" receiveTimeout="00:10:00" sendTimeout="00:05:00"> 
<readerQuotas maxArrayLength="10485760" maxBytesPerRead="5120" maxDepth="32" maxNameTableCharCount="81920" maxStringContentLength="10485760"/> 
<security mode="TransportCredentialOnly"> 
<!-- For LDAP/SSO autheticated sites, change clientCredentialType to 'None', otherwise use 'Windows' --> 
<transport clientCredentialType="Windows"/> 
</security> 
</binding> 

Here are some additional timeout instructions for this issue you can apply as we discussed.

In %windir%\Microsoft.NET\Framework64\v4.0.30319\Config\machine.config and %windir%\Microsoft.NET\Framework\v4.0.30319\Config\machine.config

  • Change allowExeDefinition from "MachineOnly" to "MachineToApplication"
  • Before add the section below

In Tridion\config\Tridion.ContentManager.config - Provide a value for transactionTimeout in seconds

In Tridion\bin\TcmServiceHost.exe.config - change the CoreService_netTcpBinding binding

<binding name="CoreService_netTcpBinding" 
transactionFlow="true" 
transactionProtocol="WSAtomicTransaction11" 
maxReceivedMessageSize="2147483647" 
closeTimeout="00:30:00" 
openTimeout="00:30:00" 
receiveTimeout="00:30:00" 
sendTimeout="00:30:00"> 
  • Add the following before

in Tridion\web\WebUI\WebRoot\Web.config - change the CoreService_netTcpBinding binding

<binding name="TcmNetTcpBinding" 
maxBufferSize="2147483647" 
maxReceivedMessageSize="2147483647" 
maxBufferPoolSize="2147483647" 
closeTimeout="00:30:00" 
openTimeout="00:30:00" 
receiveTimeout="00:30:00" 
sendTimeout="00:30:00" 
transactionFlow="true" 
transactionProtocol="WSAtomicTransaction11"> 
1
  • 1
    John, can you comment on which part of Julian's suggestions solved your issue, or was it all of them? Commented Nov 30, 2014 at 6:34
2

The error message states that this could be caused by a timeout or an error processing your message. So the timeout might not be the issue here, but an underlying problem.

It might be a good idea to check your logs to see if you can find any other errors or warnings that might reveal the actual issue.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.