• sfchess
  • NEWBIE
  • 0 Points
  • Member since 2006

  • Chatter
    Feed
  • 0
    Best Answers
  • 0
    Likes Received
  • 0
    Likes Given
  • 7
    Questions
  • 4
    Replies
Has anyone encountered this error. I get it very random. It works sometimes and other times I get this error. The server that I am using to connect to salesforce.com is behind an Array Networks SSL accelerator.
Here is a stack trace of the error I get.

An unexpected error occurred on a receive. ---> System.IO.IOException: Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host. ---> System.Net.Sockets.SocketException: An existing connection was forcibly closed by the remote host
   at System.Net.Sockets.Socket.Receive(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags)
   at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)
   --- End of inner exception stack trace ---
   at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)
   at System.Net.FixedSizeReader.ReadPacket(Byte[] buffer, Int32 offset, Int32 count)
   at System.Net.Security._SslStream.StartFrameHeader(Byte[] buffer, Int32 offset, Int32 count, AsyncProtocolRequest asyncRequest)
   at System.Net.Security._SslStream.StartReading(Byte[] buffer, Int32 offset, Int32 count, AsyncProtocolRequest asyncRequest)
   at System.Net.Security._SslStream.ProcessRead(Byte[] buffer, Int32 offset, Int32 count, AsyncProtocolRequest asyncRequest)
   at System.Net.TlsStream.Read(Byte[] buffer, Int32 offset, Int32 size)
   at System.Net.PooledStream.Read(Byte[] buffer, Int32 offset, Int32 size)
   at System.Net.Connection.SyncRead(HttpWebRequest request, Boolean userRetrievedStream, Boolean probeRead)
   --- End of inner exception stack trace ---
   at System.Web.Services.Protocols.WebClientProtocol.GetWebResponse(WebRequest request)
   at System.Web.Services.Protocols.HttpWebClientProtocol.GetWebResponse(WebRequest request)
   at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
   at GotMarketing.Campaigner2F.SFConnector.sforce.SforceService.describeSObject(String sObjectType) in C:\PROJECTS\GOT2005\CRM\Code\CRM\GotMarketing.Campaigner2F.SFConnector\Web References\sforce\Reference.cs:line 269
   at GotMarketing.Campaigner2F.SFConnector.SalesForceConnector.DescribeObject(String tableName)

We recently move our synchronization from our staging environment, which seemed to be working fine to our production and now frequently I get this error when I try to call the SF API.  An existing connection was forcibly closed by the remote host. This happens on regular basis. The server has framework 1.1 and 2 running. There can be concurrent calls to different salesforce.com organizations. I have pasted the stack trace of the error I get.  Has anyone faced the same issue?



An unexpected error occurred on a receive. ---> System.IO.IOException: Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host. ---> System.Net.Sockets.SocketException: An existing connection was forcibly closed by the remote host
   at System.Net.Sockets.Socket.Receive(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags)
   at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)
   --- End of inner exception stack trace ---
   at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)
   at System.Net.FixedSizeReader.ReadPacket(Byte[] buffer, Int32 offset, Int32 count)
   at System.Net.Security._SslStream.StartFrameHeader(Byte[] buffer, Int32 offset, Int32 count, AsyncProtocolRequest asyncRequest)
   at System.Net.Security._SslStream.StartReading(Byte[] buffer, Int32 offset, Int32 count, AsyncProtocolRequest asyncRequest)
   at System.Net.Security._SslStream.ProcessRead(Byte[] buffer, Int32 offset, Int32 count, AsyncProtocolRequest asyncRequest)
   at System.Net.TlsStream.Read(Byte[] buffer, Int32 offset, Int32 size)
   at System.Net.PooledStream.Read(Byte[] buffer, Int32 offset, Int32 size)
   at System.Net.Connection.SyncRead(HttpWebRequest request, Boolean userRetrievedStream, Boolean probeRead)
   --- End of inner exception stack trace ---
   at System.Web.Services.Protocols.WebClientProtocol.GetWebResponse(WebRequest request)
   at System.Web.Services.Protocols.HttpWebClientProtocol.GetWebResponse(WebRequest request)
   at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
   at GotMarketing.Campaigner2F.SFConnector.sforce.SforceService.describeSObject(String sObjectType) in C:\PROJECTS\GOT2005\CRM\Code\CRM\GotMarketing.Campaigner2F.SFConnector\Web References\sforce\Reference.cs:line 269
   at GotMarketing.Campaigner2F.SFConnector.SalesForceConnector.DescribeObject(String tableName) in C:\PROJECTS\GOT2005\CRM\Code\CRM\GotMarketing.Campaigner2F.SFConnector\SFCommon.cs:line 125
