BUG: Update of Column That is Part of an Indexed View May Cause a Handled Access Violation (311145)



The information in this article applies to:

  • Microsoft SQL Server 2000 Developer Edition
  • Microsoft SQL Server 2000 Enterprise Edition
  • Microsoft SQL Server 2000 Enterprise Evaluation Edition

This article was previously published under Q311145
BUG #: 355950 (SHILOH_BUGS)

SYMPTOMS

If you perform an update when all of the following conditions are true, the update may cause a handled access violation exception in the CUpdUtil::Pdlt function of SQL Server 2000. The access violation exception appears in the SQL Server error log. When the access violation exception occurs, SQL Server terminates the client connection that ran the query.
  • The updated column is a part of the clustered index key on the base table.
  • A check constraint on the base table references the updated column.
  • The updated column is in the SELECT list of an indexed view.
  • You did not use the UNIQUE clause to create the clustered index on the base table.

WORKAROUND

To work around this problem, you can use any of these methods:
  • If possible, re-create the clustered index on the base table by using the UNIQUE clause.
  • If possible, remove the updated column as part of the clustered index key on the base table.
  • If possible, remove the updated column from check constraints on the base table.
  • If possible, remove the updated column from the SELECT list of indexed views.
  • Remove the indexes on the view.

STATUS

Microsoft has confirmed that this is a problem in SQL Server 2000.

Modification Type:MajorLast Reviewed:6/28/2004
Keywords:kbbug kbpending KB311145