Use A_MSSQL_DEADLOCK_LOOPS if user typically open a number of tables at the same time. This configuration variable can be used to instruct Acu4GL to re-execute an INSERT statement that could not execute because a row in the AcuOpen1Tables table was locked, or to return an error if the user chooses not to run the query again.
Valid values are:
0 (the default) | Returns an error 1205 indicating that a table is locked |
A positive numeric value. | Re-executes by the number specified by the query that caused the deadlock. Note that it can be as long as 10 seconds until SQL Server detects the deadlock, and the application appears to stop responding while the repeated attempts to re-execute the query are in progress. |
-1 or MESSAGE | Displays a message box containing the text of the SQL Server error message and the option to rerun the query.
SQL Server has returned an error (text of message from SQL Server) Do you want to retry the operation? If the user answers Yes, the interface reruns the query; if the user answers No, the interface returns an error. |
Setting A_MSSQL_DEADLOCK_LOOPS to -1 or MESSAGE is the preferred action; the time it takes to inform users of the problem allows other connections to finish opening the tables, giving the AcuOpenTables1 table time to remove the deadlock. For information about AcuOpenTables1 table, see Table Locking.