CheckDB on Read_only database sometimes reports issues ??

  • Last week I noticed DBCC Checkdb reported an issue with one of my databases. ( SQL 2005 Enterprise Edition (64-bit)9.00.5000.00 SP4 )

    CHECKDB found 0 allocation errors and 1 consistency errors in table 'sys.sysmultiobjrefs' (object ID 75). [SQLSTATE 01000] (Error 8990) CHECKDB found 0 allocation errors and 1 consistency errors in database 'MYDB'. [SQLSTATE 01000] (Error 8989) repair_allow_data_loss is the minimum repair level for the errors found by DBCC CHECKDB (MYDB). [SQLSTATE 01000] (Error 8958) DBCC execution completed. If DBCC printed error messages, contact your system administrator. [SQLSTATE 01000] (Error 2528). The step failed.

    As this database is a read_only database and has been in that state for a long time, I wondered what could have caused this corruption.

    I didn't repair anything, drives have enough space, no RAM pressure, ...

    This weekend, the same DBCC Checkdb job reported no issues at all with that database.

    Any hints as to why DBCC Checkdb gave me a false positive/negative ??

    Johan

    Learn to play, play to learn !

    Dont drive faster than your guardian angel can fly ...
    but keeping both feet on the ground wont get you anywhere :w00t:

    - How to post Performance Problems
    - How to post data/code to get the best help[/url]

    - How to prevent a sore throat after hours of presenting ppt

    press F1 for solution, press shift+F1 for urgent solution 😀

    Need a bit of Powershell? How about this

    Who am I ? Sometimes this is me but most of the time this is me

  • Misbehaving IO subsystems aren't going to honour a read-only flag on a database. Corruption is typically IO subsystem (much rarer memory) related.

    Gail Shaw
    Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
    SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability

    We walk in the dark places no others will enter
    We stand on the bridge and no one may pass
  • Thank you, Gail;

    I was suspecting in the same problem area.

    Johan

    Learn to play, play to learn !

    Dont drive faster than your guardian angel can fly ...
    but keeping both feet on the ground wont get you anywhere :w00t:

    - How to post Performance Problems
    - How to post data/code to get the best help[/url]

    - How to prevent a sore throat after hours of presenting ppt

    press F1 for solution, press shift+F1 for urgent solution 😀

    Need a bit of Powershell? How about this

    Who am I ? Sometimes this is me but most of the time this is me

  • What was the actual error that CheckDB found?

    Gail Shaw
    Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
    SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability

    We walk in the dark places no others will enter
    We stand on the bridge and no one may pass
  • The message I received was as posted.

    Digging deeper, it seems to have been the following:

    DoMiniDump () encountered error (0x800703E6) - Invalid access to memory location.

    External dump process return code 0x20000001.

    External dump process returned no errors.

    Stack Signature for the dump is 0x0000000000000267

    * Short Stack Dump

    * -------------------------------------------------------------------------------

    * *******************************************************************************

    *

    * dbcc checkdb ( 'MYDB' ) with physical_only end

    * IRROR' and database_id = db_id('MYDB') ) begin

    * Where mirroring_guid is not null and mirroring_role_desc = 'M

    * if not exists ( Select * from sys.database_mirroring

    * Input Buffer 510 bytes -

    *

    * DBCC database corruption

    *

    * 01/19/14 12:00:03 spid 54

    * BEGIN STACK DUMP:

    *

    * *******************************************************************************

    ***Stack Dump being sent to J:\MSSQL.3\MSSQL\LOG\SQLDump0002.txt

    **Dump thread - spid = 54, PSS = 0x00000000B03ADA80, EC = 0x00000000B03ADA90

    DBCC CHECKDB (MYDB) WITH physical_only executed by mydomain\myserviceaccount found 1 errors and repaired 0 errors. Elapsed time: 0 hours 0 minutes 0 seconds.

    Johan

    Learn to play, play to learn !

    Dont drive faster than your guardian angel can fly ...
    but keeping both feet on the ground wont get you anywhere :w00t:

    - How to post Performance Problems
    - How to post data/code to get the best help[/url]

    - How to prevent a sore throat after hours of presenting ppt

    press F1 for solution, press shift+F1 for urgent solution 😀

    Need a bit of Powershell? How about this

    Who am I ? Sometimes this is me but most of the time this is me

  • Was asking about the specific error that CheckDB found. It says "found 1 errors and repaired 0 errors.", what was that one error?

    Gail Shaw
    Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
    SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability

    We walk in the dark places no others will enter
    We stand on the bridge and no one may pass
  • my bad. Sorry for that.

    Executed as user: mydomain\myserviceaccount. The page (1:402), object ID 75, index ID 1, partition ID 281474981625856, allocation unit ID 281474981625856 (type In-row data) has been modified, but is not marked as modified in the differential backup bitmap. [SQLSTATE 42000] (Error 2515) DBCC results for 'MYDB'. [SQLSTATE 01000] (Error 2536) There are 0 rows in 0 pages for object "sys.sysmultiobjrefs". [SQLSTATE 01000] (Error 2593) CHECKDB found 0 allocation errors and 1 consistency errors in table 'sys.sysmultiobjrefs' (object ID 75). [SQLSTATE 01000] (Error 8990) CHECKDB found 0 allocation errors and 1 consistency errors in database 'MYDB'. [SQLSTATE 01000] (Error 8989) repair_allow_data_loss is the minimum repair level for the errors found by DBCC CHECKDB (MYDB). [SQLSTATE 01000] (Error 8958) DBCC execution completed. If DBCC printed error messages, contact your system administrator. [SQLSTATE 01000] (Error 2528). The step failed.

    Johan

    Learn to play, play to learn !

    Dont drive faster than your guardian angel can fly ...
    but keeping both feet on the ground wont get you anywhere :w00t:

    - How to post Performance Problems
    - How to post data/code to get the best help[/url]

    - How to prevent a sore throat after hours of presenting ppt

    press F1 for solution, press shift+F1 for urgent solution 😀

    Need a bit of Powershell? How about this

    Who am I ? Sometimes this is me but most of the time this is me

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

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