Cannot deallocate extent %Id, database %d. Object id %Id, index id %d, status %d in extent does not match object id %Id, index id %d, status %d in object being deallocated. Run DBCC CHECKALLOC.
This error occurs when SQL Server traverses the extent chain for deallocation and finds an extent with an object ID that is different from what was expected.
SQL Server allocates storage space as a single unit called an extent. The extent is made up of 8 2K pages. As each database table object requires more space, SQL Server allocates additional extents to the object. Non-log extents are chained together and they all belong to the same database table object. This chaining enables SQL Server to rapidly deallocate or disassociate the entire extent from the database table object rather than on a page by page basis. Log extents are not chained.
If this error occurs in tempdb, shut down and restart SQL Server. You may minimize the likelihood of the error reoccurring by increasing the size of tempdb. If the error continues to occur or if it occurs in a user database, contact your primary support provider. Have the SQL Server error log and specifics regarding the circumstances surrounding the appearance of the error available for review.