fts-lucene crashes on dovecot-2.2.24

Dmitry Nezhevenko dion at dion.org.ua
Mon May 16 08:41:54 UTC 2016


Hi,

I've tried to upgrade to dovecot 2.2.24. It seems that lucene reindex
issue should be fixed. But instead of this dovecot indexer-worker crashes
very often for me.

I'm attaching backtrace.

Please let me know if you need backtrace from binary without
optimizations.

-- 
WBR, Dmitry
-------------- next part --------------
#0  rescan_clear_unseen_mailbox (rescan_ctx=rescan_ctx at entry=0x0, vname=0x55c7212fd120 "blogs", hdr=hdr at entry=0x7ffddf5e3120) at lucene-wrapper.cc:830
        box = 0x7ffddf5e30c0
        metadata = {guid = void, virtual_size = 140728350945568, physical_size = 94313743381008, first_save_date = 94313186852864, cache_fields = 0x16008bb1a6be7800, 
          precache_fields = (MAIL_FETCH_STREAM_BODY | MAIL_FETCH_RECEIVED_DATE | MAIL_FETCH_SAVE_DATE | MAIL_FETCH_PHYSICAL_SIZE | MAIL_FETCH_NUL_STATE | MAIL_FETCH_IMAP_ENVELOPE | MAIL_FETCH_FROM_ENVELOPE | MAIL_FETCH_STORAGE_ID | MAIL_FETCH_UIDL_BACKEND | MAIL_FETCH_MAILBOX_NAME | MAIL_FETCH_GUID | MAIL_FETCH_BODY_SNIPPET | unknown: 536872960), 
          backend_ns_prefix = 0x0, backend_ns_type = (unknown: 3747492128)}
#1  0x00007f83c892bc9e in rescan_clear_unseen_mailboxes (index=index at entry=0x55c7212bf210, rescan_ctx=rescan_ctx at entry=0x0) at lucene-wrapper.cc:863
        iter = 0x55c7212fbf80
        info = <optimized out>
        hdr = {last_indexed_uid = 0, settings_checksum = 2205687194, unused = 0}
        ns = 0x55c721268870
        vname = <optimized out>
#2  0x00007f83c892cbf4 in lucene_settings_check (index=0x55c7212bf210) at lucene-wrapper.cc:429
        set_checksum = <optimized out>
        ret = <optimized out>
#3  lucene_index_build_init (index=0x55c7212bf210) at lucene-wrapper.cc:448
        lock_path = 0x55c72124a5c0 "/home/dion/mail/lucene-indexes/write.lock"
        st = {st_dev = 472446402651, st_ino = 0, st_nlink = 0, st_mode = 119, st_uid = 124, st_gid = 3747492592, __pad0 = 32765, st_rdev = 140204016954144, st_size = 6, 
          st_blksize = 12528, st_blocks = 94313743630096, st_atim = {tv_sec = 94313743584528, tv_nsec = 94313743567592}, st_mtim = {tv_sec = 1585420663957387264, 
            tv_nsec = 94313727365448}, st_ctim = {tv_sec = 5, tv_nsec = 94313743126928}, __glibc_reserved = {94313743380704, 140728350946096, 94313743584528}}
        exists = <optimized out>
#4  0x00007f83c892af6e in fts_backend_lucene_update_set_build_key (_ctx=0x55c7212d0890, key=0x7ffddf5e3330) at fts-backend-lucene.c:366
        ctx = 0x55c7212d0890
        backend = 0x55c7212bf0e0
        __FUNCTION__ = "fts_backend_lucene_update_set_build_key"
#5  0x00007f83c9e17204 in fts_backend_update_set_build_key (ctx=0x55c7212d0890, key=key at entry=0x7ffddf5e3330) at fts-api.c:175
        __FUNCTION__ = "fts_backend_update_set_build_key"
#6  0x00007f83c9e1857d in fts_build_mail_header (block=0x7ffddf5e3310, block=0x7ffddf5e3310, ctx=0x7ffddf5e3360) at fts-build-mail.c:174
        hdr = 0x55c7212ecae8
        key = {uid = 157102, type = FTS_BACKEND_BUILD_KEY_HDR, part = 0x55c72124a560, hdr_name = 0x55c7212f0de0 "Return-path", body_content_type = 0x0, 
          body_content_disposition = 0x0}
        ret = <optimized out>
#7  fts_build_mail_real (mail=0x55c7212ca260, update_ctx=0x55c7212d0890) at fts-build-mail.c:548
        block = {part = 0x55c72124a560, hdr = 0x55c7212ecae8, data = 0x6e0000005b <error: Cannot access memory at address 0x6e0000005b>, size = 0}
        ret = <optimized out>
        input = 0x55c7212ec500
        raw_block = {part = 0x55c72124a560, hdr = 0x55c7212f0d10, data = 0x0, size = 0}
        skip_body = false
        ctx = {mail = 0x55c7212ca260, update_ctx = 0x55c7212d0890, content_type = 0x0, content_disposition = 0x0, body_parser = 0x0, word_buf = 0x0, pending_input = 0x0, 
          cur_user_lang = 0x0}
        prev_part = <optimized out>
        parser = 0x55c7212ec700
        decoder = 0x55c7212ecad0
        parts = 0x55c700000007
        body_part = false
        body_added = false
        binary_body = <optimized out>
        error = 0x265ae <error: Cannot access memory at address 0x265ae>
