Please start any new threads on our new site at https://forums.sqlteam.com. We've got lots of great SQL Server experts to answer whatever question you can come up with.

 All Forums
 General SQL Server Forums
 Data Corruption Issues
 Event Log says "Data Corrupt" but DBCC says all ok

Author  Topic 

Salyx
Starting Member

5 Posts

Posted - 2008-06-26 : 04:04:48
I get occasional Event Log Errors stating "Possible index corruption detected. Run DBCC CHECKDB.". However, when I run "DBCC CHECKDB", I get no errors. Why ?

Thanks for any help...


Details:
MS SQL Server Standard Edition 9.00.3042.00
Windows NT 5.0 (2195) Intel x86
4 processors.
Database in question is mirrored (automatic failover).
I run automatic re-build indexes tasks, but not between the time the event log error occurs and running CHECKDB.


Event Log entry:

Event Type: Error
Event Source: MSSQLSERVER
Event Category: (2)
Event ID: 9100
Date: 26/05/2008
Time: 6:17:40 PM
User: N/A
Computer: BlahBlah
Description:
Possible index corruption detected. Run DBCC CHECKDB.
Data: (refers to correct 'dingdong' database)

DBCC CHECKDB result:
...
CHECKDB found 0 allocation errors and 0 consistency errors in database 'dingdong'.



maninder
Posting Yak Master

100 Posts

Posted - 2008-06-26 : 11:17:29
DBCC UPDATEUSAGE(DBNAME)
DBCc CHECKALLOC and post the results.
DBCC CHECKDB(DBNAME) again. Let me know if that works.

Maninder
Go to Top of Page

Salyx
Starting Member

5 Posts

Posted - 2008-06-26 : 19:11:22
Hi Maninder:
The indexes have been auto-rebuilt by now, so I may have to post the results after the event log error occurs again. Just in case, running it now shows the following. Looks fine to me...


>> DBCC UPDATEUSAGE('DingDong')
<snip>
DBCC UPDATEUSAGE: counts updated for table 'tblBids' (index 'tblBids', partition 1):
DATA pages (In-row Data): changed from (16104) to (16723) pages.
USED pages (In-row Data): changed from (22911) to (16724) pages.
RSVD pages (In-row Data): changed from (23604) to (16753) pages.
DBCC UPDATEUSAGE: counts updated for table 'tblCountry' (index 'tblCountry', partition 1):
DATA pages (In-row Data): changed from (3) to (2) pages.
DBCC execution completed. If DBCC printed error messages, contact your system administrator.


>> DBCC CHECKALLOC
<snip>
***************************************************************
Table sys.sysfiles1 Object ID 8.
Index ID 0, partition ID 524288, alloc unit ID 524288 (type In-row data). FirstIAM (1:993). Root (1:32). Dpages 3.
Index ID 0, partition ID 524288, alloc unit ID 524288 (type In-row data). 2 pages used in 0 dedicated extents.
Total number of extents is 0.
<snip>
Object ID 2141966707, index ID 1, partition ID 72057595078311936, alloc unit ID 72057595116257280 (type In-row data), data extents 0, pages 2, mixed extent pages 2.
Object ID 2141966707, index ID 2, partition ID 72057595078246400, alloc unit ID 72057595116191744 (type In-row data), index extents 0, pages 2, mixed extent pages 2.
The total number of extents = 24635, used pages = 180922, and reserved pages = 197016 in this database.
(number of mixed extents = 135, mixed pages = 1016) in this database.
CHECKALLOC found 0 allocation errors and 0 consistency errors in database 'DingDong'.
DBCC execution completed. If DBCC printed error messages, contact your system administrator.


>> DBCC CHECKDB
<snip>
DBCC results for 'tblLotStatus'.
There are 2 rows in 1 pages for object "tblLotStatus".
CHECKDB found 0 allocation errors and 0 consistency errors in database 'DingDong'.
DBCC execution completed. If DBCC printed error messages, contact your system administrator.

Go to Top of Page

sodeep
Master Smack Fu Yak Hacker

7174 Posts

Posted - 2008-06-26 : 19:17:43
Possibly because you are doing Mirroring with automatic failover and rebuilding index which has to travel through Mirror server for each commit.
Go to Top of Page

maninder
Posting Yak Master

100 Posts

Posted - 2008-06-26 : 21:50:04
Now this:
USE DingDong
DBCC CHECKDB WITH DATA_PURITY
and post the results.
Question: were these database upgraded from sql 2000?

Maninder
Go to Top of Page

Salyx
Starting Member

5 Posts

Posted - 2008-06-27 : 01:55:44
Yes. The database was upgraded from SQL Server 2000 (before my time).

>> DBCC CHECKDB WITH DATA_PURITY

...<snip>
DBCC results for 'tblLotStatus'.
There are 2 rows in 1 pages for object "tblLotStatus".
CHECKDB found 0 allocation errors and 0 consistency errors in database 'DingDong'.
DBCC execution completed. If DBCC printed error messages, contact your system administrator.


Thanks for your ongoing help.
Go to Top of Page

Salyx
Starting Member

5 Posts

Posted - 2008-06-27 : 02:01:04
quote:
Originally posted by sodeep

Possibly because you are doing Mirroring with automatic failover and rebuilding index which has to travel through Mirror server for each commit.


I'm not sure if I understand, but the auto-rebuild does not happen at the time when I get the event log entry.

The last time the event log error occurred was at a time of high activity, if that helps.
Go to Top of Page

Salyx
Starting Member

5 Posts

Posted - 2008-07-03 : 02:35:44
I got the same Event Error again and I ran

DBCC CHECKALLOC; DBCC CHECKDB WITH DATA_PURITY; and (paranoia) DBCC CHECKDB;

I ran this on ALL databases (master etc). Once again, no errors here.

My "rebuild indices" maintenance plan did not run, so it wasn't quietly repaired.

Any magic suggestions anyone ?

Are there any other log files etc that I could use to find out more about why the event log error is raised, or any other means to figure out what's going on ?

Btw, again, the event log error occurred at a time of peak activity. Could it actually relate to something else, eg, deadlocks, problematic stored procedures, etc ? I am starting to wonder if the event message is simply misleading.

Thanks again...
Go to Top of Page
   

- Advertisement -