Hello,

multiple times per day one of our Dovecot servers has the problem that it 
suddenly refuses to accept new connections and then floods the logs with these 
messages:

Dec  2 12:43:06 alfa3201 dovecot: pop3-login: Error: fd_send(pop3, 18) failed: 
Too many references: cannot splice
Dec  2 12:43:07 alfa3201 dovecot: pop3-login: Error: fd_send(pop3, 18) failed: 
Too many references: cannot splice
Dec  2 12:43:07 alfa3201 dovecot: imap-login: Error: fd_send(imap, 16) failed: 
Too many references: cannot splice
Dec  2 12:43:07 alfa3201 dovecot: imap-login: Error: fd_send(imap, 16) failed: 
Too many references: cannot splice


We have to either do a restart of the server or a doveadm kick on all users to 
make it reachable again. On my search for a solution I found a similar report 
from March[1] however without a fix. 


[1] http://dovecot.org/pipermail/dovecot/2016-March/103514.html


dovecot -n

# 2.2.24 (a82c823): /etc/dovecot/dovecot.conf
# Pigeonhole version 0.4.13 (7b14904)
# OS: Linux 4.4.17-040417-generic x86_64 Debian 8.6
auth_mechanisms = plain login
debug_log_path = /var/log/dovecot-debug.log
default_client_limit = 8003
default_process_limit = 2000
default_vsz_limit = 512 M
disable_plaintext_auth = no
listen = *
login_greeting = [CENSORED] - ready.
mail_location = 
maildir:~/Maildir:CONTROL=/opt/dovecot/control/%n-control:INDEX=/opt/dovecot/index/%n
mail_plugins = " stats quota"
namespace inbox {
  inbox = yes
  location =
  mailbox Drafts {
    auto = subscribe
    special_use = \Drafts
  }
  mailbox Spam {
    auto = subscribe
    special_use = \Junk
  }
  mailbox Sent {
    auto = subscribe
    special_use = \Sent
  }
  mailbox "Sent Messages" {
    special_use = \Sent
  }
  mailbox Trash {
    auto = subscribe
    special_use = \Trash
  }
  prefix = INBOX.
  separator = .
}
passdb {
  args = dovecot-%s
  driver = pam
}
plugin {
  quota = fs:%n(soft quota)
  sieve = ~/.dovecot.sieve
  sieve_dir = ~/sieve
  stats_command_min_time = 1 mins
  stats_domain_min_time = 12 hours
  stats_ip_min_time = 12 hours
  stats_memory_limit = 16 M
  stats_refresh = 30 secs
  stats_session_min_time = 15 mins
  stats_track_cmds = no
  stats_user_min_time = 24 hours
}
protocols = " imap pop3"
service auth {
  unix_listener /var/spool/postfix/private/auth {
    group = postfix
    mode = 0666
    user = postfix
  }
}
service imap-login {
  inet_listener imaps {
    ssl = yes
  }
}
service imap-postlogin {
  executable = script-login /etc/dovecot/post-login/expire.sh
}
service imap {
  executable = imap imap-postlogin
}
service pop3-login {
  inet_listener pop3 {
    port = 110
  }
  inet_listener pop3s {
    port = 995
    ssl = yes
  }
}
service pop3-postlogin {
  executable = script-login /etc/dovecot/post-login/expire.sh
}
service pop3 {
  executable = pop3 pop3-postlogin
}
service quota-status {
  executable = quota-status -p postfix
  unix_listener /var/spool/postfix/private/quota {
    group = postfix
    mode = 0660
    user = postfix
  }
}
service stats {
  fifo_listener stats-mail {
    mode = 0666
    user = dovecot
  }
}
ssl_ca = </etc/ssl.crt/ca-admin.crt
ssl_cert = </etc/ssl.crt/admin.crt
ssl_key = </etc/ssl.key/admin.key
ssl_protocols = !SSLv2 !SSLv3
userdb {
  driver = passwd
}
protocol imap {
  imap_capability = +XLIST +NAMESPACE METADATA QUOTA
  imap_idle_notify_interval = 1 mins
  mail_max_userip_connections = 500
  mail_plugins = " stats quota imap_quota imap_stats"
}
protocol pop3 {
  mail_max_userip_connections = 500
  mail_plugins = " stats quota"
  pop3_client_workarounds = outlook-no-nuls oe-ns-eoh
}

Reply via email to