james-server-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Serge Knystautas" <ser...@lokitech.com>
Subject Re: Sticking with one undeliverable message
Date Fri, 08 Mar 2002 14:51:36 GMT
The linear processor (I guess what you're seeing in JamesSpoolManager) does
not handle mail delivery.  It handles moving messages through the various
processors, and there's really no reason to delay that.  Remote delivery is
handled by a mailet called RemoteDelivery and that does use the
accept(delay) method.

The store method in the mail repositories should be setting last updated
each time.

RemoteDelivery also handles counting the number of retries (you'll find the
settings to change both the # of retries and the delay to take in the
configuration of the RemoteDelivery mailet)

Serge Knystautas
Loki Technologies - Unstoppable Websites
----- Original Message -----
From: "Gordon Ross" <G.Ross@ccw.gov.uk>
To: <james-dev@jakarta.apache.org>
Sent: Friday, March 08, 2002 3:41 AM
Subject: Sticking with one undeliverable message

> Hi,
> You've probabley seen me open my big mouth in the users forum, so here
> I am to make a complete fool of myself...
> I've had a look at the source for the "current" version of James
> (2.0a2) to look at the problem of the smtp mailer sticking with one
> undeliverable message. (which incidently is the bug that I logged on
> bugzilla)
> From what I can see, in the JamesSpoolManager run() method, a message
> is obtained via accept(), and then delivery attempted for that message.
> (Fair enough) and if delivery fails, the exception is trapped. However,
> nothing else happens when this exception is caught. Also, as accept()
> provides no guarentee as to the order in which messages are retrieved
> from the spool, then there is every chance that the faulty message will
> be returned straight away.
> My Suggestion, is that:
> 1) Instead of using accept(), accept(delay) should be used.
> 2) If the message cannot be delivered, then it should be updated via
> setLastUpdated(), so that accept(delay) won't retireve it straight
> away.
> However, before I try this, one question I have is:
> How/where does the system check whether a message has exceeded is
> re-try count and bouce it back ?
> Gordon Ross,
> Network Manager,
> Countryside Council for Wales

To unsubscribe, e-mail:   <mailto:james-dev-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:james-dev-help@jakarta.apache.org>

View raw message