Sync Framework Timeout when Provisioning & Syncing

  • I have 2 SQL Server 2012 databases (at different sites) which have been synchronizing successfully for a number of months. I noticed they stopped synchronizing in mid-December with a timeout error. I am unaware of anything happening to the databases around this time.

    So far I tried:

    1. Copy one database to the other site and run the sync there (thus eliminating the VPN between the sites) - still getting timeout messages

    2. Copied both databases to my development machine which is more powerful than the machines used at the sites and tried to sync - timeout messages

    3. Decided that there must be some problem with the sync configuration so deprovisioned the 2 databases and then tried to provision the server database - get timeout messages.

    Error

    System.Data.SqlClient.SqlException (0x80131904): Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.

    The statement has been terminated. ---> System.ComponentModel.Win32Exception (0x80004005): The wait operation timed out

    at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)

    at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)

    at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)

    at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)

    at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async, Int32 timeout, Boolean asyncWrite)

    at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean asyncWrite)

    at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()

    at Microsoft.Synchronization.Data.SqlServer.SqlSyncTrackingTableHelper.PopulateFromBaseTable(SqlTransaction trans)

    at Microsoft.Synchronization.Data.SqlServer.SqlSyncTableProvisioning.Apply(SqlTransaction trans)

    at Microsoft.Synchronization.Data.SqlServer.SqlSyncScopeProvisioning.ApplyScope(SqlConnection connection)

    at Microsoft.Synchronization.Data.SqlServer.SqlSyncScopeProvisioning.ApplyInternal(SqlConnection connection)

    at Microsoft.Synchronization.Data.SqlServer.SqlSyncScopeProvisioning.Apply()

    at ProvisionServer.Program.Main(String[] args) in D:\Development\VS2010\PawnshopSync\ProvisionServer\Program.cs:line 132

    ClientConnectionId:68eb79b3-7d48-4df0-aa61-d8eded0d9146

    The line referred to above is this:

    serverProvision.Apply();

    So this uses the sync framework so I can't debug that.

    Any ideas what I can do to get to the bottom of this?

    I sort of solved by increasing my timeout on the synchronisation but would love to find out how to trouble shoot issues like this

Viewing post 1 (of 1 total)

You must be logged in to reply to this topic. Login to reply