Quick Answer:To fix Exchange JET errors, first identify the error code and the type of the error. Then, based on the error, choose the solution. For hardware or input/output issues, troubleshoot devices, and in case of corruption, you can use the eseutil tool.

Extensible Storage Engine (ESE), also called JET Blue, is the core technology that is used for storing emails, attachments, and other mailbox data in the EDB file. The Exchange JET engine errors are issues that are specifically related to the ESE. Such errors can occur if the storage engine encounters a problem due to hardware, software, or database issues.

The Exchange ESE and JET engine errors can dismount EDB files, disrupt the mail flow, or even corrupt the data. Therefore, resolving them immediately is crucial. In this guide, we will discuss why you are seeing these errors, how to identify them, and how you can fix Exchange JET errors.

What Causes Exchange JET Engine Errors?

Microsoft Exchange JET engine errors are mainly encountered when damage occurs at the database or hardware level in the Exchange Server. Top reasons for getting Exchange ESE and JET engine errors are:

  • Hardware malfunctioning, like hard drive crashes and power failures, can damage the EDB mailboxes that are accessed during the incident.
  • Corruption in Exchange database because of registry issues or software crashes.
  • Missing or deleted Exchange log files.
  • Mismatch between Exchange log file generation number and signature.
  • Incorrect or inconsistent database restoration.

Knowing these reasons allows you to fix Exchange JET Engine errors and also helps to prevent issues like database dismount and Exchange dirty shutdown.

What are the common JET Engine Errors in Exchange?

There are multiple variants of the Exchange ESE and JET engine errors. Some of the most common ones are:

- 1022 JET_err DiskIO – It occurs when the disk input/output process restricts Exchange Server from accessing pages in the EDB.

- 1019 JET_err Page NotInitialized – Such an error occurs when the requested page is either empty or uninitialized in the Exchange database.

-1018 JET_err Read VerifyFailure – It occurs when an incorrect checksum or page number is encountered when the ESE is reading the databse pages.

-501 JET_errLogFileCorrupt – Occurs when the JET engine detects physical corruption in a transaction log file due to abrupt system crashes or hard disk bad sectors.

-1216 JET_errAttachedDatabaseMismatch – This error is seen when ESE detects that the log details do not match the header information in the EDB file.

In addition to these, there are multiple ESE errors, and most of them require a unique solution. Therefore, before you fix Exchange JET engine errors, it's important that you know which ESE error you are dealing with.

How to Identify an Exchange JET Engine Error?

Knowing the exact error you are getting makes finding the best method for the ESE errors simpler. To get details about the error, follow these steps:

Step 1: Go to the Windows Event Viewer and look for the events related to the Exchange ESE errors. The event will give you information like the error code, database name, specific file involved, etc.

Step 2: Then, based on the error in the events, look for the related Exchange log files to better understand the problem and fix Exchange JET errors.

In addition to the above steps, if the database is dismounted from the server, you can also use the eseutil /mh command. This will give additional information about the database, like the current state (Clean or Dirty Shutdown).

What are the Methods to Fix Exchange JET Engine Errors?

Since there can be multiple error codes for the Exchange ESE or JET engine errors, you have to choose the methods based on the error type.

  • Errors related to storage, hardware, or input/output: When you face JET engine errors that indicate issues with the hard disk, input/output operations, or any underlying hardware component where your Exchange Server is installed, you need to verify disk integrity and troubleshoot the hardware. Sometimes, updating the drivers of the affected hardware can also help.
  • Errors related to path: Such errors occur when your Exchange Server fails to connect to the database because of a broken path or missing files. To fix it, verify the paths your server is using to access the EDB file and also make sure the database exists at the destination. Moreover, make sure Exchange Server has the required permissions to access the files.
  • Errors related to log files" If your database log files are missing, corrupted, or deleted, it can trigger the JET errors. To fix Exchange JET engine errors, verify the log files and make sure they are located at the correct folder and accessible to the server. In case they are damaged, recover them using the backup.
  • Errors related to database corruption: To fix JET engine errors caused by database corruption, you have to repair EDB files. In this case, you can use the eseutil tool to fix the errors.

