Paul Fisher | 17 Jun 2012 05:54
Favicon

[Bug 1262] New: wait db is used for SMTP transports limited to one message per connection

------- You are receiving this mail because: -------
You are on the CC list for the bug.

http://bugs.exim.org/show_bug.cgi?id=1262
           Summary: wait db is used for SMTP transports limited to one
                    message per connection
           Product: Exim
           Version: 4.77
          Platform: All
        OS/Version: Linux
            Status: NEW
          Severity: bug
          Priority: medium
         Component: Transports
        AssignedTo: nigel <at> exim.org
        ReportedBy: pnfisher <at> twitter.com
                CC: exim-dev <at> exim.org, pdp <at> exim.org

Created an attachment (id=578)
 --> (http://bugs.exim.org/attachment.cgi?id=578)
disable call to transport_update_waiting if connection_max_messages is set to 1

The wait hints database is not needed when an SMTP transport has
connection_max_messages set to 1.

When connection_max_messages is set to 1, transport_update_waiting is called
and needlessly adds message ids to the wait db which can never be
used/processed by transport_check_waiting since that function will immediately
return FALSE (no more messages can be sent down the existing connection).

The attached patch prevents transport_update_waiting from being called by the
SMTP transport if connection_max_messages is set to 1. The call to
transport_check_waiting does not need to be modified since
transport_check_waiting will already immediately return FALSE when
connection_max_messages is set to 1.

In the particular configuration where this patch is in use, queue_smtp_domains
is set to * and a separate transport with connection_max_messages set to 1 is
used for sending high volumes of email to an ISP's SMTP servers that only
accept one message per TCP connection. For this use case, the change provides a
substantial performance and resource improvement.

--

-- 
Configure bugmail: http://bugs.exim.org/userprefs.cgi?tab=email


Gmane