FIX: Rare index corruption when you build a columnstore index with parallelism on a partitioned table in SQL Server 2014

Assume that you have a partitioned table on a database that uses compatibility level 120 in Microsoft SQL Server 2014. You build a columnstore index on this table with DOP > 1. Under certain rare cases, the query optimizer may insert a spool in the query plan for performance reasons. This spool can return duplicate rows and cause an index corruption. DBCC CHECKTABLE will return an error if this issue happens.
The issue was first fixed in the following cumulative update of SQL Server: Recommendation: Install the latest cumulative update for SQL Server
Each new cumulative update for SQL Server contains all the hotfixes and all the security fixes that were included with the previous cumulative update. We recommend that you download and install the latest cumulative updates for SQL Server:
To work around this issue, you can use one of the following methods:
  • Run columnstore index build at DOP=1.
  • Set the database compatibility level to 110.
  • Use TF9481 to force the query optimizer to use compatibility level 110.
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.


Article ID: 3080155 - Last Review: 10/19/2015 19:38:00 - Revision: 2.0

Microsoft SQL Server 2014 Service Pack 1, Microsoft SQL Server 2014 Developer, Microsoft SQL Server 2014 Enterprise, Microsoft SQL Server 2014 Standard

  • kbqfe kbfix kbsurveynew kbexpertiseadvanced KB3080155