Slow mail delivery in an Exchange environment that has transport rules configured

Consider the following scenario:

  • You are using an instance of Microsoft Exchange Server that has transport rules configured.
  • One or more of the transport rules contains one or more of these conditions:

    • AnyOfRecipientAddressMatchesPatterns
    • ExceptIfAnyOfRecipientAddressMatchesPatterns
    • FromAddressMatchesPatterns
    • RecipientAddressMatchesPatterns
  • When you sending email messages to a large recipient list, you notice a long delay in the delivery of the message to some users.
  • You may see the following event recorded in the Application log on the Hub Transport servers: 

    Time: DATE TIMEID: 1050Level: WarningSource: MSExchange ExtensibilityMachine: COMPUTER NAMEMessage: The execution time of agent 'Transport Rule Agent' exceeded 90000 milliseconds while handlingevent 'OnRoutedMessage' for message with InternetMessageId: 'Not Available'. This is an unusual amount of time for an agent to process a single event. However, Transport will continue processing this message.
This issue occurs because the messages remain for a long time in the Categorizer while they are processed through the transport rules on the server. This situation is caused by the rules that contain the “Matches Patterns” condition. This condition involves a complex and intensive process. You can verify this situation by examining the message tracking logs to verify that the process remains for a long time in the Categorizer Transport Rule agent, as shown in the following example log entry:
MessageLatency : 06:26:14.9940000MessageLatencyType : EndToEndComponentServerFqdn : COMPUTER NAME ComponentCode : CATRT-Transport Rule AgentComponentName : Categorizer OnRoutedMessage-Transport Rule AgentComponentLatency : 00:48:59ComponentSequenceNumber : 2
Note Even messages that are not sent to a large recipient list may remain for a long time in the Categorizer and have a delayed delivery. Therefore, such messages can also cause an issue for users.
To resolve this problem, avoid using the “Matches Patterns” condition. Instead, use “Contains Word” because this condition captures the string of words that you want to find within your transport rule. This significantly reduces the computing power that's required to process messages and also reduces the latency of messages within the environment. 
Note This is a "FAST PUBLISH" article created directly from within the Microsoft support organization. The information contained herein is provided as-is in response to emerging issues. As a result of the speed in making it available, the materials may include typographical errors and may be revised at any time without notice. See Terms of Use for other considerations.

Article ID: 3145489 - Last Review: 04/01/2016 09:35:00 - Revision: 2.0

Exchange Server 2016 Enterprise Edition, Exchange Server 2016 Standard Edition, Microsoft Exchange Server 2013 Enterprise, Microsoft Exchange Server 2013 Standard, Microsoft Exchange Server 2010 Enterprise, Microsoft Exchange Server 2010 Standard

  • KB3145489