Report Manager Database corruption

Last Modified

Wed Jun 19 17:36 GMT 2019

Description

  • With Report Manager connecting to and using a database application (Microsoft SQL) to hold all of its information there is a possibility that the underlying database solution can get into a corrupted state and start throwing errors.
  • You may see a message similar to this one:
Error: SQL Server detected a logical consistency-based I/O error: incorrect pageid (expected 1:8434080; actual 0:0).It occurred during a read of page (1:8434080) in database ID 10 at offset 0x00001016340000 in file 'D:\SQLData\ods_test_ds1.mdf'.Additional messages in the SQL Server error log or system event log may provide more detail.This is a severe error condition that threatens database integrity and must be corrected immediately.Complete a full database consistency check (DBCC CHECKDB). This error can be caused by many factors; for more information, see SQL Server Books Online.
  • This is a fault in the Microsoft SQL server and not a fault with Report Manager itself.
  • This is a fault with the contents of the page files that Microsoft SQL server manages and Microsoft SQL server is throwing this error message to indicate that it has found an inconsistency with what it thinks should be in the database.
  • Common reasons for this type of failure are:
    • Improper shutdown of SQL server service such as the service crashing or somebody/some application killing the service process
    • Improper shutdown of the server itself such as blue screen faults or power outages
    • Failures on the diskset that the database is being held on such as bad or failing blocks

Environment

  • N-able N-central
  • Report Manager

Solution

  • You will need to run a CHECKDBon the database that is indicated in the error message and may need to pass parameters allowing for data loss to get Microsoft SQL through the fault.
  • Allowing for data loss, especially if there is a lot of errors found, can introduce inconsistency's in the Reports afterwards so it is something to keep in mind later in case you see discrepancies in reporting.
  • You can learn more about the CHECKDB command and how to use it at the following Microsoft Article.
  • https://msdn.microsoft.com/en-us/library/ms176064.aspx