James Brown
2023-Feb-20  06:25 UTC
service(imap-login): Fatal: setrlimit(RLIMIT_DATA, 268435456): Invalid argument macOS
I fixed the issue with Dovecot not starting on macOS Ventura by adding this to
10-master.conf:
service log {
  vsz_limit = 0
}
But now when I try to login via Imap on port 143 I get the same error for
imap-login:
Feb 20 15:55:41 imap-login: Error: Feb 20 15:55:41 service(imap-login): Fatal:
setrlimit(RLIMIT_DATA, 268435456): Invalid argument
Feb 20 15:55:41 imap-login: Fatal: master: service(imap-login): child 11781
returned error 89 (Fatal failure)
Feb 20 15:55:41 master: Error: service(imap-login): command startup failed,
throttling for 60.000 secs
Feb 20 16:13:04 imap-login: Error: Feb 20 16:13:04 service(imap-login): Fatal:
setrlimit(RLIMIT_DATA, 268435456): Invalid argument
Feb 20 16:13:04 imap-login: Fatal: master: service(imap-login): child 20370
returned error 89 (Fatal failure)
Feb 20 16:13:04 master: Error: service(imap-login): command startup failed,
throttling for 60.000 secs
Config:
sudo /usr/local/sbin/dovecot -n
# 2.3.20 (80a5ac675d): /usr/local/etc/dovecot/dovecot.conf
# OS: Darwin 22.3.0 arm64  apfs
# Hostname: mail-server-mac-studio.local
auth_mechanisms = plain login
auth_verbose = yes
auth_verbose_passwords = yes
default_internal_group = mail
default_internal_user = _dovecot
default_login_user = _dovenull
first_valid_gid = 0
first_valid_uid = 102
last_valid_gid = 501
last_valid_uid = 105
log_path = /var/log/dovecot.log
mail_gid = 102
mail_location = maildir:/usr/local/virtual/%d/%u
mail_uid = 102
namespace inbox {
  inbox = yes
  location = 
  mailbox Drafts {
    special_use = \Drafts
  }
  mailbox Junk {
    special_use = \Junk
  }
  mailbox Sent {
    special_use = \Sent
  }
  mailbox "Sent Messages" {
    special_use = \Sent
  }
  mailbox Trash {
    special_use = \Trash
  }
  prefix = 
}
passdb {
  args = /usr/local/etc/dovecot/dovecot-sql.conf.ext
  driver = sql
}
protocols = imap pop3
service auth {
  unix_listener /var/spool/postfix/private/auth {
    group = _postfix
    mode = 0660
    user = _postfix
  }
  unix_listener auth-userdb {
    mode = 0660
    user = _vmail
  }
}
service imap-login {
  vsz_limit = 0
}
service log {
  vsz_limit = 0
}
ssl_cert = </etc/letsencrypt/live/mail.bordo.com.au/fullchain.pem
ssl_dh = # hidden, use -P to show it
ssl_key = # hidden, use -P to show it
userdb {
  driver = prefetch
}
userdb {
  args = /usr/local/etc/dovecot/dovecot-sql.conf.ext
  driver = sql
}
protocol imap {
  mail_max_userip_connections = 40
}
Quitting Dovecot and restarting and I now get:
Feb 20 17:01:11 master: Info: Dovecot v2.3.20 (80a5ac675d) starting up for imap,
pop3 (core dumps disabled)
Feb 20 17:01:11 master: Error: service(anvil): command startup failed,
throttling for 2.000 secs
Then trying to connect on port 143 log says:
Feb 20 17:20:08 master: Error: service(config): command startup failed,
throttling for 2.000 secs
Feb 20 17:20:08 config: Error: Feb 20 17:20:08 service(config): Fatal:
setrlimit(RLIMIT_DATA, 268435456): Invalid argument
Feb 20 17:20:08 anvil: Fatal: master: service(anvil): child 43250 returned error
89 (Fatal failure)
Feb 20 17:20:08 config: Fatal: master: service(config): child 52530 returned
error 89 (Fatal failure)
Feb 20 17:20:08 stats: Fatal: master: service(stats): child 52531 returned error
89 (Fatal failure)
Feb 20 17:20:08 stats: Error: Feb 20 17:20:08 service(stats): Fatal:
setrlimit(RLIMIT_DATA, 268435456): Invalid argument
Feb 20 17:20:08 master: Error: service(stats): command startup failed,
throttling for 2.000 secs
Feb 20 17:20:10 config: Error: Feb 20 17:20:10 service(config): Fatal:
setrlimit(RLIMIT_DATA, 268435456): Invalid argument
Feb 20 17:20:10 config: Fatal: master: service(config): child 52532 returned
error 89 (Fatal failure)
Feb 20 17:20:10 master: Error: service(config): command startup failed,
throttling for 4.000 secs
Feb 20 17:20:10 imap-login: Fatal: Error reading configuration:
read(/usr/local/var/run/dovecot/config) failed: EOF - Also failed to read config
by executing doveconf: /usr/local/var/run/dovecot/config is a UNIX socket (path
is from CONFIG_FILE environment)
Feb 20 17:20:10 master: Error: service(imap-login): command startup failed,
throttling for 2.000 secs
Any suggestions? This is really driving me crazy!
thanks, James.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<https://dovecot.org/pipermail/dovecot/attachments/20230220/68f9e03c/attachment-0001.htm>
Aki Tuomi
2023-Feb-21  07:58 UTC
service(imap-login): Fatal: setrlimit(RLIMIT_DATA, 268435456): Invalid argument macOS
This sounds like macOS not liking RLIMIT_DATA. You can try setting default_vsz_limit = 0 and see if that helps. Aki> On 20/02/2023 08:25 EET James Brown <jlbrown at bordo.com.au> wrote: > > > I fixed the issue with Dovecot not starting on macOS Ventura by adding this to 10-master.conf: > > service log { > vsz_limit = 0 > } > > But now when I try to login via Imap on port 143 I get the same error for imap-login: > > Feb 20 15:55:41 imap-login: Error: Feb 20 15:55:41 service(imap-login): Fatal: setrlimit(RLIMIT_DATA, 268435456): Invalid argument > Feb 20 15:55:41 imap-login: Fatal: master: service(imap-login): child 11781 returned error 89 (Fatal failure) > Feb 20 15:55:41 master: Error: service(imap-login): command startup failed, throttling for 60.000 secs > Feb 20 16:13:04 imap-login: Error: Feb 20 16:13:04 service(imap-login): Fatal: setrlimit(RLIMIT_DATA, 268435456): Invalid argument > Feb 20 16:13:04 imap-login: Fatal: master: service(imap-login): child 20370 returned error 89 (Fatal failure) > Feb 20 16:13:04 master: Error: service(imap-login): command startup failed, throttling for 60.000 secs > > Config: > > sudo /usr/local/sbin/dovecot -n > # 2.3.20 (80a5ac675d): /usr/local/etc/dovecot/dovecot.conf > # OS: Darwin 22.3.0 arm64 apfs > # Hostname: mail-server-mac-studio.local > auth_mechanisms = plain login > auth_verbose = yes > auth_verbose_passwords = yes > default_internal_group = mail > default_internal_user = _dovecot > default_login_user = _dovenull > first_valid_gid = 0 > first_valid_uid = 102 > last_valid_gid = 501 > last_valid_uid = 105 > log_path = /var/log/dovecot.log > mail_gid = 102 > mail_location = maildir:/usr/local/virtual/%d/%u > mail_uid = 102 > namespace inbox { > inbox = yes > location > mailbox Drafts { > special_use = \Drafts > } > mailbox Junk { > special_use = \Junk > } > mailbox Sent { > special_use = \Sent > } > mailbox "Sent Messages" { > special_use = \Sent > } > mailbox Trash { > special_use = \Trash > } > prefix > } > passdb { > args = /usr/local/etc/dovecot/dovecot-sql.conf.ext > driver = sql > } > protocols = imap pop3 > service auth { > unix_listener /var/spool/postfix/private/auth { > group = _postfix > mode = 0660 > user = _postfix > } > unix_listener auth-userdb { > mode = 0660 > user = _vmail > } > } > service imap-login { > vsz_limit = 0 > } > service log { > vsz_limit = 0 > } > ssl_cert = </etc/letsencrypt/live/mail.bordo.com.au/fullchain.pem > ssl_dh = # hidden, use -P to show it > ssl_key = # hidden, use -P to show it > userdb { > driver = prefetch > } > userdb { > args = /usr/local/etc/dovecot/dovecot-sql.conf.ext > driver = sql > } > protocol imap { > mail_max_userip_connections = 40 > } > > Quitting Dovecot and restarting and I now get: > > Feb 20 17:01:11 master: Info: Dovecot v2.3.20 (80a5ac675d) starting up for imap, pop3 (core dumps disabled) > Feb 20 17:01:11 master: Error: service(anvil): command startup failed, throttling for 2.000 secs > > Then trying to connect on port 143 log says: > > Feb 20 17:20:08 master: Error: service(config): command startup failed, throttling for 2.000 secs > Feb 20 17:20:08 config: Error: Feb 20 17:20:08 service(config): Fatal: setrlimit(RLIMIT_DATA, 268435456): Invalid argument > Feb 20 17:20:08 anvil: Fatal: master: service(anvil): child 43250 returned error 89 (Fatal failure) > Feb 20 17:20:08 config: Fatal: master: service(config): child 52530 returned error 89 (Fatal failure) > Feb 20 17:20:08 stats: Fatal: master: service(stats): child 52531 returned error 89 (Fatal failure) > Feb 20 17:20:08 stats: Error: Feb 20 17:20:08 service(stats): Fatal: setrlimit(RLIMIT_DATA, 268435456): Invalid argument > Feb 20 17:20:08 master: Error: service(stats): command startup failed, throttling for 2.000 secs > Feb 20 17:20:10 config: Error: Feb 20 17:20:10 service(config): Fatal: setrlimit(RLIMIT_DATA, 268435456): Invalid argument > Feb 20 17:20:10 config: Fatal: master: service(config): child 52532 returned error 89 (Fatal failure) > Feb 20 17:20:10 master: Error: service(config): command startup failed, throttling for 4.000 secs > Feb 20 17:20:10 imap-login: Fatal: Error reading configuration: read(/usr/local/var/run/dovecot/config) failed: EOF - Also failed to read config by executing doveconf: /usr/local/var/run/dovecot/config is a UNIX socket (path is from CONFIG_FILE environment) > Feb 20 17:20:10 master: Error: service(imap-login): command startup failed, throttling for 2.000 secs > > Any suggestions? This is really driving me crazy! > > thanks, James.