[Dovecot] Panic in indexer-worker
Hi,
I did a fresh installation of 2.2.9 in my test environment and enabled fts_autoindex=yes. I'm using a solr-server for FTS.
I got this error, just once until now:
_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=
==> dovecot-lmtp-errors.log <== Dec 03 16:15:06 lmtp(30601, username@domain.de): Error: Timeout (29s) while waiting for lock for transaction log file /maildata/domain.de/username/maildir/dovecot.list.index.log
==> dovecot-lmtp.log <== Dec 03 16:15:06 lmtp(30601, username@domain.de): Info: h2jGC1j1nVKJdwAAwaC1kQ: sieve: msgid=<20131203151436.962C06B6E9@monitoring01.domain.de>: stored mail into mailbox 'Trash' Dec 03 16:15:06 lmtp(30601): Info: Disconnect from 10.0.0.3: Successful quit
==> dovecot.log <== Dec 03 16:15:06 indexer-worker(username@domain.de): Panic: file http-client-request.c: line 521 (http_client_request_send_more): assertion failed: (req->payload_input != NULL) Dec 03 16:15:06 indexer-worker(username@domain.de): Error: Raw backtrace: /usr/local/lib/dovecot/libdovecot.so.0(+0x66ab1) [0x7fc60fe2eab1] -> /usr/local/lib/dovecot/libdovecot.so.0(+0x66b8e) [0x7fc60fe2eb8e] -> /usr/local/lib/dovecot/libdovecot.so.0(i_fatal+0) [0x7fc60fdea3ce] -> /usr/local/lib/dovecot/libdovecot.so.0(http_client_request_send_more+0x2ed) [0x7fc60fe0406d] -> /usr/local/lib/dovecot/libdovecot.so.0(http_client_request_send+0x1e1) [0x7fc60fe042a1] -> /usr/local/lib/dovecot/libdovecot.so.0(http_client_connection_next_request+0x120) [0x7fc60fe06720] -> /usr/local/lib/dovecot/libdovecot.so.0(+0x3f6b7) [0x7fc60fe076b7] -> /usr/local/lib/dovecot/libdovecot.so.0(io_loop_handle_timeouts+0xbf) [0x7fc60fe3e9af] -> /usr/local/lib/dovecot/libdovecot.so.0(io_loop_handler_run+0x94) [0x7fc60fe3f7d4] -> /usr/local/lib/dovecot/libdovecot.so.0(io_loop_run+0x38) [0x7fc60fe3e628] -> /usr/local/lib/dovecot/libdovecot.so.0(+0x3bb3f) [0x7fc60fe03b3f] -> /usr/local/lib/dovecot/lib21_fts_solr_plugin.so(solr_connection_post_end+0x61) [0x7fc60f1d5421] -> /usr/local/lib/dovecot/lib21_fts_solr_plugin.so(+0x4388) [0x7fc60f1d2388] -> /usr/local/lib/dovecot/lib20_fts_plugin.so(fts_backend_update_deinit+0x29) [0x7fc60f3dfd29] -> /usr/local/lib/dovecot/lib20_fts_plugin.so(+0xbb7c) [0x7fc60f3e4b7c] -> /usr/local/lib/dovecot/lib20_fts_plugin.so(+0xc982) [0x7fc60f3e5982] -> /usr/local/lib/dovecot/lib10_quota_plugin.so(+0xb584) [0x7fc60f5f6584] -> /usr/local/lib/dovecot/libdovecot-storage.so.0(+0x90927) [0x7fc61012a927] -> /usr/local/lib/dovecot/libdovecot-storage.so.0(mailbox_transaction_commit_get_changes+0x3f) [0x7fc6101162cf] -> /usr/local/lib/dovecot/libdovecot-storage.so.0(mailbox_transaction_commit+0xe) [0x7fc61011636e] -> dovecot/indexer-worker username@domain.de Trash [0x4024f6] -> /usr/local/lib/dovecot/libdovecot.so.0(io_loop_call_io+0x27) [0x7fc60fe3ea87] -> /usr/local/lib/dovecot/libdovecot.so.0(io_loop_handler_run+0xd7) [0x7fc60fe3f817] -> /usr/local/lib/dovecot/libdovecot.so.0(io_loop_run+0x38) [0x7fc60fe3e628] -> /usr/local/lib/dovecot/libdovecot.so.0(master_service_run+0x13) [0x7fc60fdef5c3] -> dovecot/indexer-worker username@domain.de Trash [0x401f03] -> /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf5) [0x7fc60fa21de5] -> dovecot/indexer-worker username@domain.de Trash [0x401fc2] Dec 03 16:15:13 indexer: Error: Indexer worker disconnected, discarding 1 requests for username@domain.de Dec 03 16:15:13 indexer-worker(username@domain.de): Fatal: master: service(indexer-worker): child 30611 killed with signal 6 (core dumped)
_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=
This happend when LMTP received a mail, and because of fts_autoindex=yes it should be sent to the solr server.
Is this normal when waiting for lock on transaction log file times out, or should there be something more graceful, maybe just skip it or so?
I already tried to reproduce, but I cannot. I will check the logfiles if it happens again.
Regards Michael
On 3.12.2013, at 23.33, Michael Kliewe <mkliewe@gmx.de> wrote:
I did a fresh installation of 2.2.9 in my test environment and enabled fts_autoindex=yes. I'm using a solr-server for FTS.
I got this error, just once until now:
_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=
==> dovecot-lmtp-errors.log <== Dec 03 16:15:06 lmtp(30601, username@domain.de): Error: Timeout (29s) while waiting for lock for transaction log file /maildata/domain.de/username/maildir/dovecot.list.index.log
High load?
==> dovecot.log <== Dec 03 16:15:06 indexer-worker(username@domain.de): Panic: file http-client-request.c: line 521 (http_client_request_send_more): assertion failed: (req->payload_input != NULL)
It crashed because the HTTP request failed and it tried to auto-retry, which doesn’t work with fts-solr. This should fix: http://hg.dovecot.org/dovecot-2.2/rev/353c3e3edc52
participants (2)
-
Michael Kliewe
-
Timo Sirainen