Bug 510633 - Dovecot fails to deliver big (more then 100-200kb) messages
Summary: Dovecot fails to deliver big (more then 100-200kb) messages
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Fedora
Classification: Fedora
Component: dovecot
Version: 11
Hardware: x86_64
OS: Linux
low
urgent
Target Milestone: ---
Assignee: Michal Hlavinka
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2009-07-09 22:48 UTC by disconnect0
Modified: 2009-07-10 00:20 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2009-07-10 00:20:14 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description disconnect0 2009-07-09 22:48:18 UTC
Description of problem:
Hello, I am having problems with Dovecot not delivering 'big' emails. Small email with 1-2 kb text delivered fine. If the message about 200kb long or more it freezes. I am also getting "copy: i_stream_read() failed: Permission denied" erros in Dovecot log files. I have tried switching off selinux and settings 777 permissions to my mail_location - it both dont help.

Here is my cfg info:
# 1.2.0: /etc/dovecot.conf
# OS: Linux 2.6.29.5-191.fc11.x86_64 x86_64 Fedora release 11 (Leonidas) ext4
protocols: imap pop3
listen: *
ssl: no
login_dir: /var/run/dovecot/login
login_executable(default): /usr/libexec/dovecot/imap-login
login_executable(imap): /usr/libexec/dovecot/imap-login
login_executable(pop3): /usr/libexec/dovecot/pop3-login
login_greeting: PREVED MEDVED
first_valid_uid: 8
last_valid_uid: 8
first_valid_gid: 12
last_valid_gid: 12
mail_location: maildir:/home/email/%d/%n
mail_debug: yes
mail_executable(default): /usr/libexec/dovecot/imap
mail_executable(imap): /usr/libexec/dovecot/imap
mail_executable(pop3): /usr/libexec/dovecot/pop3
mail_plugin_dir(default): /usr/lib64/dovecot/imap
mail_plugin_dir(imap): /usr/lib64/dovecot/imap
mail_plugin_dir(pop3): /usr/lib64/dovecot/pop3
imap_client_workarounds(default): delay-newmail netscape-eoh tb-extra-mailbox-sep
imap_client_workarounds(imap): delay-newmail netscape-eoh tb-extra-mailbox-sep
imap_client_workarounds(pop3):
pop3_client_workarounds(default):
pop3_client_workarounds(imap):
pop3_client_workarounds(pop3): outlook-no-nuls oe-ns-eoh
auth default:
  mechanisms: plain login digest-md5 cram-md5
  passdb:
    driver: sql
    args: /etc/dovecot-sql.conf
  userdb:
    driver: sql
    args: /etc/dovecot-sql.conf
  socket:
    type: listen
    master:
      path: /var/run/dovecot/auth-master
      mode: 432
      user: mail
      group: mail

Version-Release number of selected component (if applicable):
I'm running FC11 with exim and dovecot installed. Accounts are stored in PostgreSQL database.
I have this for dovecot-1.2-0.rc6.1.fc11.x86_64 and dovecot-1.2.0-3.fc11.x86_64

Actual results:
Emails freezed by SMTP server

Expected results:
Emails delivered to mail_location

Additional info:
There was no problems on my old FC9 setup with dovecot-1.0* and about same config as above.

I get this in /var/log/maillog when i'm trying to force delivery of freezed message (exim -M <message-id>):
Jul 10 02:45:25 phobos dovecot: deliver(m.dmitrieva): auth input: home=eds.su/m.dmitrieva/
Jul 10 02:45:25 phobos dovecot: deliver(m.dmitrieva): auth input: uid=8
Jul 10 02:45:25 phobos dovecot: deliver(m.dmitrieva): auth input: gid=12
Jul 10 02:45:25 phobos dovecot: deliver(m.dmitrieva): Home dir not found: eds.su/m.dmitrieva/
Jul 10 02:45:25 phobos dovecot: deliver(m.dmitrieva): maildir: data=/home/email/eds.su/m.dmitrieva
Jul 10 02:45:25 phobos dovecot: deliver(m.dmitrieva): maildir++: root=/home/email/eds.su/m.dmitrieva, index=, control=, inbox=/home/email/eds.su/m.dmitrieva
Jul 10 02:45:25 phobos dovecot: deliver(m.dmitrieva): Namespace : Using permissions from /home/email/eds.su/m.dmitrieva: mode=0700 gid=-1
Jul 10 02:45:25 phobos dovecot: deliver(m.dmitrieva): mkdir_parents_chown(eds.su/m.dmitrieva/) failed: Permission denied (euid=8(mail) egid=12(mail))
Jul 10 02:45:25 phobos dovecot: deliver(m.dmitrieva): copy: i_stream_read() failed: Permission denied
Jul 10 02:45:25 phobos dovecot: deliver(m.dmitrieva): msgid=<63F3C8CBDB91EF4CAE94833FFD0ED62805E0DEB9.ru>: save failed to INBOX: Internal error occurred. Refer to server log for more information. [2009-07-10 02:45:25]

And i got this in /var/log/exim/main.log:
2009-07-10 02:45:25 1MOtm7-0002JR-Ss == m.dmitrieva <M.dmitrieva> R=dovecot_user T=dovecot_delivery defer (0): Child process of dovecot_delivery transport returned 75 (could mean temporary error) from command: /usr/libexec/dovecot/deliver

The maildir is owned by dovecot and writable for it. I have no problems with delivering small mail, only big.
ls -lZ /home/email
drwx------. mail mail unconfined_u:object_r:dovecot_var_lib_t:s0 eds.su
drwx------. mail mail unconfined_u:object_r:dovecot_var_lib_t:s0 reklamka.biz

Comment 1 disconnect0 2009-07-09 23:06:20 UTC
The ext4 filesystem used for mail_location.

Comment 2 disconnect0 2009-07-10 00:20:14 UTC
http://hg.dovecot.org/dovecot-1.2/rev/6d7f6ea02e17
Problem is solved. homedir should not be relatibe path, but absolute; it seems was a pure luck that relative paths works for me before.

It seems relateve homedirs will not be supported in future versions of Dovecot:
http://hg.dovecot.org/dovecot-1.2/rev/dd49cf3fd2c9


Note You need to log in before you can comment on or make changes to this bug.