FIX: INSERT SELECT Statement Does Not Release Shared Intent Lock

ID: Q188034


The information in this article applies to:
  • Microsoft SQL Server version 6.5


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 version 6.5. This problem has been corrected in U.S. Service Pack 5a for Microsoft SQL Server version 6.5. For information about downloading and installing the latest SQL Server Service Pack, see http://support.microsoft.com/support/sql/.

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 : SSrvLock kbbug6.50 kbfix6.50.SP5
Version : winnt:6.5
Platform : winnt
Issue type : kbbug


Last Reviewed: November 17, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.