查找正在更改 IsolationLevel 的事务

Find which transaction is changing IsolationLevel

我的应用程序正在调用多个 SP,似乎在这些调用之间隔离级别正在更改为可序列化。我已经检查了代码,我们没有在任何地方设置隔离级别。是否可以知道 SQL 连接池是否正在设置此级别?

我正在使用 MS SQL 2008 R2。

当我 运行 SQL 分析器时,我发现隔离已经改变。调用的 SP 没有更改它。是不是因为没有指定隔离级别,所以SQL连接池在决定使用哪个级别而不是设置回去?

Audit Login -- network protocol: LPC
set quoted_identifier on
set arithabort on
set numeric_roundabort off
set ansi_warnings on
set ansi_padding on
set ansi_nulls on
set concat_null_yields_null on
set cursor_close_on_commit off
set implicit_transactions off
set language us_english
set dateformat mdy
set datefirst 7
set transaction isolation level serializable 

重用池连接不会更改事务隔离级别。

也许您正在使用 TransactionScopeThe default isolation level with TransactionScope is serializable 除非您另有说明。