You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When running queries that take a long time (e.g. creating an index on a large table) we are getting timeouts:
Failure: The transaction associated with the current connection has completed but has not been disposed. The transaction must be disposed before the connection can be used to execute SQL statements.
Erroring script was run in a transaction and was rolled back.
When running the same query using --NOTRANSACTION it does not time out. This leads me to believe that the TransactionScope is timing out. Further reading revealed that TransactionScope has a hidden timeout setting of 1 minute (which corresponds to the timeouts that we are seeing).
I noticed that you increased the SqlCommand timeout to infinite in an earlier change. Would it be prudent to do the same for TransactionScope?
Hmm... the only places I can find for setting command timeouts are in AliaSQL/source/AliaSQL.Core/Services/Impl/QueryExecutor.cs and both of those are set to 0. Is there another place that would control "TransactionScope"? As far as I can tell - everything is already set to unlimited timeouts.
Activity
cravelight commentedon Jul 19, 2016
Hmm... the only places I can find for setting command timeouts are in
AliaSQL/source/AliaSQL.Core/Services/Impl/QueryExecutor.csand both of those are set to0. Is there another place that would control "TransactionScope"? As far as I can tell - everything is already set to unlimited timeouts.