Don Feliciano
2021-Nov-01 12:53 UTC
[EXT] SOLVED: Re: Dovecot does not start on MacOS 12.01
2G fails. This must be some change in MacOS 12 (Monterey). I have been running Dovecot for 10 years on MacOS with the same config, and only after upgrading to 12.0 did this issue surface.> On Nov 1, 2021, at 8:47 AM, Aki Tuomi <aki.tuomi at open-xchange.com> wrote: > > Ok... so for some reason the default_vsz_limit is too low for MacOS. > > Can you try > > default_vsz_limit = 2G? > > We don't recommend setting it to 0. > > Aki > >> On 01/11/2021 14:45 Don Feliciano <don.feliciano at icloud.com> wrote: >> >> >> Different: >> >> Nov 01 08:44:36 master: Error: service(imap-login): command startup failed, throttling for 8.000 secs >> Nov 01 08:44:36 imap-login: Fatal: master: service(imap-login): child 17371 returned error 89 (Fatal failure) >> >> >>> On Nov 1, 2021, at 8:42 AM, Aki Tuomi <aki.tuomi at open-xchange.com> wrote: >>> >>> >>> Do you get exactly same error message with that config or something else? >>> >>> Aki >>> >>> >>>> On 01/11/2021 14:39 Don Feliciano <don.feliciano at icloud.com> wrote: >>>> >>>> >>>> I just tried that solution, but it doesn't work. Only default_vsz_limit = 0 seems to work. >>>> >>>> >>>>> On Nov 1, 2021, at 2:38 AM, Aki Tuomi wrote: >>>>> >>>>> Hi! >>>>> >>>>> That solution is bit overly broad way to solve this, I would instead recommend >>>>> >>>>> service log { >>>>> vsz_limit = 0 >>>>> } >>>>> >>>>> so that only service log is affected. >>>>> >>>>> Aki >>>>> >>>>> >>>>>> On 31/10/2021 20:36 Don Feliciano wrote: >>>>>> >>>>>> >>>>>> >>>>>> A kind person who isn???t on the mailing list share the solution to this with me: >>>>>> >>>>>> default_vsz_limit = 0 >>>>>> >>>>>> >>>>>> >>>>>>> On Oct 28, 2021, at 12:12 PM, Don Feliciano wrote: >>>>>>> >>>>>>> Same issue in 2.3.17 >>>>>>> >>>>>>> dovecot-2.3.17.tar.gz: >>>>>>> ./configure --prefix=/usr/local/Cellar/dovecot/ 2.3.17 --libexecdir=/usr/local/Cellar/dovecot/2.3.17/libexec --sysconfdir=/usr/local/etc --localstatedir=/usr >>>>>>> make install >>>>>>> >>>>>>> dovecot-2.3-pigeonhole-0.5.17.tar.gz: >>>>>>> ./configure --with-dovecot=/usr/local/Cellar/dovecot/2.3.17/lib/dovecot --prefix=/usr/local/Cellar/dovecot/2.3.17 >>>>>>> make >>>>>>> make install >>>>>>> >>>>>>> sudo /usr/local/opt/dovecot/sbin/dovecot -F >>>>>>> Warning: fd limit (ulimit -n) is lower than required under max. load (256 < 1000), because of default_client_limit >>>>>>> Oct 28 12:08:48 service(log): Fatal: setrlimit(RLIMIT_DATA, 268435456): Invalid argument >>>>>>> >>>>>>> >>>>>>> >>>>>>>> On Oct 27, 2021, at 11:08 AM, Don Feliciano wrote: >>>>>>>> >>>>>>>> >>>>>>>> I've been happily running Dovecot on my Mac for many years (installed via Homebrew). After upgrading to Monterey (MacOS 12.01), it no longer starts: >>>>>>>> >>>>>>>> $ sw_vers >>>>>>>> ProductName: macOS >>>>>>>> ProductVersion: 12.0.1 >>>>>>>> BuildVersion: 21A559 >>>>>>>> >>>>>>>> $ uname -a >>>>>>>> Darwin dfelicia-mac 21.1.0 Darwin Kernel Version 21.1.0: Wed Oct 13 17:33:23 PDT 2021; root:xnu-8019.41.5~1/RELEASE_X86_64 x86_64 >>>>>>>> >>>>>>>> $ sudo dovecot -F >>>>>>>> Oct 27 10:11:18 service(log): Fatal: setrlimit(RLIMIT_DATA, 268435456): Invalid argument >>>>>>>> >>>>>>>> $ mount >>>>>>>> /dev/disk1s2s1 on / (apfs, sealed, local, read-only, journaled) >>>>>>>> devfs on /dev (devfs, local, nobrowse) >>>>>>>> /dev/disk1s5 on /System/Volumes/VM (apfs, local, noexec, journaled, noatime, nobrowse) >>>>>>>> /dev/disk1s3 on /System/Volumes/Preboot (apfs, local, journaled, nobrowse) >>>>>>>> /dev/disk1s6 on /System/Volumes/Update (apfs, local, jour naled, nobrowse) >>>>>>>> /dev/disk1s1 on /System/Volumes/Data (apfs, local, journaled, nobrowse) >>>>>>>> >>>>>>>> $ sudo dovecot -n >>>>>>>> # 2.3.16 (7e2e900c1a): /usr/local/etc/dovecot/dovecot.conf >>>>>>>> # Pigeonhole version 0.5.16 (09c29328) >>>>>>>> # OS: Darw in 21.1.0 x86_64 apfs >>>>>>>> # Hostname: dfelicia-mac >>>>>>>> default_internal_group = mail >>>>>>>> default_internal_user = _dovecot >>>>>>>> default_login_user = _dovenull >>>>>>>> first_valid_uid = 100 >>>>>>>> listen = 127.0.0.1 >>>>>>>> log_path = /var/log/dovecot.log >>>>>>>> mail_location = maildir:/usr/local/var/mail/%u >>>>>>>> managesieve_notify_capability = mailto >>>>>>>> managesieve_sieve_capability = fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox date index ihave duplicate mime foreverypart extracttext >>>>>>>> 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 = login >>>>>>>> driver = pam >>>>>>>> } >>>>>>>> protocols = imap >>>>>>>> service imap-login { >>>>>>>> inet_listener imap { >>>>>>>> address = 127.0.0.1 >>>>>>>> port = 143 >>>>>>>> } >>>>>>>> inet_listener imaps { >>>>>>>> address = 127.0.0.1 >>>>>>>> ssl = no >>>>>>>> } >>>>>>>> } >>>>>>>> ssl = no >>>>>>>> userdb { >>>>>>>> driver = passwd >>>>>>>> } >>>>>>>> >>>>>>>> $ ulimit -Ha >>>>>>>> core file size (blocks, -c) unlimited >>>>>>>> data seg size (kbytes, -d) unlimited >>>>>>>> file size (blocks, -f) unlimited >>>>>>>> max locked memory (kbytes, -l) unlimited >>>>>>>> max memory size (kbytes, -m) unlimited >>>>>>>> open files (-n) unlimited >>>>>>>> pipe size (512 bytes, -p) 1 >>>>>>>> stack size (kbytes, -s) 65532 >>>>>>>> cpu time (seconds, -t) unlimited >>>>>>>> max user processes (-u) 2784 >>>>>>>> virtual memory (kbytes, -v) unlimited >>-------------- next part -------------- An HTML attachment was scrubbed... URL: <https://dovecot.org/pipermail/dovecot/attachments/20211101/aca46045/attachment-0001.html>
I think this is happening because MacOS no longer supports RLIMIT_DATA. We'll try to look into this. default_vsz_limit = 0 seems good enough workaround. Aki> On 01/11/2021 14:53 Don Feliciano <don.feliciano at icloud.com> wrote: > > > 2G fails. > > This must be some change in MacOS 12 (Monterey). I have been running Dovecot for 10 years on MacOS with the same config, and only after upgrading to 12.0 did this issue surface. > > > On Nov 1, 2021, at 8:47 AM, Aki Tuomi wrote: > > > > Ok... so for some reason the default_vsz_limit is too low for MacOS. > > > > Can you try > > > > default_vsz_limit = 2G? > > > > We don't recommend setting it to 0. > > > > Aki > > > >> On 01/11/2021 14:45 Don Feliciano wrote: > >> > >> > >> Different: > >> > >> Nov 01 08:44:36 master: Error: service(imap-login): command startup failed, throttling for 8.000 secs > >> Nov 01 08:44:36 imap-login: Fatal: master: service(imap-login): child 17371 returned error 89 (Fatal failure) > >> > >> > >>> On Nov 1, 2021, at 8:42 AM, Aki Tuomi wrote: > >>> > >>> > >>> Do you get exactly same error message with that config or something else? > >>> > >>> Aki > >>> > >>> > >>>> On 01/11/2021 14:39 Don Feliciano wrote: > >>>> > >>>> > >>>> I just tried that solution, but it doesn't work. Only default_vsz_limit = 0 seems to work. > >>>> > >>>> > >>>>> On Nov 1, 2021, at 2:38 AM, Aki Tuomi wrote: > >>>>> > >>>>> Hi! > >>>>> > >>>>> That solution is bit overly broad way to solve this, I would instead recommend > >>>>> > >>>>> service log { > >>>>> vsz_limit = 0 > >>>>> } > >>>>> > >>>>> so that only service log is affected. > >>>>> > >>>>> Aki > >>>>> > >>>>> > >>>>>> On 31/10/2021 20:36 Don Feliciano wrote: > >>>>>> > >>>>>> > >>>>>> > >>>>>> A kind person who isn?t on the mailing list share the solution to this with me: > >>>>>> > >>>>>> default_vsz_limi t = 0 > >>>>>> > >>>>>> > >>>>>> > >>>>>>> On Oct 28, 2021, at 12:12 PM, Don Feliciano wrote: > >>>>>>> > >>>>>>> Same issue in 2.3.17 > >>>>>>> > >>>>>>> dovecot-2.3.17.tar.gz: > >>>>>>> ./configure --prefix=/usr/local/Cellar/dovecot/ 2.3.17 --libexecdir=/usr/local/Cellar/dovecot/2.3.17/libexec --sysconfdir=/usr/local/etc --localstatedir=/usr > >>>>>>> make install > >>>>>>> > >>>>>>> dovecot-2.3-pigeonhole-0.5.17.tar.gz: > >>>>>>> ./configure --with-dovecot=/usr/local/Cellar/dovecot/2.3.17/lib/dovecot --prefix=/usr/local/Cellar/dovecot/2.3.17 > >>>>>>> make > >>>>>>> make install > >>>>>>> > >>>>>>> sudo /usr/local/opt/dovecot/sbin/dovecot -F > >>>>>>> Warning: fd limit (ulimit -n) is lower than required under max. load (256 < 1000), because of default_client_limit > >>>>>>> Oct 28 12:08:48 service(log): Fatal: setrlimit(RLIMIT_DATA, 268435456): Invalid argument > >>>>>>> > >>>>>>> > >>>>>>> > >>>>>>>> On Oct 27, 2021, at 11: 08 AM, Don Feliciano wrote: > >>>>>>>> > >>>>>>>> > >>>>>>>> I've been happily running Dovecot on my Mac for many years (installed via Homebrew). After upgrading to Monterey (MacOS 12.01), it no longer starts: > >>>>>>>> > >>>>>>>> $ sw_vers > >>>>>>>> ProductName: macOS > >>>>>>>> ProductVersion: 12.0.1 > >>>>>>>> BuildVersion: 21A559 > >>>>>>>> > >>>>>>>> $ uname -a > >>>>>>>> Darwin dfelicia-mac 21.1.0 Darwin Kernel Version 21.1.0: Wed Oct 13 17:33:23 PDT 2021; root:xnu-8019.41.5~1/RELEASE_X86_64 x86_64 > >>>>>>>> > >>>>>>>> $ sudo dovecot -F > >>>>>>>> Oct 27 10:11:18 service(log): Fatal: setrlimit(RLIMIT_DATA, 268435456): Invalid argument > >>>>>>>> > >>>>>>>> $ mount > >>>>>>>> /dev/disk1s2s1 on / (apfs, sealed, local, read-only, journaled) > >>>>>>>> devfs on /dev (devfs, local, nobrowse) > >>>>>>>> /dev/disk1s5 on /System/Volumes/VM (apfs, local, noexec, journaled, noatime, nobrowse) > >>>>>>>> /dev/disk1s3 on /System/Volumes/Pre boot (apfs, local, journaled, nobrowse) > >>>>>>>> /dev/disk1s6 on /System/Volumes/Update (apfs, local, jour naled, nobrowse) > >>>>>>>> /dev/disk1s1 on /System/Volumes/Data (apfs, local, journaled, nobrowse) > >>>>>>>> > >>>>>>>> $ sudo dovecot -n > >>>>>>>> # 2.3.16 (7e2e900c1a): /usr/local/etc/dovecot/dovecot.conf > >>>>>>>> # Pigeonhole version 0.5.16 (09c29328) > >>>>>>>> # OS: Darw in 21.1.0 x86_64 apfs > >>>>>>>> # Hostname: dfelicia-mac > >>>>>>>> default_internal_group = mail > >>>>>>>> default_internal_user = _dovecot > >>>>>>>> default_login_user = _dovenull > >>>>>>>> first_valid_uid = 100 > >>>>>>>> listen = 127.0.0.1 > >>>>>>>> log_path = /var/log/dovecot.log > >>>>>>>> mail_location = maildir:/usr/local/var/mail/%u > >>>>>>>> managesieve_notify_capability = mailto > >>>>>>>> managesieve_sieve_capability = fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox date index ihave duplicate mime foreverypart extracttext > >>>>>>>> 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 = login > >>>>>>>> driver = pam > >>>>>>>> } > >>>>>>>> protocols = imap > >>>>>>>> service imap-login { > >>>>>>>> inet_listener imap { > >>>>>>>> address = 127.0.0.1 > >>>>>>>> port = 143 > >>>>>>>> } > >>>>>>>> inet_listener imaps { > >>>>>>>> address = 127.0.0.1 > >>>>>>>> ssl = no > >>>>>>>> } > >>>>>>>> } > >>>>>>>> ssl = no > >>>>>>>> userdb { > >>>>>>>> driver = passwd > >>>>>>>> } > >>>>>>>> > >>>>>>>> $ ulimit -Ha > >>>>>>>> core file size (blocks, -c) unlimited > >>>>>>>> data seg size (kbytes, -d) unlimited > >>>>>>>> file size (blocks, -f) unlimited > >>>>>>>> max locked memory (kbytes, -l) unlimited > >>>>>>>> max memory size (kbytes, -m) unlimited > >>>>>>>> open files (-n) unlimited > >>>>>>>> pipe size (512 bytes, -p) 1 > >>>>>>>> stack size (kbytes, -s) 65532 > >>>>>>>> cpu time (seconds, -t) unlimited > >>>>>>>> max user processes (-u) 2784 > >>>>>>>> virtual memory (kbytes, -v) unlimited > >>