Exchange JET Error Codes and What They Mean

Quick Answer. JET errors come from the Exchange database engine. Codes name the layer that failed. Codes -1018 and -1022 point to the disk or database pages. Codes -501 and -515 point to transaction logs. Copy the database before any repair.

What are Exchange JET Error Codes?

Every JET error code comes from the Extensible Storage Engine, the engine that reads and saves the Exchange database. Microsoft says ESE was formerly known as JET.

Every error has a negative number and a name that starts with JET_err. The JET error code tells you which part of the database stack failed.

What does a JET Error Code Mean?

The table lists common codes from Microsoft references. Use the first step before you try any repair command.

CodeNameMeaningFirst step
-1018JET_errReadVerifyFailureDatabase page failed a checksum, from disk or file system damageCheck hardware, then restore from backup
-1019JET_errPageNotInitializedDatabase page is blank, like -1018 but from a lost page flushTreat as -1018
-1022JET_errDiskIODisk problem stopped Exchange from reading a page or logFix the disk first
-1032JET_errFileAccessDeniedAnother program holds the database or log files openRestart Exchange services or the server
-501JET_errLogFileCorruptTransaction log file is physically damagedRestore the database and logs from backup
-510JET_errLogWriteFailExchange cannot save to the current log, from a full disk or a lockFree disk space and remove the lock
-515JET_errInvalidLogSequenceA log file is missing or does not match the othersFind the missing log or restore
-532JET_errBadCheckpointSignatureCheckpoint file does not match the logsRemove the checkpoint file
-543JET_errRequiredLogFilesMissingLog files the database needs are missingRestore or repair the database
-550JET_errDatabaseInconsistentDatabase is in Dirty Shutdown and logs are missing or not appliedApply all logs, restore or repair
-1206JET_errDatabaseCorruptedIntegrity check found mild to medium problemsSearch the INTEG.RAW file for ERROR
-1216JET_errAttachedDatabaseMismatchDatabases in a group do not match after a crash or restoreRestore the database from backup

Microsoft lists these codes in its Exchange reference for common Eseutil errors.

Which Codes Mean Disk or Page Damage?

Codes -1018, -1019 and -1022 belong here. Microsoft links -1018 to problems in the file system or hardware under the database.

Fix the disk first when you see -1022. Then check the database state and restore from backup if pages are damaged. Our Exchange JET error 1018 guide walks through the checksum case.

Which Code Means a File Lock?

Code -1032 means another program holds the files. Antivirus scanners and backup agents are common causes.

Exclude the Exchange database and log folders from scanners, then restart the services. The JET error 1032 and ESEUTIL guide explains the case when Eseutil itself fails.

Which Codes Come From Transaction Logs?

Codes -501, -510, -515, -530, -532 and -543 sit in the log layer. A missing or mismatched log stops the database from reaching a clean state.

Check the state first. Use the command below and check the State line.

eseutil /mh "D:\Mailbox\DB01\DB01.edb"

Clean Shutdown means the database no longer needs the logs. Dirty Shutdown means it still does.

Heads Up. Replace the path with your own database path. Use the command on a copy when you can.

Should You Use Eseutil /p?

Eseutil /p is the last resort. Microsoft documents that it can delete pages it cannot fix, so data can vanish for good.

  • Copy the EDB file and every log file to safe storage.
  • Restore from backup when you have one.
  • Use Eseutil /p only on the copy and only when no backup exists.
  • Export the repaired mailboxes to PST files and check item counts.

How do You Save Mailboxes From a Damaged Database?

An export tool reads the EDB file directly and saves mailboxes as PST files. The free EDB to PST converter guide lists the options, and our EDB file page explains the file itself.

The Exchange Export Tool exports mailboxes from a live Exchange Server to PST files. Test the demo on one mailbox before a large export.

Frequently Asked Questions

What does JET Stand for in an Exchange JET Error?

JET stands for Joint Engine Technology. Microsoft now calls the engine Extensible Storage Engine, or ESE.

What is Exchange Error -1018?

Error -1018 means a database page failed its checksum. Microsoft links it to damage in the disk or file system under the database.

How is -1022 Different From -1018?

Error -1022 is a generic disk I/O error. Error -1018 is a checksum failure on a page that Exchange did read.

What does Error -1032 Mean?

Error -1032 means another program holds the database or log files open. Restart the Exchange services or the server to release the lock.

Can You Fix a Corrupt Transaction Log?

No. Microsoft states that you cannot repair a log file after error -501. Restore from backup instead.

What is the Difference Between Clean and Dirty Shutdown?

Clean Shutdown means the database stands alone without logs. Dirty Shutdown means it still needs logs to reach a consistent state.

Does Eseutil /p Lose Data?

Yes, it can. Eseutil /p removes pages it cannot repair, so use it only on a copy and only without a backup.

Author's Verdict

Read the code first. The number tells you if the disk, the logs or a lock stops the database.

Copy before you repair, and prefer a backup over Eseutil /p. That order protects your mail.

Key Takeaways

  • Codes -1018, -1019 and -1022 mean disk trouble or damaged pages.
  • Code -1032 points to a file lock.
  • Eseutil /p is the last resort and belongs on a copy.

Related Guides