() The log range read from the file “” at offset for bytes failed verification due to a range checksum mismatch. The read operation will fail with error . If this condition persists then please restore the logfile from a previous backup.

Details
Product: Exchange
Event ID: 477
Source: ESE
Version: 6.5.6940.0
Component: Microsoft Exchange Extensible Storage Engine
Message: <process name> (<process id>) <storage group name>The log range read from the file “<file name>” at offset <value> for <number> bytes failed verification due to a range checksum mismatch. The read operation will fail with error <error code>. If this condition persists then please restore the logfile from a previous backup.
   
Explanation

You might not be able to mount an Exchange database. Alternatively, you might not be able to successfully perform an online backup of an Exchange database or you might not be able to successfully complete an online restore of an Exchange database.

A transaction log has become corrupted. If the problems in the log file are only torn writes, they will be corrected by the Jet engine. If the problems cannot be repaired, the database rejects rather than applies the data, logging an event in the application log similar to the following:

The log range read from the file path\logfile failed verification due to a range checksum mismatch.

This issue can occur if the log mentioned in the event has become corrupted. Exchange cannot repair damage to log files because of factors other than torn writes, which will be fixed automatically by the ESE engine. Hardware failures that randomly damage a log file cannot be overcome because the obliterated data cannot be reliably reconstructed. ESE Event ID 477 indicates damage that cannot be repaired.

  • Error -501 = 0xfffffe0b = JET_errLogFileCorrupt = Log file corrupt. (NOTE: An error-1022 is returned from corrupting the header of a log file.) Corrupting other areas of the log file returns -501 JET_errLogFileCorrupt. This means that you may not be able to mount an information store database due to the corrupted log file because the database has become inconsistent.
  • Error -612 = 0xfffffd9c = JET_errLogReadVerifyFailure = Checksum error in log file during backup. This indicates a corrupt transaction log file. A backup cannot be made of a corrupt log file and the backup will fail. A checksum Jet error indicates a hardware root cause and is caused by hardware, controller, or file system level problems related to hardware. This means that you may not be be able to successfully perform an online backup of an information store database.
  • Error -573 = 0xfffffdc3 = JET_errLogCorruptDuringHardRestore = Corruption was detected in a backup set during hard restore. This means that you may not able to successfully complete an online restore of an information store database due to a corrupted transaction log in the restore set.
   
User Action
  • Locate a good copy of the damaged log file. Another copy may exist on either an Exchange online backup or recent server backup.
  • Discard the damaged log file along with all log files newer than it. Then restore a known good online backup of the Exchange database. You will lose data past the time that the damaged log file was created.
  • In the case of Error -573 = JET_errLogCorruptDuringHardRestore, try restoring an earlier online backup.
  • If none of these solutions are feasible, then you can restore the database to consistency using the “hard repair” (/p) functionality of the Eseutil utility, run isinteg -fix until all fixes are removed, and then mount the database and ExMerge to a new, blank database. Before doing this, you should always back up all database files in a Storage Group (*.log files, *.edb files and *.stm files).

Related:

Leave a Reply