Article ID: 867626 - View products that this article applies to.
This article has been archived. It is offered "as is" and will no longer be updated.
This article has been archived. It is offered "as is" and will no longer be updated.
Microsoft Exchange Server 2003 Service Pack 1 (SP1) introduces a new error-correcting code (ECC) algorithm to help resolve -1018 errors that may occur in your Exchange database.
-1018 errors are not caused by a problem in Exchange 2003. A -1018 error indicates that a problem has occurred in the computer's hard disk subsystem, and that this problem has affected an Exchange database file.
A typical cause of a -1018 error is a "flipped" single bit in a database page. In this scenario, a zero bit is changed to one, or a one bit is changed to zero. The ECC algorithm that is contained in Exchange 2003 SP1 is designed to help resolve this specific problem.
While this ECC algorithm helps automatically repair single-bit errors in your Exchange database, there are certain issues to consider when you back up or restore your Exchange 2003 SP1 database files:
Single-bit errors are only repaired during a write operation to the database file. If a read operation is performed from a file that contains a single-bit error, the original file on the hard disk is not repaired. In Exchange 2003 SP1, two new events are logged to record the correction of single-bit errors.
This article discusses an error-correcting code (ECC) algorithm that is introduced in Exchange Server 2003 Service Pack 1 (SP1). The Extensible Storage Engine (ESE) in Exchange 2003 SP1 uses this algorithm to help resolve occurrences of error -1018 JET_errReadVerifyFailure. For additional information about -1018 errors, click the following article number to view the article in the Microsoft Knowledge Base:
(https://support.microsoft.com/kb/314917/ )Understanding and analyzing -1018, -1019, and -1022 Exchange database errors
Error -1018 is generated if the built-in integrity verification component in Exchange determines that Exchange could not correctly store or could not correctly retrieve Exchange database file data from the hard disk. When this problem occurs, you must repair the Exchange database file or restore the database file from a recent backup.
Our research has concluded that up to 40 percent of -1018 errors occur because of database corruption that is caused by a single-bit error. A single-bit error is also known as a "bit flip" error. A single-bit or bit flip error is a hardware-level occurrence where a single bit of data is changed from a zero to a one or from a one to a zero. A parity bit can be added to computer data to detect when a bit flip problem occurs. However, parity systems can only detect this problem; they cannot repair it. ECC algorithms can automatically detect and repair a single-bit error. Exchange 2003 SP1 implements an ECC algorithm in its Extensible Storage Engine (ESE) database to detect and to automatically correct single-bit errors.
Exchange database files are divided into 4 kilobyte (KB) blocks (also known as pages). Each page has its own ECC data. Exchange 2003 SP1 can correct single-bit errors on each page. Therefore, if multiple pages in a database are corrupted by single-bit errors, Exchange 2003 SP1 can correct each page. However, if a single database page contains multiple errors, Exchange 2003 SP1 cannot correct it. In this scenario, you must repair the database file or restore the database file from a recent backup.
By automatically repairing single-bit errors, Exchange 2003 SP1 can recover from the most frequent type of database corruption. The typical -1018 error is now "self-healing" and no longer requires that you repair the database file or that you restore the database file from a recent backup.
Note Although Exchange 2003 SP1 automatically repairs typical single-bit errors, we recommend that you do not ignore the occurrence of -1018 errors. A -1018 error indicates that a hardware component is failing or is corrupted. The repair of a single-bit -1018 error does not resolve the hardware problem that caused the error. This hardware problem may affect other files on your computer in addition to the Exchange database files. Additionally, single-bit errors only account for approximately 40 percent of -1018 errors. Other -1018 errors that you may experience require that you repair or restore your Exchange database file.
Database upgrade issuesWhen you upgrade the original release version of Exchange 2003 to Exchange 2003 SP1, the database files are not immediately upgraded to the new ECC format. This means that if an existing database experiences a single-bit -1018 error, the error is not automatically repaired by Exchange 2003 SP1. Database pages are upgraded to the new ECC format only when the data in that page is modified. If a database page is only read from the database, and is not modified, that database page remains in the original database format. That page is not upgraded to the new ECC format.
Over a period of several weeks, most or all of the pages in the database are rewritten and automatically upgraded during typical Exchange operation. If you upgrade all the database pages at the same time, you may cause a significant and unexpected slowdown in service from your Exchange computer.
To upgrade all the database pages at the same time, install Exchange 2003 SP1, take the database offline, and then defragment the database file by running the following command:
eseutil /D databaseFileFor additional information about how to defragment an Exchange database, click the following article number to view the article in the Microsoft Knowledge Base:
328804Important If you defragment the Exchange database files, this affects your ability to play transaction log files forward. In this scenario, if you have a previous backup, you can only play log files forward up to the point where you defragmented the database. Therefore, if you must later restore your database file from a backup that was taken before you defragmented the database, you lose all the data that was added after you defragmented the database.
(https://support.microsoft.com/kb/328804/ )How to defragment Exchange databases
After you defragment your database, we recommend that you immediately back up your Exchange database files. We also recommend that you consider your earlier backups as unusable for rolling forward from transaction log files.
Database backup and database restore issuesIf a -1018 error occurs in the database file in the original release version of Exchange 2003, you cannot back up that database by using an online backup operation. The online backup operation does not help prevent corruption in the database backup. Therefore, if an online database backup operation is completed successfully, no corrupted pages exist in the database backup. This means that you can restore that backup, roll the database forward by using transaction log files that were created after your database was backed up, and remove any -1018 errors that occurred in your database after the database backup was completed.
In Exchange 2003 SP1, if a single-bit error occurs in the database, the online backup operation reports this error, but the database backup still succeeds. In this scenario, the single-bit error is corrected in the backup set. However, the single-bit error is not corrected in the database that exists on the hard disk. The single-bit error in the database page that exists on the hard disk is not corrected until that page is re-written during typical database operations.
Note If a multiple-bit -1018 error occurs in the database page, the error is not correctible by Exchange 2003 SP1, and the backup is unsuccessful.
Backup set issues between Exchange 2003 and Exchange 2003 SP1If you have to restore an Exchange 2003 database, consider the following factors:
ESE eventsAfter you install Exchange 2003 SP1, the following two new application log event ID numbers may appear from the source ESE.
Note These two events do not appear in the original release version of Exchange 2003.
Event ID: 399Typically, event ID 399 appears similar to the following:
Event type: Warning
Event ID: 474An unrecoverable (or multiple-bit) error is still reported as event 474 in Exchange 2003 SP1. Typically, event ID 474 appears similar to the following:
Event type: Error
For additional information, click the following article number to view the article in the Microsoft Knowledge Base:
(https://support.microsoft.com/kb/836993/ )How to obtain the latest updates and service packs for Exchange Server 2003