HomeSupercharger KBHow ToHow to fix SqlException: Execution Timeout Expired errors

5.25. How to fix SqlException: Execution Timeout Expired errors

SQL Server connections timeout if the collectors are far from the manager.

Error:

You might get an error message like this:

An error has occurred. Windows will automatically restart the service. Supercharger Fatal Exception caught in:checkInWithManagerLoop C:\agent\_work\7\s\Mtg.Supercharger.Core\Controller\CommandEngine.cs line:105
System.Data.Entity.Infrastructure.RetryLimitExceededException: Maximum number of retries (3) exceeded while executing database operations with 'SuperchargerSQLExecutionStrategy'. See inner exception for the most recent failure.
---> System.Data.Entity.Core.UpdateException: An error occurred while updating the entries. See the inner exception for details.
---> System.Data.SqlClient.SqlException: Execution 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: The wait operation timed out

Cause:

Supercharger uses SQL Server to store certain settings and other information and to communicate with the collectors. This communication happens through standard SQL Server protocols. If the network is slow, for example because of great geographical distance between the collector and manager, these communication connections could result in a timeout.

Solution:

Supercharger introduced some registry values to be able to control the timeouts. These are to be set in regedit on the respective collector under HKEY_LOCAL_MACHINE\SOFTWARE\MTG\Supercharger\Controller

Please remember that regedit defaults to hexadecimal values when entering the values. The values in this table are decimal values.

Name Type Default value (decimal) Sample value used by a customer between the USA and Europe (decimal) Sample value used by a customer between the USA and Asia (decimal)
SqlConnectionTimeOutSeconds DWORD 15 30 60
SqlExecutionStrategyDelaySeconds DWORD 10 10 40
SqlExecutionStrategyRetryCount DWORD 3 3 9

This page was: Helpful | Not Helpful