Hi!

This is a bug in the new event code. Can you get a full gdb backtrace?

Aki

> On January 27, 2018 at 6:58 AM "J. Nick Koston" <n...@cpanel.net> wrote:
> 
> 
> Hi,
> 
> We are seeing a frequent assertion failure on LMTP delivery with 2.3.0.  This 
> only appears to happen on CentOS/RHEL 7.
> 
> Jan 24 08:30:58 smoker-devautomerge-c7-1 dovecot: lmtp(29540): Panic: file 
> lib-event.c: line 148 (event_unref): assertion failed: (event != 
> current_global_event)
> Jan 24 08:30:58 smoker-devautomerge-c7-1 dovecot: lmtp(29540): Error: Raw 
> backtrace: /usr/lib64/dovecot/libdovecot.so.0(+0xc8ec4) [0x7f226d036ec4] -> 
> /usr/lib64/dovecot/libdovecot.so.0(+0xc8f7e) [0x7f226d036f7e] -> 
> /usr/lib64/dovecot/libdovecot.so.0(i_fatal+0) [0x7f226cfaa190] -> 
> /usr/lib64/dovecot/libdovecot.so.0(+0xe469b) [0x7f226d05269b] -> 
> /usr/lib64/dovecot/libdovecot-storage.so.0(mail_storage_service_user_unref+0xb4)
>  [0x7f226d334b64] -> dovecot/lmtp(+0x63fa) [0x56438f3673fa] -> 
> dovecot/lmtp(lmtp_local_deinit+0x5c) [0x56438f3678dc] -> 
> dovecot/lmtp(client_state_reset+0x1a) [0x56438f366a5a] -> 
> /usr/lib64/dovecot/libdovecot.so.0(smtp_server_connection_reset_state+0x3c) 
> [0x7f226cfc196c] -> 
> /usr/lib64/dovecot/libdovecot.so.0(smtp_server_command_completed+0x4d) 
> [0x7f226cfbf31d] -> /usr/lib64/dovecot/libdovecot.so.0(+0x54848) 
> [0x7f226cfc2848] -> /usr/lib64/dovecot/libdovecot.so.0(+0xf0970) 
> [0x7f226d05e970] -> /usr/lib64/dovecot/libdovecot.so.0(io_loop_call_io+0x65) 
> [0x7f226d04e4b5] -> 
> /usr/lib64/dovecot/libdovecot.so.0(io_loop_handler_run_internal+0x10f) 
> [0x7f226d04fd8f] -> 
> /usr/lib64/dovecot/libdovecot.so.0(io_loop_handler_run+0x52) [0x7f226d04e5b2] 
> -> /usr/lib64/dovecot/libdovecot.so.0(io_loop_run+0x38) [0x7f226d04e7d8] -> 
> /usr/lib64/dovecot/libdovecot.so.0(master_service_run+0x13) [0x7f226cfccbb3] 
> -> dovecot/lmtp(main+0x226) [0x56438f3661a6] -> 
> /lib64/libc.so.6(__libc_start_main+0xf5) [0x7f226cbccc05] -> 
> dovecot/lmtp(+0x52d5) [0x56438f3662d5]
> Jan 24 08:30:58 smoker-devautomerge-c7-1 dovecot: lmtp(29540): Fatal: master: 
> service(lmtp): child 29540 killed with signal 6 (core dumps disabled)
> 
> 
> From the exim log:
> 'LOG: MAIN  cwd=/usr/local/cpanel 3 args: /usr/sbin/sendmail -v 
> bob@l56ob1nf.cptestLOG: MAIN  <= r...@smoker-devautomerge-c7-2.dev.cpanel.net 
> U=root P=local S=3146285 T="Ignore this test from 
> Cpanel-Email-Message-Retrieve.t"LOG: MAIN  cwd=/var/spool/exim 4 args: 
> /usr/sbin/exim -v -Mc 1eemjH-0006uB-C2delivering 1eemjH-0006uB-C2  LMTP<< 220 
> smoker-devautomerge-c7-2.dev.cpanel.net Dovecot ready.  LMTP>> LHLO 
> smoker-devautomerge-c7-2.dev.cpanel.net
>   LMTP<< 250-smoker-devautomerge-c7-2.dev.cpanel.net  LMTP<< 250-8BITMIME  
> LMTP<< 250-CHUNKING  LMTP<< 250-ENHANCEDSTATUSCODES  LMTP<< 250-PIPELINING  
> LMTP<< 250-STARTTLS  LMTP<< 250-VRFY  LMTP<< 250 XCLIENT ADDR PORT PROTO HELO 
> LOGIN TTL TIMEOUT  LMTP>> MAIL 
> FROM:<r...@smoker-devautomerge-c7-2.dev.cpanel.net>
>   LMTP<< 250 2.1.0 OK  LMTP>> RCPT TO:<bob@l56ob1nf.cptest>
>   LMTP<< 250 2.1.5 OK  LMTP>> DATA
>   LMTP<< 354 OK  LMTP>> writing message and terminating "."  LMTP>> QUIT
> LOG: MAIN  == bob@l56ob1nf.cptest R=virtual_user T=dovecot_virtual_delivery 
> defer (-1): LMTP connection closed after end of data’,
> 
> 
> 
> Jan 24 10:00:55 smoker-devautomerge-c7-1 dovecot: lmtp(30217): Panic: file 
> lib-event.c: line 148 (event_unref): assertion failed: (event != 
> current_global_event)
> Jan 24 10:00:55 smoker-devautomerge-c7-1 dovecot: lmtp(30233): Panic: file 
> lib-event.c: line 148 (event_unref): assertion failed: (event != 
> current_global_event)
> Jan 24 10:05:15 smoker-devautomerge-c7-1 dovecot: lmtp(32618): Panic: file 
> lib-event.c: line 148 (event_unref): assertion failed: (event != 
> current_global_event)
> Jan 24 10:05:52 smoker-devautomerge-c7-1 dovecot: lmtp(375): Panic: file 
> lib-event.c: line 148 (event_unref): assertion failed: (event != 
> current_global_event)
> Jan 24 10:05:52 smoker-devautomerge-c7-1 dovecot: lmtp(403): Panic: file 
> lib-event.c: line 148 (event_unref): assertion failed: (event != 
> current_global_event)
> Jan 24 10:05:52 smoker-devautomerge-c7-1 dovecot: lmtp(424): Panic: file 
> lib-event.c: line 148 (event_unref): assertion failed: (event != 
> current_global_event)
> Jan 24 10:05:52 smoker-devautomerge-c7-1 dovecot: lmtp(430): Panic: file 
> lib-event.c: line 148 (event_unref): assertion failed: (event != 
> current_global_event)
> Jan 24 12:32:16 smoker-devautomerge-c7-1 dovecot: lmtp(4435): Panic: file 
> lib-event.c: line 148 (event_unref): assertion failed: (event != 
> current_global_event)
> Jan 24 12:54:53 smoker-devautomerge-c7-1 dovecot: lmtp(15232): Panic: file 
> lib-event.c: line 148 (event_unref): assertion failed: (event != 
> current_global_event)
> Jan 24 12:54:53 smoker-devautomerge-c7-1 dovecot: lmtp(15238): Panic: file 
> lib-event.c: line 148 (event_unref): assertion failed: (event != 
> current_global_event)
> Jan 24 12:54:53 smoker-devautomerge-c7-1 dovecot: lmtp(15244): Panic: file 
> lib-event.c: line 148 (event_unref): assertion failed: (event != 
> current_global_event)
> 
> doveconf -n:
> 
> # 2.3.0 (c8b89eb): /etc/dovecot/dovecot.conf
> # OS: Linux 3.10.0-693.2.2.el7.x86_64 x86_64 CentOS Linux release 7.4.1708 
> (Core)  
> auth_cache_size = 1 M
> auth_mechanisms = plain login
> auth_username_chars = 
> "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!#$-=?^_{}~./@+%"
> disable_plaintext_auth = no
> first_valid_uid = 201
> lda_mailbox_autocreate = yes
> lmtp_rcpt_check_quota = yes
> lmtp_save_to_detail_mailbox = yes
> lmtp_user_concurrency_limit = 4
> mail_access_groups = dovecot
> mail_plugins = quota quota_clone zlib
> mail_prefetch_count = 20
> maildir_very_dirty_syncs = yes
> namespace inbox {
>   inbox = yes
>   location = 
>   mailbox Archive {
>     auto = create
>     special_use = \Archive
>   }
>   mailbox Archives {
>     auto = no
>     special_use = \Archive
>   }
>   mailbox Drafts {
>     auto = subscribe
>     special_use = \Drafts
>   }
>   mailbox Junk {
>     auto = create
>     special_use = \Junk
>   }
>   mailbox Sent {
>     auto = subscribe
>     special_use = \Sent
>   }
>   mailbox "Sent Messages" {
>     auto = no
>     special_use = \Sent
>   }
>   mailbox Trash {
>     auto = subscribe
>     special_use = \Trash
>   }
>   mailbox spam {
>     auto = create
>     special_use = \Junk
>   }
>   prefix = INBOX.
>   separator = .
>   type = private
> }
> passdb {
>   args = /usr/local/cpanel/etc/dovecot/cpauthd-dict.conf
>   driver = dict
>   result_failure = return-fail
> }
> passdb {
>   args = /usr/local/cpanel/bin/dovecot-wrap
>   driver = checkpassword
>   skip = authenticated
> }
> plugin {
>   acl = vfile:cache_secs=86400
>   quota_exceeded_message = Mailbox is full / Blocks limit exceeded / Inode 
> limit exceeded
> }
> protocols = lmtp imap pop3
> service auth {
>   unix_listener auth-client {
>     mode = 0666
>   }
> }
> service config {
>   vsz_limit = 2 G
> }
> service dict {
>   unix_listener dict {
>     group = dovecot
>     mode = 0660
>   }
> }
> service imap-login {
>   client_limit = 500
>   inet_listener imap {
>     address = *,::
>   }
>   inet_listener imaps {
>     address = *,::
>   }
>   process_limit = 50
>   process_min_avail = 2
>   service_count = 0
>   vsz_limit = 128 M
> }
> service imap {
>   process_limit = 512
>   vsz_limit = 512 M
> }
> service lmtp {
>   client_limit = 1
>   process_limit = 500
>   unix_listener lmtp {
>     group = mail
>     mode = 0660
>     user = mailnull
>   }
>   vsz_limit = 512 M
> }
> service managesieve-login {
>   client_limit = 500
>   process_limit = 50
>   process_min_avail = 2
>   service_count = 0
>   vsz_limit = 128 M
> }
> service managesieve {
>   process_limit = 512
>   vsz_limit = 512 M
> }
> service pop3-login {
>   client_limit = 500
>   inet_listener pop3 {
>     address = *,::
>   }
>   inet_listener pop3s {
>     address = *,::
>   }
>   process_limit = 50
>   process_min_avail = 2
>   service_count = 0
>   vsz_limit = 128 M
> }
> service pop3 {
>   process_limit = 512
>   vsz_limit = 512 M
> }
> service quota-status {
>   executable = quota-status -p postfix
>   unix_listener quota-status {
>     mode = 0666
>   }
> }
> ssl_cert = </etc/dovecot/ssl/dovecot.crt
> ssl_cipher_list = 
> ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256
> ssl_dh =  # hidden, use -P to show it
> ssl_key =  # hidden, use -P to show it
> userdb {
>   driver = prefetch
> }
> userdb {
>   args = /usr/local/cpanel/etc/dovecot/cpauthd-dict.conf
>   driver = dict
> }
> userdb {
>   args = /usr/local/cpanel/bin/dovecot-wrap
>   driver = checkpassword
> }
> protocol imap {
>   imap_capability = +NAMESPACE
>   imap_idle_notify_interval = 24 mins
>   imap_logout_format = in=%i, out=%o, bytes=%i/%o
>   mail_max_userip_connections = 20
>   mail_plugins = acl quota imap_quota zlib imap_zlib quota_clone virtual
>   namespace sent {
>     hidden = yes
>     list = no
>     location = 
> virtual:/usr/local/cpanel/etc/dovecot/virtual/sent:INDEX=~/mail/virtual/%u/sent
>     prefix = sent
>     separator = .
>   }
>   namespace spam {
>     hidden = yes
>     list = no
>     location = 
> virtual:/usr/local/cpanel/etc/dovecot/virtual/spam:INDEX=~/mail/virtual/%u/spam
>     prefix = spam
>     separator = .
>   }
> }
> protocol pop3 {
>   mail_max_userip_connections = 3
>   mail_plugins = quota quota quota_clone virtual zlib
>   namespace sent {
>     hidden = yes
>     list = no
>     location = 
> virtual:/usr/local/cpanel/etc/dovecot/virtual/sent:INDEX=~/mail/virtual/%u/sent
>     prefix = sent
>     separator = .
>   }
>   namespace spam {
>     hidden = yes
>     list = no
>     location = 
> virtual:/usr/local/cpanel/etc/dovecot/virtual/spam:INDEX=~/mail/virtual/%u/spam
>     prefix = spam
>     separator = .
>   }
>   pop3_logout_format = top=%t/%p, retr=%r/%b, del=%d/%m, size=%s, bytes=%i/%o
>   pop3_uidl_format = UID%u-%v
> }
> protocol lmtp {
>   mail_plugins = quota quota_clone zlib
>   postmaster_address = root
>   quota_full_tempfail = no
> }
> protocol lda {
>   mail_plugins = quota quota_clone zlib
>   postmaster_address = root
>   quota_full_tempfail = no
> }
> local_name smoker-devautomerge-c7-1.dev.cpanel.net {
>   ssl_cert = </etc/dovecot/ssl/dovecot.crt
>   ssl_key =  # hidden, use -P to show it
> }
> 
>

Reply via email to