Op 3/22/2018 om 12:14 AM schreef Dorian Taylor:
Hello,
I have encountered a problem attempting to run a program in a sieve pipe. The program is a Perl script that loads a number of binary (XS) modules at runtime. The program crashes, it appears, if it tries to load too many. The (non-Perl part of the) error message is "failed to map segment from shared object” — no additional information.
Cryptic error messages like this have the odour of imposed resource restrictions, so I’m wondering if there are any on the pipe/filter/execute implementation (e.g. via program_client_run).
Any configuration knobs I can twiddle? Any insights for debugging?
PS this is the dovecot 2.2.22 (fe789d2), the one that ships with Ubuntu Xenial.
Those knobs depend a on your config. If there is truly some resource limit causing this, it could be the vsz_limit of the (parent) process invoking your program. Which service is doing that depends on your config, either LMTP, the script service (when you're using socket programs), or dovecot-lda (so, basically your MTA - not controlled by Dovecot obviously).
https://wiki.dovecot.org/Services#Service_limits
Regards,
Stephan.