The operation has timed out

The operation has timed out

Old forum URL: forums.lhotka.net/forums/t/5650.aspx


ward0093 posted on Wednesday, October 22, 2008

O.K.. this one has me completely stumpped... we have a program that "Synchronizes" SQL Databases between machines... to handle "Offline" modes.

We created a business object to hold data from the client local table (a table row per BO) and then save the BO to a remote server (with its SQL database) using CSLA and Remoting.

The first client we rolled out to works great... 9 client machines all sync'ing every 30 seconds to a single server...

We just rolled out a new client with a new server... this client has 4 local machines sync'ing to a single server...

When more than one client is sync'ing... i keep getting a "The operation has timed out" error and the data is not getting uploaded....  CAN SOMEONE PLEASE HELP ME OUT???? PLEASE????

it works on one server but not this new server (i assume it is a server issue with remoting)

 


Event Type: Error
Event Source: productEvents
Event Category: (27)
Event ID: 1000
Date:  10/21/2008
Time:  10:25:42 AM
User:  N/A
Computer: POS1
Description:
Error occurred during DOWNLOAD OF DATA FROM SERVER: Section PhonesAndPhoneTypes; Table PhoneTypes
Unable to complete this section

----  BASE ERROR MESSAGE  ----
The operation has timed out.
Error occurred in [SyncDatabases: SyncActiveTable] method.

----  EXCEPTION STACK     ----

Server stack trace:
   at System.Net.ConnectStream.Read(Byte[] buffer, Int32 offset, Int32 size)
   at System.IO.BufferedStream.Read(Byte[] array, Int32 offset, Int32 count)
   at System.IO.BinaryReader.ReadString()
   at System.Runtime.Serialization.Formatters.Binary.__BinaryParser.ReadString()
   at System.Runtime.Serialization.Formatters.Binary.BinaryConverter.ReadTypeInfo(BinaryTypeEnum binaryTypeEnum, __BinaryParser input, Int32& assemId)
   at System.Runtime.Serialization.Formatters.Binary.BinaryObjectWithMapTyped.Read(__BinaryParser input)
   at System.Runtime.Serialization.Formatters.Binary.__BinaryParser.ReadObjectWithMapTyped(BinaryHeaderEnum binaryHeaderEnum)
   at System.Runtime.Serialization.Formatters.Binary.__BinaryParser.Run()
   at System.Runtime.Serialization.Formatters.Binary.ObjectReader.Deserialize(HeaderHandler handler, __BinaryParser serParser, Boolean fCheck, Boolean isCrossAppDomain, IMethodCallMessage methodCallMessage)
   at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize(Stream serializationStream, HeaderHandler handler, Boolean fCheck, Boolean isCrossAppDomain, IMethodCallMessage methodCallMessage)
   at System.Runtime.Remoting.Channels.CoreChannel.DeserializeBinaryResponseMessage(Stream inputStream, IMethodCallMessage reqMsg, Boolean bStrictBinding)
   at System.Runtime.Remoting.Channels.BinaryClientFormatterSink.SyncProcessMessage(IMessage msg)

Exception rethrown at [0]:
   at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
   at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
   at Csla.Server.IDataPortalServer.Fetch(Type objectType, Object criteria, DataPortalContext context)
   at Csla.DataPortalClient.RemotingProxy.Fetch(Type objectType, Object criteria, DataPortalContext context) in D:\Development\product.Projects.2008\Csla.v2.1\DataPortal\Client\RemotingProxy.vb:line 113
   at Csla.DataPortal.Fetch(Type objectType, Object criteria) in D:\Development\product.Projects.2008\Csla.v2.1\DataPortal\Client\DataPortal.vb:line 184
   at Csla.DataPortal.Fetch[T](Object criteria) in D:\Development\product.Projects.2008\Csla.v2.1\DataPortal\Client\DataPortal.vb:line 134
   at product.VRM.BusinessCore.Synchronization.DownloadTable.GetRoot(TableList tableName, Nullable`1 requestedMachineID, SmartDateTime recordedStartDate, Nullable`1 startingRow, Nullable`1 endingRow, Boolean isCleanDownload) in D:\Development\product.Projects.2008\product.VRM.BusinessCore.v2.0\Synchronization\DownloadTable.Construction.vb:line 17
   at product.VRM.BusinessCore.Synchronization.SyncDatabases.SyncActiveTable(BackgroundWorker bgw, DoWorkEventArgs e) in D:\Development\product.Projects.2008\product.VRM.BusinessCore.v2.0\Synchronization\SyncDatabases.vb:line 374
   at product.VRM.BusinessCore.Synchronization.SyncDatabases.SyncActiveTable(BackgroundWorker bgw, DoWorkEventArgs e) in D:\Development\product.Projects.2008\product.VRM.BusinessCore.v2.0\Synchronization\SyncDatabases.vb:line 440
   at product.VRM.BusinessCore.Synchronization.SyncDatabases.SyncDatabase(BackgroundWorker bgw, DoWorkEventArgs e) in D:\Development\product.Projects.2008\product.VRM.BusinessCore.v2.0\Synchronization\SyncDatabases.vb:line 505

 

For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

ward0093 replied on Friday, October 24, 2008

well... we figured it out... and I thought I would post it here in case someone else needs the answer..

the Server which has SQL Server 2005 Express running was only using "Shared Memory" and not the other three (Name Pipes, TCP, the other one).... and so when more than one computer was connecting to it (via the CSLA/.NET Remoting Portal)... they would fight over a connection to the database.  Once we disabled "Shared Memory" and enabled the other three... everything seems to be working perfectly...

just thought someone out there would like to know this.

ward0093

Copyright (c) Marimer LLC