Tracking down signaled to death by 11 errors
Shawn Sivy
ssivy at tcnj.edu
Tue Jun 1 10:20:41 EDT 2004
I was able to get the truss output of one of the imapd processes that
died. I also have the core file that was generated. Is there anything
I can do with the core file to see what was happening at the time it
died? Here's the last few lines of the truss output if it helps.
open("33275.", O_RDONLY) = 17
fstat(17, 0xFFBFD048) = 0
mmap(0x00000000, 2444, PROT_READ, MAP_SHARED, 17, 0) = 0xFEDD0000
close(17) = 0
munmap(0xFEDD0000, 2444) = 0
open("33276.", O_RDONLY) = 17
fstat(17, 0xFFBFD048) = 0
mmap(0x00000000, 2444, PROT_READ, MAP_SHARED, 17, 0) = 0xFEDD0000
close(17) = 0
Incurred fault #6, FLTBOUNDS %pc = 0x00044488
siginfo: SIGSEGV SEGV_MAPERR addr=0x37A13544
Received signal #11, SIGSEGV [default]
siginfo: SIGSEGV SEGV_MAPERR addr=0x37A13544
-Shawn Sivy
The College of New Jersey
Shawn Sivy wrote:
> After the upgrade to Cyrus IMAP 2.2.5 (SASL 2.1.18), I've been seeing
> a lot of these errors in the logs:
>
> Jun 1 08:42:19 cyrus master[21185]: [ID 970914 local6.error] process
> 21886 exited, signaled to death by 11
> Jun 1 08:43:26 cyrus master[21185]: [ID 970914 local6.error] process
> 20660 exited, signaled to death by 11
> Jun 1 08:43:43 cyrus master[21185]: [ID 970914 local6.error] process
> 20133 exited, signaled to death by 11
> Jun 1 08:47:02 cyrus master[21185]: [ID 970914 local6.error] process
> 23236 exited, signaled to death by 11
> Jun 1 08:47:20 cyrus master[21185]: [ID 970914 local6.error] process
> 23972 exited, signaled to death by 11
> Jun 1 08:47:58 cyrus master[21185]: [ID 970914 local6.error] process
> 23751 exited, signaled to death by 11
> Jun 1 08:48:05 cyrus master[21185]: [ID 970914 local6.error] process
> 21258 exited, signaled to death by 11
> Jun 1 08:49:53 cyrus master[21185]: [ID 970914 local6.error] process
> 19939 exited, signaled to death by 11
> Jun 1 08:51:27 cyrus master[21185]: [ID 970914 local6.error] process
> 24807 exited, signaled to death by 11
> Jun 1 08:51:37 cyrus master[21185]: [ID 970914 local6.error] process
> 23457 exited, signaled to death by 11
>
> I grepped for the process id's that exited in the log file and see
> that they are all imapd processes from various users. I've been
> reconstructing their mailboxes hoping that was the cause, but I was
> wondering if there is a way to get a better trace of what is
> happening. It seems hard to get an strace or truss on the imap
> process since you don't know which one will die. Is there any
> technique to watching these processes? Is there anything else I
> should be looking for? Below is the configure commands I used to
> build imap and sasl. I used gcc 3.3.2 on Solaris SPARC 9.
>
> Thanks in advance for any advice,
>
> -Shawn Sivy
> The College of New Jersey
>
> For Imap 2.2.5
> -------------------
> CC=gcc \
> CPPFLAGS="-I/local/BerkeleyDB-4.2.52/include -I/local/cyrus/include" \
> LDFLAGS="-L/local/BerkeleyDB-4.2.52/lib -R/local/BerkeleyDB-4.2.52/lib" \
> LIBS="-lsocket -lnsl" \
> ./configure \
> --prefix=/local/cyrus \
> --with-cyrus-prefix=/local/cyrus \
> --with-cyrus-user=cyrus \
> --with-cyrus-group=mail \
> --with-auth=unix \
> --enable-netscapehack \
> --with-perl=/local/perl/bin/perl \
> --enable-murder \
> --with-libwrap=/usr/sfw \
> --with-openssl=/local/openssl-0.9.7d \
> --with-dbdir=/local/BerkeleyDB-4.2.52 \
> --with-sasl=/local/sasl2
>
> For Sasl 2.1.18
> -------------------
> CC=gcc \
> LDFLAGS="-L/local/Berkeley-4.2.52/lib -R/local/Berkeley-4.2.52/lib" \
> CPPFLAGS="-I/local/Berkeley-4.2.52/include" \
> LIBS="-lsocket -lnsl" \
> ./configure --prefix=/local/sasl2 \
> --with-pwcheck \
> --with-pam \
> --enable-plain \
> --enable-login \
> --disable-gssapi \
> --disable-otp \
> --disable-digest \
> --disable-cram \
> --with-ldap=/local/openldap-2.1.30 \
> --with-openssl=/local/openssl-0.9.7d
>
> Here's my /etc/cyrus.conf
> ----------------------------------
> # standard standalone server implementation
>
> START {
> # do not delete this entry!
> recover cmd="ctl_cyrusdb -r"
>
> # this is only necessary if using idled for IMAP IDLE
> # idled cmd="idled"
> }
>
> # UNIX sockets start with a slash and are put into /var/imap/socket
> SERVICES {
> # add or remove based on preferences
> imap cmd="imapd" listen="imap" prefork=20
> imaps cmd="imapd -s" listen="imaps" prefork=5
> pop3 cmd="pop3d" listen="pop3" prefork=0
> pop3s cmd="pop3d" -s" listen="pop3s" prefork=0
> sieve cmd="timsieved" listen="sieve" prefork=1
>
> # at least one LMTP is required for delivery
> # lmtp cmd="lmtpd" listen="lmtp" prefork=0
> lmtpunix cmd="lmtpd" listen="/var/imap/socket/lmtp" prefork=0
>
> # this is only necessary if using notifications
> # notify cmd="notifyd" listen="/var/imap/socket/notify"
> proto="udp" prefork=1
> }
>
> EVENTS {
> # this is required
> checkpoint cmd="ctl_cyrusdb -c" period=30
>
> # this is only necessary if using duplicate delivery suppression
> delprune cmd="ctl_deliver -E 3" at=0400
>
> # this is only necessary if caching TLS sessions
> tlsprune cmd="tls_prune" at=0400
> }
>
>
> And my imapd.conf
> --------------------------
> configdirectory: /var/imap
> partition-default: /var/spool/imap
> partition-imap2: /var/spool/imap2
> partition-imap3: /var/spool/imap3
> defaultpartition: default
> admins: cyrus
> #sasl_pwcheck_method: pwcheck
> #pwcheck_method: pwcheck
> sasl_pwcheck_method: saslauthd
> pwcheck_method: saslauthd
> sasl_ldap_servers: ldap://159.91.15.182/ ldap://159.91.15.179/
> sasl_ldap_filter: uid=%u
> sasl_ldap_auth_method: bind
> sasl_ldap_search_base: ou=People,dc=tcnj,dc=edu
> sasl_ldap_scope: one
> ldap_uri: ldap://159.91.15.182/ ldap://159.91.15.179/
> ldap_filter: uid=%u
> ldap_auth_method: bind
> ldap_search_base: ou=People,dc=tcnj,dc=edu
> ldap_scope: one
> netscapeurl: http://managemail.tcnj.edu/
> tls_ca_file: /var/imap/ssl/ca-bundle.crt
> tls_cert_file: /var/imap/ssl/imap2003.pem
> tls_key_file: /var/imap/ssl/imap2003.pem
> sievedir: /var/imap/sieve
> # Modified 11/17/02 - BC - 35 is just over the base setting. Base is
> unknown.
> # Modified 3/18/03 - BC - Changed to 50 - see man page for imapd.conf
> #sieve_maxscriptsize: 32
> # Maximum size (in kilobytes) any sieve script can be,
> # enforced at submission by timsieved(8).
> sieve_maxscriptsize: 50
> quotawarn: 90
> lmtp_over_quota_perm_failure: 1
> quota_db: quotalegacy
>
>
>
>
> ---
> Cyrus Home Page: http://asg.web.cmu.edu/cyrus
> Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
> List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html
---
Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html
More information about the Info-cyrus
mailing list