Database inconsistency--which report to believe?

  • This happens quite frequently to us:

    Some long-running T-SQL query will fail with a message such as the following:

    Server: Msg 7987, Level 22, State 1, Line 1

    A possible database consistency problem has been detected on database 'Northwind_or_whatever'.

    DBCC CHECKDB and DBCC CHECKCATALOG should be run on database 'Northwind_or_whatever'

    Yet, almost invariably, when we run DBCC CHECKDB WITH NO_INFOMSGS and DBCC CHECKCATALOG WITH NO_INFOMSGS, they report no problems at all.

    So... I don't know which report to believe.

    * Were there inconsistency problems which were silently fixed before the DBCC commands could see them?

    * Are the DBCC commands fixing problems but not actually reporting them? (If so, is there any switch to make the DBCC commands tell the whole truth?)

    * Did the "possible database consistency problem" turn out to be something else entirely? (If so, is there any way to find out what?)

    Also, I had found a Microsoft technical article about a flag to set, to cause SQL Server to dump some recent messages from some sort of in-memory ring buffer, of recent results from -- something I'm afraid I forget the details, but it was suggested as something worth analyzing in the face of database inconsistency problems, to try to help determine if many database writes might be failing -- can anyone tell what I'm babbling about and give me a pointer or keyword for this?

  • I don't have any good news, I'm afraid, but you might want to check

    http://support.microsoft.com/default.aspx?scid=kb;en-us;828337

    to see if this looks like your problem.

     


    And then again, I might be wrong ...
    David Webb

  • You can shorten the advice to "contact PSS"...

  • Hi,

    SQL Server has added trace flag 818. You can specify trace flag 818 as a startup parameter, -T818, for the computer that is running SQL Server, or you can run the following statement:

    DBCC TRACEON(818, -1)

    Trace flag 818 enables an in-memory ring buffer that is used for tracking the last 2,048 successful write operations that are performed by the computer running SQL Server, not including sort and workfile I/Os. When errors such as Error 605, 823, or 3448 occur, the incoming buffer's log sequence number (LSN) value is compared to the recent write list. If the LSN that is retrieved during the read operation is older than the one specified during the write operation, a new error message is logged in the SQL Server error logSQL Server has added trace flag 818. You can specify trace flag 818 as a startup parameter, -T818, for the computer that is running SQL Server, or you can run the following statement:

    DBCC TRACEON(818, -1)

    Trace flag 818 enables an in-memory ring buffer that is used for tracking the last 2,048 successful write operations that are performed by the computer running SQL Server, not including sort and workfile I/Os. When errors such as Error 605, 823, or 3448 occur, the incoming buffer's log sequence number (LSN) value is compared to the recent write list. If the LSN that is retrieved during the read operation is older than the one specified during the write operation, a new error message is logged in the SQL Server error log

     

    Links for your reference:

    http://support.microsoft.com/kb/826433/en-us

    Regards,

    Minaz Amin

    email id : meenakshikundar@yahoo.com

    Phno: 9341735900.

     

    "More Green More Oxygen !! Plant a tree today"

Viewing 4 posts - 1 through 3 (of 3 total)

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