Hi,
I've just set up fts-lucene and when I run searches on my inbox or when
I run the indexer (doveadm index INBOX
) I get the following segfault.
I've run it multiple times and noticed that the data value is different
each time so I guess it doesn't always crash at the same point.
I'm running dovecot 2.2.13-1 with clucene 2.3.3.4-8 on Arch Linux.
If you need any more information I'll be happy to help.
config:
# 2.2.13: /etc/dovecot/dovecot.conf # OS: Linux 3.15.2-1-ARCH i686
mail_location = mdbox:~/.mdbox mail_plugins = " fts fts_lucene" namespace { hidden = no inbox = yes location = prefix = INBOX. separator = . type = private } passdb { driver = pam } plugin { fts = lucene fts_autoindex = yes fts_lucene = whitespace_chars=@. } protocols = imap service auth { user = root } ssl_cert = </etc/ssl/my-certs/server.pem ssl_key = </etc/ssl/private/server.key userdb { driver = passwd } protocol imap { imap_client_workarounds = tb-extra-mailbox-sep } protocol lda { postmaster_address = postmaster@server-speed.net }
syslog:
Jul 24 10:27:21 mistral dovecot: indexer-worker(flo): Warning: Growing data stack with: 32768 Jul 24 10:27:26 mistral kernel: [1814196.532882] indexer-worker[22785] segfault at 9180000 ip b745d860 sp bfad86cc error 4 in libc-2.19.so[b73ba000+1bb000] Jul 24 10:27:27 mistral dovecot: indexer: Error: Indexer worker disconnected, discarding 1 requests for flo Jul 24 10:27:27 mistral dovecot: indexer-worker(flo): Fatal: master: service(indexer-worker): child 22785 killed with signal 11 (core dumped) Jul 24 10:27:27 mistral dovecot: imap(flo): Error: indexer failed to index mailbox INBOX
backtrace:
#0 0xb745d860 in __wcslen_sse2 () from /usr/lib/libc.so.6 No symbol table info available. #1 0xb744e88b in wcsdup () from /usr/lib/libc.so.6 No symbol table info available. #2 0xb728cff0 in lucene::document::Field::Field(wchar_t const*, wchar_t const*, int, bool) () from /usr/lib/libclucene-core.so.1 No symbol table info available. #3 0xb73aa5d8 in lucene_index_build_more (index=0x8b24130, uid=4403, part_idx=0, data=0x8b38f08 "1: kernel: i7core_edac 0000:00:14.0: restoring config space at offset 0x3 (was 0x800000, writing 0x800010)\n 1: kernel: pci 0000:00:1c.0: restoring config space at offset 0x1 (was 0x100000, writing "..., size=8188, hdr_name=0x0) at lucene-wrapper.cc:582 namesize = <optimized out> dest = 0x915f5d0 L"1: kernel: i7core_edac 0000:00:14 0: restoring config space at offset 0x3 (was 0x800000, writing 0x800010)\n 1: kernel: pci 0000:00:1c 0: restoring config space at offset 0x1 (was 0x100000, writing "... dest_free = 0x915f5d0 L"1: kernel: i7core_edac 0000:00:14 0: restoring config space at offset 0x3 (was 0x800000, writing 0x800010)\n 1: kernel: pci 0000:00:1c 0: restoring config space at offset 0x1 (was 0x100000, writing "... id = L"\x8cb0900\000\000\000\x8ebef98\x8c21978\000 \x8c93a10\xb74e2df5\xbfad8788\xbfad87d4\x8cb0938\xbfad88e8\xbfad88e4\x8925f300\x8cb0938\xbfad88e8\xb7624a4d\xb7684000 \x8b38f08\x8fbb488" datasize = <optimized out> #4 0xb73a8f47 in fts_backend_lucene_update_build_more (_ctx=0x8b3c578, data=0x8b38f08 "1: kernel: i7core_edac 0000:00:14.0: restoring config space at offset 0x3 (was 0x800000, writing 0x800010)\n 1: kernel: pci 0000:00:1c.0: restoring config space at offset 0x1 (was 0x100000, writing "..., size=8188) at fts-backend-lucene.c:415 _data_stack_cur_id = 6 ctx = 0x8b3c578 backend = 0x8b23850 ret = <optimized out> #5 0xb7586cda in fts_backend_update_build_more (ctx=0x8b3c578, data=0x8b38f08 "1: kernel: i7core_edac 0000:00:14.0: restoring config space at offset 0x3 (was 0x800000, writing 0x800010)\n 1: kernel: pci 0000:00:1c.0: restoring config space at offset 0x1 (was 0x100000, writing "..., size=8188) at fts-api.c:193 __FUNCTION__ = "fts_backend_update_build_more" #6 0xb7587814 in fts_build_body_block (ctx=0xbfad88fc, block=0xbfad88ec, last=false) at fts-build-mail.c:236 i = 8188 __FUNCTION__ = "fts_build_body_block" #7 0xb7587dfc in fts_build_mail_real (mail=<optimized out>, update_ctx=<optimized out>) at fts-build-mail.c:352 ctx = {mail = 0x8b32ed0, update_ctx = 0x8b3c578, content_type = 0x0, content_disposition = 0x0, body_parser = 0x8b40f20, word_buf = 0x0} parser = 0x8c21948 decoder = 0x8b51410 raw_block = {part = 0x8b13668, hdr = 0x0, data = 0x8b38f08 "1: kernel: i7core_edac 0000:00:14.0: restoring config space at offset 0x3 (was 0x800000, writing 0x800010)\n 1: kernel: pci 0000:00:1c.0: restoring config space at offset 0x1 (was 0x100000, writing "..., size = 8192} block = {part = 0x8b13668, hdr = 0x0, data = 0x8b38f08 "1: kernel: i7core_edac 0000:00:14.0: restoring config space at offset 0x3 (was 0x800000, writing 0x800010)\n 1: kernel: pci 0000:00:1c.0: restoring config space at offset 0x1 (was 0x100000, writing "..., size = 8192} ret = -1079146260 input = 0x8cb0938 parts = 0x1133 #8 fts_build_mail (update_ctx=0x8b3c578, mail=0x8b32ed0) at fts-build-mail.c:386 _data_stack_cur_id = 5 #9 0xb758d8cc in fts_mail_index (_mail=<optimized out>) at fts-storage.c:451 ft = 0x8b2ef98 #10 fts_mail_precache (_mail=0x8b32ed0) at fts-storage.c:468 _data_stack_cur_id = 4 fmail = 0x8b2ef98 ft = 0x8b28920 #11 0xb76f3e5b in mail_precache (mail=0x8b32ed0) at mail.c:350 p = 0x8b32ed0 #12 0x08049caf in index_mailbox_precache (conn=<optimized out>, box=<optimized out>) at master-connection.c:86 percentage_str = "8\n\000\b" storage = 0x9180000 status = {messages = 35744, recent = 0, unseen = 0, uidvalidity = 1240057599, uidnext = 45338, first_unseen_seq = 0, first_recent_uid = 45338, last_cached_seq = 2, highest_modseq = 0, highest_pvt_modseq = 0, keywords = 0x0, permanent_flags = 0, permanent_keywords = 0, allow_new_keywords = 0, nonpermanent_modseqs = 0, no_modseq_tracking = 0, have_guids = 1, have_save_guids = 1, have_only_guid128 = 0} ctx = 0x8b32d38 seq = 3275 trans = 0x8b30128 search_args = 0x0 mail = 0x8b32ed0 metadata = {guid = '\000' <repeats 15 times>, virtual_size = 0, cache_fields = 0x0, precache_fields = (MAIL_FETCH_STREAM_HEADER | MAIL_FETCH_STREAM_BODY | MAIL_FETCH_RECEIVED_DATE | MAIL_FETCH_SAVE_DATE | MAIL_FETCH_PHYSICAL_SIZE | MAIL_FETCH_VIRTUAL_SIZE | MAIL_FETCH_UIDL_BACKEND | MAIL_FETCH_GUID), backend_ns_prefix = 0x0, backend_ns_type = (unknown: 0)} counter = 3275 max = 35742 #13 index_mailbox (what=<optimized out>, max_recent_msgs=<optimized out>, mailbox=<optimized out>, user=<optimized out>, conn=<optimized out>) at master-connection.c:172 box = 0x8b2baf0 status = {messages = 11, recent = 145850608, unseen = 2050, uidvalidity = 3076213424, uidnext = 0, first_unseen_seq = 3076213430, first_recent_uid = 3077062656, last_cached_seq = 3076215829, highest_modseq = 7510788772, highest_pvt_modseq = 3215821508, keywords = 0xb77ed7a0, permanent_flags = 3215821476, permanent_keywords = 0, allow_new_keywords = 0, nonpermanent_modseqs = 0, no_modseq_tracking = 1, have_guids = 0, have_save_guids = 1, have_only_guid128 = 1} errstr = 0x9180000 <error: Cannot access memory at address 0x9180000> ns = 0x9180000 path = 0x8b12428 "/home/flo/.mdbox/mailboxes/INBOX/dbox-Mails" error = 35744 sync_flags = (unknown: 152567808) #14 master_connection_input_line (line=<optimized out>, conn=<optimized out>) at master-connection.c:208 str = 0x9180000 <error: Cannot access memory at address 0x9180000> max_recent_msgs = 0 args = 0xccb input = {module = 0x804a2d7 "mail", service = 0x804a2c8 "indexer-worker", username = 0x8b11090 "flo", session_id = 0x0, local_ip = {family = 0, u = {ip6 = {__in6_u = {__u6_addr8 = '\000' <repeats 15 times>, __u6_addr16 = {0, 0, 0, 0, 0, 0, 0, 0}, __u6_addr32 = {0, 0, 0, 0}}}, ip4 = {s_addr = 0}}}, remote_ip = { family = 0, u = {ip6 = {__in6_u = {__u6_addr8 = '\000' <repeats 15 times>, __u6_addr16 = {0, 0, 0, 0, 0, 0, 0, 0}, __u6_addr32 = {0, 0, 0, 0}}}, ip4 = {s_addr = 0}}}, local_port = 0, remote_port = 0, userdb_fields = 0x0, flags_override_add = (unknown: 0), flags_override_remove = (unknown: 0), no_userdb_lookup = 0} service_user = 0x8b1b508 user = 0x8b246d8 error = 0x25 <error: Cannot access memory at address 0x25> #15 master_connection_input (conn=0x8b19250) at master-connection.c:245 _data_stack_cur_id = 3 line = 0x8 <error: Cannot access memory at address 0x8> line = 0x9180000 <error: Cannot access memory at address 0x9180000> #16 0xb760e2c3 in io_loop_call_io (io=0x8b19270) at ioloop.c:441 ioloop = 0x8b154b8 t_id = 2 __FUNCTION__ = "io_loop_call_io" #17 0xb760f4ae in io_loop_handler_run_internal (ioloop=0x8b154b8) at ioloop-epoll.c:220 ctx = 0x8b18908 list = 0x8b192a8 io = <optimized out> tv = {tv_sec = 2147483, tv_usec = 0} events_count = <optimized out> msecs = <optimized out> ret = 1 i = <optimized out> j = 0 call = <optimized out> __FUNCTION__ = "io_loop_handler_run_internal" #18 0xb760e34a in io_loop_handler_run (ioloop=0x8b154b8) at ioloop.c:488 No locals. #19 0xb760e3e9 in io_loop_run (ioloop=0x8b154b8) at ioloop.c:465 __FUNCTION__ = "io_loop_run" #20 0xb75b49b5 in master_service_run (service=0x8b153e0, callback=0x80498f0 <client_connected>) at master-service.c:566 No locals. #21 0x08049757 in main (argc=1, argv=0xbfad8d94) at indexer-worker.c:78 storage_service_flags = <optimized out> c = <optimized out>