FIX: Concurrent CREATE TABLE & ALTER TABLE May Cause DeadlockLast reviewed: June 27, 1997Article ID: Q159782 |
The information in this article applies to:
SYMPTOMSIf you perform a CREATE TABLE and an ALTER TABLE ADD CONSTRAINT concurrently, you may receive deadlocks on system tables.
WORKAROUNDTo work around this problem, place the ALTER TABLE in a user transaction preceded by a SELECT (UPDLOCK) on syscolumns and sysindexes, as shown below:
begin tran select count(*) from syscolumns(UPDLOCK) where id=object_id('TT1a') select count(*) from sysindexes(UPDLOCK) where id=object_id('TT1a') alter table TT1a add constraint TT1idx1a PRIMARY KEY (a, b, c, d, e, f, g, h) commit tran STATUSMicrosoft has confirmed this to be a problem in Microsoft SQL Server versions 4.2x, 6.0, and 6.5. This problem has been corrected in U.S. Service Pack 2 for Microsoft SQL Server version 6.5. For more information, contact your primary support provider.
|
Additional query words: LOCK BLOCK
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |