I'm looking for a way to catch when application code changes the isolation level for a connection.
When code such as this is run:
tran = con.BeginTransaction(IsolationLevel.Serializable);
sys.dm_exec_sessions shows the change in isolation level from immediately before to immediately after the statement, but Profiler only shows the transaction starting, not the change of isolation level.
TM: Begin Tran starting
TM: Begin Tran completed
Any subsequent Audit Login event in Profiler will report that the isolation level has changed, but this is due to the bug (by design) with the connection pool not resetting the isolation level when the connection is recycled.
The environment is SQL 2008 sp1.
View Complete Post