Microsoft KB Archive/318178

= XADM: Messages Are Backed Up in Message Transfer Agent and Internet Mail Service Queues to the Information Store =

Article ID: 318178

Article Last Modified on 10/28/2006

-

APPLIES TO


 * Microsoft Exchange Server 5.5 Standard Edition

-



This article was previously published under Q318178



SYMPTOMS
Many messages are in the message transfer agent (MTA) queue and the Internet Mail Service queue to the information store. Although the messages are being processed, they are being processed slowly, and the queues continue to increase during peak usage.

If you start Microsoft Windows NT Performance Monitor, the maximum value for the following performance counter is greater than zero:

Object: Database

Counter: Log Record Stalls/sec

Instance: Information Store



CAUSE
This problem is caused by one of the following issues:
 * There are not enough log buffers for the information store.
 * Disk write caching must be turned on for the disk controller for the drive that contains the information store log files. If write caching is turned on, the write cache percentage on the controller may have to be increased because of an increased server load.
 * A bottleneck in disk I/O occurs because of hardware problems or the use of IDE bus mastering technologies instead of a small computer system interface (SCSI). For best results, production Exchange databases and log files should be placed on SCSI drives instead of IDE drives.



RESOLUTION
To resolve this problem, complete each of the following steps in the order that they are presented. After each step, test to see if the performance has improved. If it has not improved, continue to the next step.  Increase the number of log buffers for the information store.For additional information, click the article number below to view the article in the Microsoft Knowledge Base:

188676 XADM: Log Stalls/sec Are Regularly Greater Than 0 (Zero)

 Run Performance Optimizer in verbose mode.For additional information, click the article number below to view the article in the Microsoft Knowledge Base:

246125 XADM: Exchange Server 5.5 Performance Optimizer Verbose Mode

 Increase throughput between the MTA and the information store.For additional information, click the article number below to view the article in the Microsoft Knowledge Base:

234702 XGEN: MTA Queue to Information Store Processing Slowly

 If the log files have a dedicated disk controller, which is a controller that only services disks that contain log files, configure the disk controller to use 50% write cache and 50% read cache. Continue to increase the write cache percentage until the problem is resolved. You may have to configure the disk controller for 100% write cache and 0% read cache.NOTE: During typical operation, Exchange Server does not perform read operations against the log files. As a result, the read cache provides little or no performance benefit. Contact your hardware vendor for more information about how to turn on and modify the disk controller write cache.

WARNING: The disk controller must have an extremely reliable battery back up; otherwise, turning on the write cache may result in data loss. Microsoft does not recommend turning on the write cache on the physical disk under any circumstances because there is no battery back up for this cache to prevent data loss. Before you turn on the write cache on the controller, it is important to understand the inherent risks of this technology. It is possible for a hardware write cache to be safe for Exchange Server if the hardware manufacturer has included safety mechanisms that prevent the accidental removal of uncommitted cache data. For additional information, contact your hardware vendor. For additional information, click the article number below to view the article in the Microsoft Knowledge Base:

188589 XADM: Exchange DB and Caching Hard Disks and Controllers

 Log files should have a dedicated disk or disk set to avoid contention with other processes. For example, you should not put MTA or information store database files on the same disk set as the log files. This configuration would require the controller to split its time between the log files and the other files that are being written to disk. For a fault tolerant solution with the best performance, store the information store log files on a hardware RAID 0+1 disk set (mirror set). A stripe set increases performance by dividing data into blocks and spreading them, in a fixed order, across all disks in the array. Because dual write operations in a mirror set can degrade system performance, Microsoft recommends that you use duplexing, which provides each mirror set with its own host adapter. The mirror set increases fault tolerance if a disk in one of the stripe sets fails. However, if the primary disk set in the mirror set fails, it might incur some downtime, and you would have to manually break the mirror set by using a disk editor. For additional information, contact your hardware vendor.</li> In Windows NT 4.0, run perfdisk -y at a command prompt to turn on physical disk counters. By default, physical disk counters are turned on in Windows 2000. If the counters have been turned off in Windows 2000, run perfdisk -yd to turn on the counters. Use Performance Monitor to determine if disk I/O is contributing to this problem. For additional information about monitoring disk performance, click the article number below to view the article in the Microsoft Knowledge Base:

146005 Optimizing Windows NT for Performance

</li></ol>

If none of these Exchange Server and disk tuning changes result in a significant improvement in performance, Microsoft recommends that you run the hardware diagnostics utilities that are provided by your hardware manufacturer. Microsoft also recommends that you periodically contact your hardware vendor for available firmware updates because many perceived hardware issues can be caused by firmware.

<div class="moreinformation_section">

MORE INFORMATION
When information store transactions occur (for example, incoming messages, outgoing messages, or internal store operations), the information store must immediately write these transactions from memory to the current log file (Edb.log). If the information store cannot write these transactions to the disk, a Log Record Stall occurs. For each Log Record Stall, the information store pauses in an effort to reduce the number of outstanding transactions in memory that have not been committed to disk. This pause causes the performance problem.

<div class="references_section">