Bug Report - Crash on imap with core dump - Alternate storage related

Aki Tuomi aki.tuomi at dovecot.fi
Thu May 12 10:30:50 UTC 2016


Ah, sorry, missed it =)

Aki

On 12.05.2016 12:53, Daniel van Ham Colchete wrote:
> Hi Aki!
>
> It was already there: http://pastebin.com/2xA2xuRw
>
> Best,
> Daniel Colchete
>
> On Thu, May 12, 2016 at 3:03 AM, Aki Tuomi <aki.tuomi at dovecot.fi> wrote:
>
>>
>> On 11.05.2016 22:45, Daniel van Ham Colchete wrote:
>>> I can confirm that this bug also happens on the latest version available:
>>>
>>> root at dovecot:/# dovecot --version
>>> 2.2.devel (ebf2e93)
>>> root at dovecot:/# dpkg -l|grep dovecot
>>> ii  dovecot-core               2:2.2.24-1~auto+23        amd64
>>>  secure POP3/IMAP server - core files
>>> ii  dovecot-dbg                2:2.2.24-1~auto+23        amd64
>>>  secure POP3/IMAP server - debug symbols
>>> ii  dovecot-imapd              2:2.2.24-1~auto+23        amd64
>>>  secure POP3/IMAP server - IMAP daemon
>>> ii  dovecot-lmtpd              2:2.2.24-1~auto+23        amd64
>>>  secure POP3/IMAP server - LMTP server
>>> ii  dovecot-lucene             2:2.2.24-1~auto+23        amd64
>>>  secure POP3/IMAP server - Lucene support
>>> ii  dovecot-mysql              2:2.2.24-1~auto+23        amd64
>>>  secure POP3/IMAP server - MySQL support
>>> ii  dovecot-pop3d              2:2.2.24-1~auto+23        amd64
>>>  secure POP3/IMAP server - POP3 daemon
>>> ii  dovecot-sieve              2:2.2.24-1~auto+23        amd64
>>>  secure POP3/IMAP server - Sieve filters support
>>> ii  dovecot-solr               2:2.2.24-1~auto+23        amd64
>>>  secure POP3/IMAP server - Solr support
>>>
>>>
>>> On Wed, May 11, 2016 at 4:38 PM, Daniel van Ham Colchete <
>>> daniel.colchete at gmail.com> wrote:
>>>
>>>> I would like to report a bug we are seeing on an new deployment here:
>>>>
>>>> Linux: Debian Jessie, inside a Docker container
>>>> Dovecot version: 2.2.23 (806d709) / 2.2.23-1~bpo8+1
>>>> doveconf -n: http://pastebin.com/2xA2xuRw
>>>> Filesystem: CephFS - Jewel
>>>>
>>>> After migrating our users from our old server to our new one we can't
>>>> access a few mailboxes. Backtrace follows:
>>>>
>>>> root at dovecot:/# gdb --args /usr/lib/dovecot/imap -u
>>>> daniel.colchete at mav.com.br
>>>> GNU gdb (Debian 7.7.1+dfsg-5) 7.7.1
>>>> Copyright (C) 2014 Free Software Foundation, Inc.
>>>> License GPLv3+: GNU GPL version 3 or later <
>>>> http://gnu.org/licenses/gpl.html>
>>>> This is free software: you are free to change and redistribute it.
>>>> There is NO WARRANTY, to the extent permitted by law.  Type "show
>> copying"
>>>> and "show warranty" for details.
>>>> This GDB was configured as "x86_64-linux-gnu".
>>>> Type "show configuration" for configuration details.
>>>> For bug reporting instructions, please see:
>>>> <http://www.gnu.org/software/gdb/bugs/>.
>>>> Find the GDB manual and other documentation resources online at:
>>>> <http://www.gnu.org/software/gdb/documentation/>.
>>>> For help, type "help".
>>>> Type "apropos word" to search for commands related to "word"...
>>>> Reading symbols from /usr/lib/dovecot/imap...Reading symbols from
>>>>
>> /usr/lib/debug/.build-id/e2/488f839ac2b10504ef74b1b2f2146891ca2f62.debug...done.
>>>> done.
>>>> (gdb) run
>>>> Starting program: /usr/lib/dovecot/imap -u daniel.colchete at mav.com.br
>>>> * PREAUTH [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID
>> ENABLE
>>>> IDLE SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS
>> THREAD=ORDEREDSUBJECT
>>>> MULTIAPPEND URL-PARTIAL CATENATE UNSELECT CHILDREN NAMESPACE UIDPLUS
>>>> LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES
>> WITHIN
>>>> CONTEXT=SEARCH LIST-STATUS BINARY MOVE SPECIAL-USE QUOTA] Logged in as
>>>> daniel.colchete at mav.com.br
>>>> a select INBOX
>>>>
>>>> Program received signal SIGSEGV, Segmentation fault.
>>>> strrchr () at ../sysdeps/x86_64/strrchr.S:32
>>>> 32      ../sysdeps/x86_64/strrchr.S: No such file or directory.
>>>> (gdb) where
>>>> #0  strrchr () at ../sysdeps/x86_64/strrchr.S:32
>>>> #1  0x00007ffff7b0a261 in sdbox_file_move (file=file at entry
>> =0x5555557e6530,
>>>> alt_path=alt_path at entry=true) at sdbox-file.c:312
>>>> #2  0x00007ffff7b0cd11 in dbox_sync_file_move_if_needed
>>>> (type=SDBOX_SYNC_ENTRY_TYPE_MOVE_TO_ALT, file=0x5555557e6530) at
>>>> sdbox-sync.c:30
>>>> #3  sdbox_sync_file (type=SDBOX_SYNC_ENTRY_TYPE_MOVE_TO_ALT, uid=13120,
>>>> seq=819, ctx=0x5555557e32e0) at sdbox-sync.c:58
>>>> #4  sdbox_sync_add (sync_rec=0x7fffffffe570, ctx=0x5555557e32e0) at
>>>> sdbox-sync.c:96
>>>> #5  sdbox_sync_index (ctx=0x5555557e32e0) at sdbox-sync.c:131
>>>> #6  sdbox_sync_begin (mbox=mbox at entry=0x5555557ce500, flags=flags at entry
>> =(unknown:
>>>> 0), ctx_r=ctx_r at entry=0x7fffffffe680) at sdbox-sync.c:234
>>>> #7  0x00007ffff7b0d07d in sdbox_sync (mbox=mbox at entry=0x5555557ce500,
>>>> flags=flags at entry=(unknown: 0)) at sdbox-sync.c:297
>>>> #8  0x00007ffff7b0d108 in sdbox_storage_sync_init (box=0x5555557ce500,
>>>> flags=(MAILBOX_SYNC_FLAG_FULL_READ |
>> MAILBOX_SYNC_FLAG_FIX_INCONSISTENT))
>>>> at sdbox-sync.c:323
>>>> #9  0x00007ffff7aea85b in mailbox_sync_init (box=0x5555557ce500,
>>>> flags=(MAILBOX_SYNC_FLAG_FULL_READ |
>> MAILBOX_SYNC_FLAG_FIX_INCONSISTENT))
>>>> at mail-storage.c:1664
>>>> #10 0x00007ffff7aea9a7 in mailbox_sync (box=<optimized out>,
>>>> flags=<optimized out>, flags at entry=MAILBOX_SYNC_FLAG_FULL_READ) at
>>>> mail-storage.c:1712
>>>> #11 0x0000555555568fa0 in select_open (readonly=false,
>> mailbox=<optimized
>>>> out>, ctx=0x5555557c9928) at cmd-select.c:303
>>>> #12 cmd_select_full (cmd=<optimized out>, readonly=<optimized out>) at
>>>> cmd-select.c:426
>>>> #13 0x000055555556fdbd in command_exec (cmd=cmd at entry=0x5555557c9800)
>> at
>>>> imap-commands.c:180
>>>> #14 0x000055555556e182 in client_command_input (cmd=cmd at entry
>> =0x5555557c9800)
>>>> at imap-client.c:958
>>>> #15 0x000055555556e210 in client_command_input (cmd=0x5555557c9800) at
>>>> imap-client.c:1018
>>>> #16 0x000055555556e5d5 in client_handle_next_command
>>>> (remove_io_r=<synthetic pointer>, client=0x5555557c8c00) at
>>>> imap-client.c:1058
>>>> #17 client_handle_input (client=0x5555557c8c00) at imap-client.c:1070
>>>> #18 0x000055555556ead5 in client_input (client=0x5555557c8c00) at
>>>> imap-client.c:1117
>>>> #19 0x00007ffff7837c3c in io_loop_call_io (io=0x5555557c96f0) at
>>>> ioloop.c:564
>>>> #20 0x00007ffff78390a1 in io_loop_handler_run_internal
>> (ioloop=ioloop at entry=0x5555557966e0)
>>>> at ioloop-epoll.c:220
>>>> #21 0x00007ffff7837cc5 in io_loop_handler_run (ioloop=ioloop at entry
>> =0x5555557966e0)
>>>> at ioloop.c:612
>>>> #22 0x00007ffff7837e68 in io_loop_run (ioloop=0x5555557966e0) at
>>>> ioloop.c:588
>>>> #23 0x00007ffff77ce0e3 in master_service_run (service=0x555555796580,
>>>> callback=<optimized out>) at master-service.c:640
>>>> #24 0x0000555555561ab2 in main (argc=3, argv=0x555555796390) at
>> main.c:454
>>>> (gdb)
>>>>
>>>> One important info is that I used to use Alternate Storage on the older
>>>> servers, but the not on the new one. Code seems to be trying to move a
>>>> message to an alternate storage that doesn't exist.
>>>>
>>>> doveadm dump dovecot.index will show that we still have the
>>>> ALTERNATE_STORAGE flag set:
>>>>
>>>> root at dovecot:/srv/dovecot/mail/
>>>> mav.com.br/daniel.colchete/mailboxes/INBOX/dbox-Mails# doveadm dump
>>>> dovecot.index|grep RECORD|head
>>>> -- RECORDS: 932
>>>> RECORD: seq=1, uid=9393, flags=0x49 (Seen Answered)
>>>> RECORD: seq=2, uid=9442, flags=0x40
>>>> RECORD: seq=3, uid=10253, flags=0x48 (Seen)
>>>> RECORD: seq=4, uid=10268, flags=0x48 (Seen)
>>>> RECORD: seq=5, uid=10283, flags=0x48 (Seen)
>>>> RECORD: seq=6, uid=10309, flags=0x48 (Seen)
>>>> RECORD: seq=7, uid=10311, flags=0x40
>>>> RECORD: seq=8, uid=10324, flags=0x49 (Seen Answered)
>>>> RECORD: seq=9, uid=10330, flags=0x48 (Seen)
>>>>
>>>> Thank you very much.
>>>>
>>>> Best,
>>>> Daniel Colchete
>>>>
>> Hi!
>>
>> Thank you for your report, we will have a look. Can you provide output
>> of doveconf -n please?
>>
>> ---
>> Aki Tuomi
>> Dovecot Oy
>>



More information about the dovecot mailing list