[Dovecot] Dovecot discards mail over quota

Gary V mr88talent at gmail.com
Sun Jan 18 21:26:46 EET 2009


On 1/17/09, Timo Sirainen wrote:
 > On Jan 17, 2009, at 2:36 PM, Gary V wrote:
 > > Then a bounce is created stating the mail was rejected:
 > >
 > > Your message to <test at example.com> was automatically rejected:
 > > Quota exceeded (mailbox for user is full).
 > >
 > > Question: is it possible (without changing code) to alter this to
 > > where deliver would instead tempfail or something. Somehow it seems
 > > wrong to me to tell the MTA that everything is good, and then silently
 > > discard messages - regardless of the fact dovecot creates a bounce.
 > > This is not necessarily ideal either, but I _am_ wondering if this is
 > > configurable or not.
 > >
 >
 > a) deliver -e
 >
 > b) quota_full_tempfail=yes
 >
 > c) a+b
 >

Just as a matter of interest. On my Postfix system:

a) Using deliver -e, Postfix bounces the message immediately 5.7.0 ->
Subject: Undelivered Mail Returned to Sender. Partial body:
"<test at example.com>: permission denied. Command output: Quota exceeded
(mailbox for user is full)". Postfix does not retain the message.

b) quota_full_tempfail=yes: defers the message with 4.3.0. If the user
makes room for the message, then it will eventually be delivered. If
they don't, then _eventually_ a bounce will be sent. In this case the
bounce is less informative. Partial body: "<test at example.com>:
temporary failure". In the case where the message is not delivered,
using default settings in Postfix, the sender will be notified 5 days
after they sent the message.

c) For over quota with a+b, it behaves the same way as b, but the
bounce notice will be more informative: Partial body:
"<test at example.com>: temporary failure. Command output: Quota exceeded
(mailbox for user is full)".

I would say this is expected.

Each of the four possibilites has advantages and disadvantages, and
personally I think a) might be closest to "doing the right thing", but
it would be cool to have the option of deferring the mail (using
option a+b) and additionally have deliver immediately send a message
to the sender notifying them that their mail has been delayed due to
the recipient being over quota. Something like:

___________________________________
Mail Delay Notification
Your message to <user at example.com> has been delayed because the
recipient's maibox is full. Your message will be retained on our
server for an unspecified amount of time and a number delivery attemps
may be made on your behalf. If delivery eventually fails, you will be
sent a notification via email that delivery failed - or that your
message was undeliverable. Note: notifications of this type are often
identified as Junk Mail or Spam by mail systems! This aspect is beynd
our control, so it may be in your best interest to contact the
recipient by some other means and let them know you received this
message.
___________________________________

Of course, one big problem would be to only send the message once, and
not each time a delivery was attempted. No doubt there would be other
issues. I'm just throwing this out there as a thought. I have no idea
if would even be possible to implement something like this, or whether
there is any interest or not.

-- 
Gary V


More information about the dovecot mailing list