[Dovecot] location of temporary files in deliver

Stuart Henderson stu at spacehopper.org
Wed Feb 4 03:24:47 EET 2009


deliver has the following:

-- -- --
/* After buffer grows larger than this, create a temporary file to /tmp
   where to read the mail. */
#define MAIL_MAX_MEMORY_BUFFER (1024*128)

...

static struct istream *create_raw_stream(int fd, time_t *mtime_r)

...
        input = i_stream_create_seekable(input_list, MAIL_MAX_MEMORY_BUFFER,
                                         "/tmp/dovecot.deliver."); 
-- -- --

On most of my systems, /tmp is relatively small (a few hundred MB, and sometimes
on ramdisk), and I like to use /var/tmp for larger temp space.

I just had a problem where I exceeded the space available in /tmp while
delivering a (multi recipient) message and had to modify the above line to
use an alternative location, and recompile.

Would it be appropriate to make this a configurable option instead?

Thanks.

Feb  3 15:14:51 mh1-pl7 deliver(169 at example.com): write_full(/tmp/dovecot.deliver....) failed: No space left on device
Feb  3 15:14:51 mh1-pl7 deliver(149 at example.com): write_full(/tmp/dovecot.deliver....) failed: No space left on device
Feb  3 15:14:51 mh1-pl7 deliver(opx-cc at example.com): write_full(/tmp/dovecot.deliver....) failed: No space left on device
Feb  3 15:14:51 mh1-pl7 deliver(142 at example.com): write_full(/tmp/dovecot.deliver....) failed: No space left on device
Feb  3 15:14:51 mh1-pl7 deliver(165 at example.com): write_full(/tmp/dovecot.deliver....) failed: No space left on device
Feb  3 15:14:51 mh1-pl7 deliver(152 at example.com): stat(/tmp/Dovecot Delivery Mail) failed: No space left on device
Feb  3 15:14:51 mh1-pl7 deliver(152 at example.com): msgid=<49885EB9.60706 at example.com>: save failed to INBOX: BUG: Unknown internal error
Feb  3 15:14:51 mh1-pl7 deliver(152 at example.com): sieve runtime error: Keep: Generic Error
Feb  3 15:14:51 mh1-pl7 deliver(152 at example.com): sieve_execute_bytecode(/home/vmail/example.com/152/.dovecot.sievec) failed
Feb  3 15:14:51 mh1-pl7 deliver(125 at example.com): stat(/tmp/Dovecot Delivery Mail) failed: No space left on device
Feb  3 15:14:51 mh1-pl7 deliver(125 at example.com): msgid=<49885EB9.60706 at example.com>: save failed to INBOX: BUG: Unknown internal error
Feb  3 15:14:51 mh1-pl7 deliver(125 at example.com): sieve runtime error: Keep: Generic Error
Feb  3 15:14:51 mh1-pl7 deliver(125 at example.com): sieve_execute_bytecode(/home/vmail/example.com/125/.dovecot.sievec) failed




More information about the dovecot mailing list