Edgewall Software
Modify

Opened 16 years ago

Closed 16 years ago

#7709 closed enhancement (worksforme)

Asynchronous Mailing

Reported by: freakm4ster@… Owned by: Emmanuel Blot
Priority: normal Milestone:
Component: notification Version: 0.11.1
Severity: normal Keywords:
Cc: Branch:
Release Notes:
API Changes:
Internal Changes:

Description

Hi there,

I use a lot the build-in notification system of trac. It works good so far, but there is small thing which could been done better:

When one uses a rather slow mailserver to deliver the notifications, like I do, the server takes a while to respond, after e.g. submitting a ticket, in order to send mails via the mailserver. But, when I use trac functions without notification, server respones are perfectly fast. I'd guess the sever takes so long to respond, because the mailfunction is called by the same thread as the rest of the process.

My Question is: Could the maildelivery process be outsourced in another thread, maybe a backend queue, so that server responses are faster and the enduser can work more quickier? Or am I totally wrong here?! :D

I appriciate your effort, Christoph

Attachments (0)

Change History (2)

comment:1 by Emmanuel Blot, 16 years ago

This question has already been addressed in several other tickets.

Trac being a request-based application, I really don't think spawning background threads is a good idea. It's far from being as simple as it sounds, and would bring its own drawbacks.

One of the suggested solution is to spawn a sendmail external process to perform email delivery to the SMTP server, rather than using SMTP/TCP synchronous connections.

You can also set up a local SMTP relay to deliver email to the main SMTP server, if your main SMTP server is too slow to serve incoming email requests.

IMHO, Trac should not be overloaded with code to address external issues, such as a sloppy SMTP server. At least, not in Trac core - may be as an external plugin.

comment:2 by Remy Blank, 16 years ago

Resolution: worksforme
Status: newclosed

I agree, the solution is to install your own local SMTP server as a relay.

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain Emmanuel Blot.
The resolution will be deleted. Next status will be 'reopened'.
to The owner will be changed from Emmanuel Blot to the specified user.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.