GreenArrow Email Software Documentation

Pausing Domains

Introduction

GreenArrow can be configured to match remote SMTP responses against one or more regular expressions. Such a match will pause subsequent delivery attempts from the same RFC5321.MailFrom or RFC5322.From domain when the recipient domain matches the recipient domain that triggered the pause, or when the delivery attempt is in the same throttle grouping as that which triggered the pause.

Configuration

This is done using either the smtp_pattern or smtp_match_pause_domain configuration directives.

Pause configuration has the following key attributes:

Pause Type

This results in either the RFC5321.MailFrom domain or the RFC5322.From domain being paused.

Pause Duration

The length of time the pause will be in effect. This defaults to 10 minutes.

Pause Message

The message used on subsequent deferrals due to this pause. This defaults to either Deliveries to this recipient domain from this RFC5321.MailFrom domain are paused. or Deliveries to this recipient domain from this RFC5322.From domain are paused..

Pause Percentage

The percentage of delivery attempts that this pause should affect. This provides you a way to pause deliveries on a portion of the regular delivery attempts, while allowing some delivery attempts to proceed. These deliveries have no effect on the existence of the pause (i.e. GreenArrow will not cancel a pause early because a permitted delivery succeeds).

Order of evaluation:

Paused Domain Behavior

When a pause is triggered, either the RFC5321.MailFrom domain or the RFC5322.From domain from the original message is recorded.

For the duration of the pause, the following will be considered for each subsequent delivery attempt.

  • Does the message match the domain (either the RFC5321.MailFrom domain or the RFC5322.From domain, depending on the smtp_pattern or smtp_match_pause_domain configuration) of the message that triggered the pause, and
  • Are any of the following true:
    • The message recipient domain matches the recipient domain of the message that triggered the pause, or
    • The throttling rule is the same as that used for the message that triggered the pause, or
    • The throttling rule has the same list of domains as the list of domains in that used for the message that triggered the pause.

If the above evaluates to true, then the delivery attempt “matches” the pause. If multiple active pause records match a delivery attempt, then the earliest triggered pause is used.

Once a matching pause is found, the Pause Percentage is evaluated: if a Pause Percentage was configured in the rule that triggered the pause, then only the specified percentage of delivery attempts will be affected by the pause. Unaffected delivery attempts will proceed as normal.

This is determined by creating a random number between 0.0 and 100.0 for each delivery attempt and comparing to the Pause Percentage. In other words, GreenArrow relies on statistical normality of the random number generator to ensure we approximately honor the requested percentage, and small sample sizes may deviate from the configured Pause Percentage.

If the delivery attempt is affected by the pause, it will be deferred with the configured (or default) message. If using the default messages (i.e. a message override is not specified), then the delivery attempt will be considered status=connmaxout.

Relay Servers

Delivery attempts through Relay Servers neither trigger pauses nor are affected by pauses. Relay Servers do not interact with the systems described in this document.

List or Remove Paused Domains

Paused domains may be reviewed or removed in the following ways:

Paused Domains User Interface

Paused domains may be reviewed in the “Paused Domains” screen (found under the “Throttling Configuration” section).

Domains can be unpaused by clicking the “play” icon to the right of the table row.


Copyright © 2012–2025 GreenArrow Email