Hi,
we have a strange problem on one of our server. It is an SQL 2008 R2 all updates are installed(SP3). The DB and log is about 2 GB, in the last weeks we get very often an curruption of an clustered index( PK of the table). If we drop and recreate it , the problemnormally is resolved, until the next time. But some times we get double values in the table, if we perform the following query before the PK is droped we get 0 rows but when we perfom it after we get results, some rows in the table are dupliated(about 20), always other but "old" rows which were not updated / accssed in the last time.
SELECT * FROM table WHERE ID IN ( SELECT ID FROM table GROUP BY ID HAVING COUNT(ID) > 1)
The type of the column is uniqueidentifier.
In the log we see following:
CPerIndexMetaQS::ErrorAbort - Index corruption
Unable to find index entry in index ID 1<c/> of table 5575058<c/> in database 'db'.
The indicated index is corrupt or there is a problem with the current update plan.
And the dump.
Query for PK:
ALTER TABLE [table] ADD CONSTRAINT [PK_table] PRIMARY KEY CLUSTERED ( [ID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
The HDD and RAM were checken and are ok.
Which other reasons can cause a corruption like this?
- Edited by KT-Support 2 hours 14 minutes ago