FIX: "Cannot insert duplicate key" error occurs when you update a table by using a bitmap index that contains a partition key in SQL Server

Applies to: SQL Server 2012 EnterpriseSQL Server 2012 DeveloperSQL Server 2012 Standard


Assume that you have a table that contains non-unique indexes in Microsoft SQL Server 2012 or SQL Server 2014. When you run a query to update the table by using the bitmap index that contains a partition key, you receive the following error message:
Msg 2601, Level 14, State 1, Line 1
Cannot insert duplicate key row in object <table name> with unique index <index name>. The duplicate key value is (0, <the value>).

Note The index is not unique index and allows duplicates.


To work around this issue, enable trace flag 8690 to disable the Spool operation. However, this workaround may cause a performance regression because the Spool is disabled.


Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.