“When a connection is closed and returned to the pool, the isolation level from the last SET TRANSACTION ISOLATION LEVEL statement is retained”?
Question
The MSDN online article "Snapshot Isolation in SQL Server" states:
- "An isolation level has connection-wide scope, and once set for a connection with the SET TRANSACTION ISOLATION LEVEL statement, it remains in effect until the connection is closed or another isolation level is set. When a connection is closed and returned to the pool, the isolation level from the last SET TRANSACTION ISOLATION LEVEL statement is retained. Subsequent connections reusing a pooled connection use the isolation level that was in effect at the time the connection is pooled"
Isn't it self-contradictory paragraph ("until" vs. "retained")?
Then, if "the isolation level from the last SET TRANSACTION ISOLATION LEVEL statement is retained" after closing the connection and returning it to a pool, how it should be understood:
- that the default isolation level will have arbitrary value (different connections in the pool will have different isolation levels, and its value will depend on the connection being re-opened)?
- or all the default values on all connection in thу pool will be changed to last one? but again quite unknown before hand?
No correct solution
Licensed under: CC-BY-SA with attribution
Not affiliated with dba.stackexchange