FIX: INSERT SELECT Statement Does Not Release Shared Intent Lock (188034)



The information in this article applies to:

  • Microsoft SQL Server 6.5

This article was previously published under Q188034

SYMPTOMS

When using INSERT SELECT or SELECT INTO inside of a transaction, shared intent locks that are acquired on the source data tables may not be completely released.

WORKAROUND

To work around this problem, try one of the following:
  • Remove the INSERT statement from the transaction.
  • Use an INSERT EXECUTE stored procedure statement.
  • Use the NOLOCK optimizer hint.

STATUS

Microsoft has confirmed this to be a problem in SQL Server 6.5. This problem has been corrected in Service Pack 5a for Microsoft SQL Server 6.5.For more information, click the following article number to view the article in the Microsoft Knowledge Base:

197177 INF: How to Obtain SQL Server 6.5 Service Pack 5a

For more information, contact your primary support provider.

MORE INFORMATION

The shared intent lock will remain for the duration of the transaction. Therefore, in a long transaction, the shared intent lock can result in other connections requesting an exclusive lock to become blocked. The shared intent lock will be issued when populating a permanent table, as well as a temporary table.

Modification Type:MajorLast Reviewed:3/14/2006
Keywords:kbBug kbfix KB188034