Knowledge Base

FIX: INSERT SELECT Statement Does Not Release Shared Intent Lock

Article ID: 188034

Article Last Modified on 3/14/2006


APPLIES TO


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.

Additional query words: sp sp5command

Keywords: kbbug kbfix KB188034