#8  fts_build_mail (update_ctx=0x55c7212d0890, mail=mail at entry=0x55c7212ca260) at fts-build-mail.c:594
        _data_stack_cur_id = 6
#9  0x00007f83c9e1e93e in fts_mail_index (_mail=0x55c7212ca260) at fts-storage.c:501
        ft = 0x55c7212d0a80
        flist = 0x55c721281568
#10 fts_mail_precache (_mail=0x55c7212ca260) at fts-storage.c:520
        _data_stack_cur_id = 5
        mail = 0x55c7212ca260
        fmail = <optimized out>
        ft = <optimized out>
#11 0x00007f83cad49ab9 in mail_precache (mail=0x55c7212ca260) at mail.c:401
        _data_stack_cur_id = 4
        p = 0x55c7212ca260
#12 0x000055c720177508 in index_mailbox_precache (conn=0x55c721258550, box=0x55c7212c1630) at master-connection.c:93
        box_vname = 0x55c7212c1930 "trash"
        percentage_str = "\340R%!"
        percentage_sent = 0
        ret = 0
        storage = <optimized out>
        username = 0x55c72127d278 "dion"
        status = {messages = 5, recent = 0, unseen = 0, uidvalidity = 1459164554, uidnext = 157107, first_unseen_seq = 0, first_recent_uid = 157102, last_cached_seq = 0, 
          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 = 0x55c7212cfdb0
        seq = <optimized out>
        percentage = <optimized out>
        trans = 0x55c7212d1170
        search_args = 0x0
        mail = 0x55c7212ca260
        metadata = {guid = '\000' <repeats 15 times>, virtual_size = 0, physical_size = 0, first_save_date = 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 | MAIL_FETCH_POP3_ORDER), backend_ns_prefix = 0x0, backend_ns_type = (unknown: 0)}
        counter = 0
        max = 5
#13 index_mailbox (what=<optimized out>, max_recent_msgs=<optimized out>, mailbox=<optimized out>, user=<optimized out>, conn=0x55c721258550) at master-connection.c:186
        box = 0x55c7212c1630
        status = {messages = 3747493248, recent = 32765, unseen = 107, uidvalidity = 32765, uidnext = 8192, first_unseen_seq = 0, first_recent_uid = 8240, last_cached_seq = 0, 
          highest_modseq = 128, highest_pvt_modseq = 755914244609, keywords = 0x10, permanent_flags = MAIL_FLAGGED, permanent_keywords = 0, allow_new_keywords = 0, 
          nonpermanent_modseqs = 0, no_modseq_tracking = 0, have_guids = 0, have_save_guids = 0, have_only_guid128 = 0}
        errstr = <optimized out>
        ret = 0
        ns = <optimized out>
        path = 0x55c721249f60 "/home/dion/mail/mailboxes/trash/dbox-Mails"
        error = MAIL_ERROR_NOQUOTA
        sync_flags = <optimized out>
#14 master_connection_input_line (line=<optimized out>, conn=0x55c721258550) at master-connection.c:228
        str = <optimized out>
        max_recent_msgs = 0
        ret = <optimized out>
        args = <optimized out>
        input = {module = 0x55c720177bcf "mail", service = 0x55c720177bc0 "indexer-worker", username = 0x55c721247060 "dion", session_id = 0x0, 
          session_id_prefix = 0x55c72124706b "JxcJB7KEOVcVWQAA0vq6Vw", 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, debug = 0}
        service_user = 0x55c72125a9f0
        user = 0x55c72127d180
        error = 0x7f83caabf8db <write_full+59> "H\205\300x t.H\001\305H)\303u\334H\203\304\b1\300[]A\\A]\303f\017\037\204"
#15 master_connection_input (conn=0x55c721258550) at master-connection.c:265
        _data_stack_cur_id = 3
        line = <optimized out>
#16 0x00007f83caaa454c in io_loop_call_io (io=0x55c721258590) at ioloop.c:564
        ioloop = 0x55c72124f700
        t_id = 2
        __FUNCTION__ = "io_loop_call_io"
#17 0x00007f83caaa59e1 in io_loop_handler_run_internal (ioloop=ioloop at entry=0x55c72124f700) at ioloop-epoll.c:220
        ctx = 0x55c7212552e0
        io = <optimized out>
        tv = {tv_sec = 2147483, tv_usec = 0}
        events_count = <optimized out>
        msecs = <optimized out>
        ret = 1
        i = 0
        j = <optimized out>
        call = <optimized out>
        __FUNCTION__ = "io_loop_handler_run_internal"
#18 0x00007f83caaa45d5 in io_loop_handler_run (ioloop=ioloop at entry=0x55c72124f700) at ioloop.c:612
No locals.
#19 0x00007f83caaa4778 in io_loop_run (ioloop=0x55c72124f700) at ioloop.c:588
        __FUNCTION__ = "io_loop_run"
#20 0x00007f83caa3a653 in master_service_run (service=0x55c72124f5a0, callback=<optimized out>) at master-service.c:640
No locals.
#21 0x000055c720176f37 in main (argc=1, argv=0x55c72124f390) at indexer-worker.c:78
        storage_service_flags = (MAIL_STORAGE_SERVICE_FLAG_DISALLOW_ROOT | MAIL_STORAGE_SERVICE_FLAG_USERDB_LOOKUP | MAIL_STORAGE_SERVICE_FLAG_TEMP_PRIV_DROP | MAIL_STORAGE_SERVICE_FLAG_NO_IDLE_TIMEOUT)
        c = <optimized out>


More information about the dovecot mailing list