Inconsistent Results from DBCC CheckDB

  • SQL 2000 Enterprise SP4.

    Our SQL server is periodically getting 823 errors as follows:

    Error: 823, Severity: 24, State: 2

    I/O error (bad page ID) detected during read at offset 0x00000022018000 in file 'F:\SQLDataFiles\Click2Coach_Data.MDF'.

    If I run DBCC CHECKDB sometimes it returns errors and sometimes it doesn't. Today I ran DBCC CHECKDB with repair and it reported about 12 errors fixed. However, the 823s started up again shortly after the repair finished. I've been running the DBCC CHECKDB statement periodically throughout the day. Most times it's clean but other times it returns errors. I took one of the object IDs that were in the error message and couldn't find it in sysobjects. We have run diagnostics on the disk and haven't found any problems. We also detached and moved the DB to a different drive (although it was just a logical drive), but that seemed to have no effect. Any ideas?

  • It's your IO subsystem, without a shadow of a doubt.

    Errors are moving around because the IO subsystem is corrupting different parts of the various files.

    You need to move off that IO subsystem until you figure out what is wrong with it. Use SQLIOSim to diagnose - see http://support.microsoft.com/kb/231619 - IO subsystem diagnostics are usually not sufficient to stress the IO subsystem into producing errors.

    Thanks

    Paul Randal
    CEO, SQLskills.com: Check out SQLskills online training!
    Blog:www.SQLskills.com/blogs/paul Twitter: @PaulRandal
    SQL MVP, Microsoft RD, Contributing Editor of TechNet Magazine
    Author of DBCC CHECKDB/repair (and other Storage Engine) code of SQL Server 2005

  • Thanks Paul for the quick response!! We'll give it a try.

  • Paul Randal (3/23/2011)


    It's your IO subsystem, without a shadow of a doubt.

    Isn't it possible it could be a memory issue? I had a (non-SQL, admittedly) problem on a machine once where files kept getting corrupted, but I eventually traced it to a problem with faulty RAM--some of the bits of the files were getting flipped in memory before they ever got written to the hard drive! Less likely on a server machine with ECC-checking RAM, of course...

  • Hi Everyone,

    It took us a while, but we eventually determined that there was something wrong with the disks (as Paul initially suspected) and the issue was resolved by replacing them.

    Thanks for the help!!

  • Glad you got it sorted!

    Paul Randal
    CEO, SQLskills.com: Check out SQLskills online training!
    Blog:www.SQLskills.com/blogs/paul Twitter: @PaulRandal
    SQL MVP, Microsoft RD, Contributing Editor of TechNet Magazine
    Author of DBCC CHECKDB/repair (and other Storage Engine) code of SQL Server 2005

Viewing 6 posts - 1 through 5 (of 5 total)

You must be logged in to reply to this topic. Login to reply