FIX: Self-deadlock occurs when transaction auditing is enabled in SQL Server 2016 and 2017

Applies to: SQL Server 2017 on Windows (all editions)SQL Server 2017 on Linux (all editions)


Assume that you use SQL Server 2016 or 2017 with transaction auditing enabled. Consider the following scenario: 

  • You have TRANSACTION_GROUP enabled.
  • A database user is executing an action which holds an exclusive lock on itself. For example, a database user tries to drop himself from a database role.
  • The transaction needs to be rolled back due to permission failure, explicit rollback or any other failures.

When the scenario occurs, you will encounter a self-deadlock.


Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section. 


This issue is fixed in the following cumulative updates for SQL Server:

About cumulative updates for SQL Server:

Each new cumulative update for SQL Server contains all the hotfixes and all the security fixes that were included with the previous cumulative update. Check out the latest cumulative updates for SQL Server:


Learn about the terminology that Microsoft uses to describe software updates.