Fix Exchange JET Engine Errors with ESEUTIL

If the JET engine errors indicate database corruption, using eseutil is the easiest way to fix the ESE error. In most cases, uncommitted logs are the primary reason for corruption. Eseutil tool allows you to replay the database logs and restore the EDB to a healthy state.

Resolve Jet Engine Error using eseutil soft recovery (/r)

Step 1: First, dismount the database (if it is mounted and active) using this command:

Dismount-Database -Identity "YourDatabaseName"

Step 2: If you have complete log files, replay them using this command:

eseutil /r <LogPrefix> /l "<LogFolderPath>" /d "<DatabaseFolderPath>"

Step 3: Check the state of the database with this command:

eseutil /mh <DatabaseFolderPath>

If it is in a clean state, your database is healthy again, and you can mount it. But if the state is still showing as Dirty Shutdown, then the corruption is severe. In this case, I suggest you use a backup to restore the data. However, if a backup is not available, you must use hard recovery./p>

Resolve Jet Engine Error using eseutil hard recovery (/p)

Only use this option as a last resort. The hard recovery will delete all the damaged pages from the EDB file, causing data loss. Before moving forward, make a copy of the complete EDB file or safeguard selective data using an EDB to PST converter tool. Then, use the following steps to repair the database.

Step 1: Run eseutil command with /p switch.

eseutil /p <DatabaseFolderPath>

Step 2: After using the /p switch, you must defragment the database with this command:

eseutil /d <DatabaseFolderPath>

Step 3: Finally, perform an integrity check using New-MailboxRepairRequest

Note: If you are using Exchange Server 2010 or earlier versions, use isinteg cmdlet for the integrity check.

Step 4: Check the database state by running:

eseutil /mh <DatabaseFolderPath>

If it is in a clean state, mount it with this command:

Mount-Database -Identity "<DatabaseName>"

What to do If Eseutil Fails to Fix Exchange Jet Engine Errors?

When most of your database header and pages are corrupt, using the eseutil tool will not help. Instead, it may cause permanent data loss. In such a situation, you must focus on saving your data from the EDB file. For that, I prefer and recommend using a professional Exchange database recovery tool.

Kernel for Exchange Server is an enterprise-grade repair & recovery tool. It can recover user mailboxes, public folders, and other EDB file content and save the data to an Outlook PST file.

Benefits of the Exchange database recovery tool

  • Recover all mailbox items (email, contacts, calendar, etc.) along with key attributes with the original folder structure.
  • You can migrate data from EDB to Live Exchange or to an Office 365 account after recovery.
  • Built-in filters for selective data recovery
  • Supports large EDB files and has no file size limitations.

Resolve Exchange JET Engine Error

Exchange ESE or JET Engine is crucial for communication between server and database. Any issue with it will break the communication flow. To prevent it, monitor hardware latency and health, focus on regular VSS backups, and install a powerful antivirus tool. In case of corruption, use ESEUTIL tool to fix Exchange JET Engine errors and repair the database. But if that doesn’t work, try the Kernel for Exchange Server for complete recovery with minimal data loss.

Frequently Asked Questions

Q. What is the best method to fix Exchange JET errors?

Ans. There is no single solution to fixing all the Exchange ESE or JET engine errors. You have to identify the root cause of the error and, based on that, choose the appropriate method.

Q. Why is Exchange Server showing JET engine errors?

Ans. The JET engine errors are mainly caused by an issue with the database. It could happen due to a hardware issue, lack of permissions, missing log files, or a corrupted database.

Q. How to fix Exchange JET error 1605?

Ans. To fix 1605 JET_errKeyDuplicate (Illegal Duplicate Key), use the eseutil tool with the soft recovery (/r) switch.

Sarthak Poswal