Handle using transactions and resetting isolation level correctly when READ_COMMITTED_SNAPSHOT is set to ON
#520
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What
I found on a set up when:
That you'd get the error:
TinyTds::Error: Incorrect syntax near 'SNAPSHOT'.: SET TRANSACTION ISOLATION LEVEL READ COMMITTED SNAPSHOT. This occurs because after running the transaction, the adapter is attempting to set the isolation level toconnection.user_options_isolation_levelwhich is actuallyread committed snapshotwhich is not valid.I wasn't able to run the entire test suite on my setup but was able to get a fail, fix, pass for this specific issue.