Notice: This website is an unofficial Microsoft Knowledge Base (hereinafter KB) archive and is intended to provide a reliable access to deleted content from Microsoft KB. All KB articles are owned by Microsoft Corporation. Read full disclaimer for more details.

XCON: How and Why to Run Mtacheck


View products that this article applies to.

This article was previously published under Q163326

↑ Back to the top


Summary

Mtacheck Logs are text files that show the results of running the Mtacheck.exe utility. The Mtacheck utility scans the internal database of the Microsoft Exchange Message Transfer Agent (MTA) looking for objects that are damaged and may be interfering with the queue processing. It places defective objects from the queues in files for you to examine later. In addition, Mtacheck rebuilds the queues so the MTA can be restarted and return to processing.

↑ Back to the top


More information

Mtacheck can be run manually, but is also run automatically when the MTA service determines that the MTA was not shut down gracefully. If an automatic Mtacheck is run, events will be logged to the Windows NT Application Event Log and an Mtacheck.log file will be generated in the Mtacheck.out sub-directory of the exchsrvr\MTADATA directory containing the DB*.DAT files used by the MTA. If the Microsoft Exchange Performance Optimizer has been used to move Mtadata files, there may be more than one Mtadata directory).

If Mtacheck is run manually, no logging is performed unless specified on the command line. In addition, logs can be created in any location and with any name. In terms of logging, the automatic Mtacheck is the equivalent of running the following at the command line (except an automatic run also logs events to the event logs):
MTACHECK /V /F \exchsrvr\mtadata\Mtacheck.out\Mtacheck.log

INTERPRETING MTACHECK OUTPUT

Mtacheck examines each queue in the database. If it finds an error, it reports the name of the queue, the type of error, and the number of messages returned to the rebuilt queue.

For example:
   Queue 'xxxxxxx' required reconstruction
    - corrupted queue file
   23 messages recovered to the queue
				
It then examines objects in the queues. If an object is in error, it removes it from the queue and places it in Exchsrvr\mtadata\mtacheck.out. It reports the object ID, error type, queue name, and the MTS-ID of the corrupted message, if known.

An MTS-ID is assigned to each message by its transport service and remains with the message to its destination, although gateways may assign additional identifiers. It consists of the originating server, the date and time the message was sent, and a unique hexadecimal identifier for the message.

A sample Mtacheck log can include:
    Object 300596 invalid
    - missing object file
   Object removed from queue 'xxxxxxx'
   MTS-ID: c=US;a= ;p=Owen;l=Washington0196012020010800000CDE
				
When the MTA finishes processing, it displays one of following messages to describe the results:

  • Database clean, no errors detected
  • Database repaired, some data may have been lost
  • <number> queue(s) required repair out of <percent> detected
  • <number> object(s) damaged out of <percent> detected
  • Database has serious errors and cannot be reconstructed.
  • Some objects missing from the Boot Environment. Please reload the files from the BOOTENV directory on the install CD.
The boot environment message indicates that the report templates and other objects the MTA needs are missing and the MTA cannot generate them. These objects are included in the files in the \BOOTENV directory. Once you have installed them, rerun Mtacheck. When the process is complete, restart the MTA.

Warning: Copy only objects that are missing. If you replace existing objects, all messages in MTA queues will be deleted.

SEARCHING MESSAGE LOGS BY MESSAGE ID

Mtacheck also reports the message ID of removed objects in its log if they can be determined. If message tracking is enabled, you can search the tracking log for the object by its message ID. Determining the path of the bad message can lead you to the cause of the problem. You may need to search the logs of more than one site to find the complete path of the message.

↑ Back to the top


Keywords: KB163326, kbusage

↑ Back to the top

Article Info
Article ID : 163326
Revision : 6
Created on : 10/28/2006
Published on : 10/28/2006
Exists online : False
Views : 392