I copy pasted the code from sforceExplorer to compress my requests to SF. The service is running on dotnet Framework 2 and I have EnableDecompression in my SF proxy. I need to compress all requests as well as responses. The problem I am having, whenever there is an error I dont get the error code, but an unhandled Web exception while debugging but not when running the application. Has anyone had the same problem? Is there a way around this or a fix?

When an update happens on a contact, what time zone is used to update LastModifiedDate field in the SF database. Is it in UTC ?
I am trying to do a synchronization service between salesforce and our server. On every run, I try to fetch only the modified items. I updated a lead and used the SForce explorer to get the LastModifiedDate. Then  I called getServerTimestamp There was 5 hours differnce between the 2 datetimes. Is there a way to get the right server time, so as to filter on the correct time? With the getServerTimestamp date, changes will be pciked up after 5 hours.
In reports, it is possible to filter by reference fields, with the operator starts with. How can this be achieved through the API. Like operators can not be used with reference fields.

In the reports query section, one of the values in the operator section for text fields is "does not contain". Is there a way to represent this in SOQL Syntax to call  from the API?

Has anyone encountered this error. I get it very random. It works sometimes and other times I get this error. The server that I am using to connect to salesforce.com is behind an Array Networks SSL accelerator.
Here is a stack trace of the error I get.

An unexpected error occurred on a receive. ---> System.IO.IOException: Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host. ---> System.Net.Sockets.SocketException: An existing connection was forcibly closed by the remote host
   at System.Net.Sockets.Socket.Receive(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags)
   at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)
   --- End of inner exception stack trace ---
   at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)
   at System.Net.FixedSizeReader.ReadPacket(Byte[] buffer, Int32 offset, Int32 count)
   at System.Net.Security._SslStream.StartFrameHeader(Byte[] buffer, Int32 offset, Int32 count, AsyncProtocolRequest asyncRequest)
   at System.Net.Security._SslStream.StartReading(Byte[] buffer, Int32 offset, Int32 count, AsyncProtocolRequest asyncRequest)
   at System.Net.Security._SslStream.ProcessRead(Byte[] buffer, Int32 offset, Int32 count, AsyncProtocolRequest asyncRequest)
   at System.Net.TlsStream.Read(Byte[] buffer, Int32 offset, Int32 size)
   at System.Net.PooledStream.Read(Byte[] buffer, Int32 offset, Int32 size)
   at System.Net.Connection.SyncRead(HttpWebRequest request, Boolean userRetrievedStream, Boolean probeRead)
   --- End of inner exception stack trace ---
   at System.Web.Services.Protocols.WebClientProtocol.GetWebResponse(WebRequest request)
   at System.Web.Services.Protocols.HttpWebClientProtocol.GetWebResponse(WebRequest request)
   at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
   at GotMarketing.Campaigner2F.SFConnector.sforce.SforceService.describeSObject(String sObjectType) in C:\PROJECTS\GOT2005\CRM\Code\CRM\GotMarketing.Campaigner2F.SFConnector\Web References\sforce\Reference.cs:line 269
   at GotMarketing.Campaigner2F.SFConnector.SalesForceConnector.DescribeObject(String tableName)
In the reports query section, one of the values in the operator section for text fields is "does not contain". Is there a way to represent this in SOQL Syntax to call  from the API?