Hi Timo

With the current hg (ed5fa76f0dc7), I get a crash as soon as I
append a single message to a dsync replicated mailbox.

Setup is the same as in the thread "dsync replication errors"
( http://www.dovecot.org/list/dovecot/2013-January/070574.html )

Feb 11 15:01:19 doco1 dovecot: imap-login: Login: user=<user1>,
method=PLAIN, rip=192.168.23.130, lip=192.168.23.61, mpid=1709,
session=<roTpV3PV1wDAqBeC>
Feb 11 15:01:32 doco1 dovecot: doveadm: Fatal: master:
service(doveadm): child 1713 killed with signal 11 (core dumped)
Feb 11 15:01:56 doco1 dovecot: doveadm: Fatal: master:
service(doveadm): child 1715 killed with signal 11 (core dumped)

bt full is attached.

Thanks,
Oli
-- 
message transmitted on 100% recycled electrons
gdb /usr/libexec/dovecot/doveadm-server /mailstore/user1/core.1713


GNU gdb (GDB) Red Hat Enterprise Linux (7.2-56.el6)
Copyright (C) 2010 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-redhat-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/libexec/dovecot/doveadm-server...Reading symbols from 
/usr/lib/debug/usr/libexec/dovecot/doveadm-server.debug...done.
done.
[New Thread 1713]
Missing separate debuginfo for 
Try: yum --disablerepo='*' --enablerepo='*-debug*' install 
/usr/lib/debug/.build-id/21/67834e278274afa4a757bb3bbbbdfd5c94bbc3
Reading symbols from /usr/lib64/dovecot/libdovecot-storage.so.0.0.0...Reading 
symbols from 
/usr/lib/debug/usr/lib64/dovecot/libdovecot-storage.so.0.0.0.debug...done.
done.
Loaded symbols for /usr/lib64/dovecot/libdovecot-storage.so.0.0.0
Reading symbols from /usr/lib64/dovecot/libdovecot.so.0.0.0...Reading symbols 
from /usr/lib/debug/usr/lib64/dovecot/libdovecot.so.0.0.0.debug...done.
done.
Loaded symbols for /usr/lib64/dovecot/libdovecot.so.0.0.0
Reading symbols from /lib64/libc.so.6...(no debugging symbols found)...done.
Loaded symbols for /lib64/libc.so.6
Reading symbols from /lib64/libdl.so.2...(no debugging symbols found)...done.
Loaded symbols for /lib64/libdl.so.2
Reading symbols from /lib64/librt.so.1...(no debugging symbols found)...done.
Loaded symbols for /lib64/librt.so.1
Reading symbols from /lib64/ld-linux-x86-64.so.2...(no debugging symbols 
found)...done.
Loaded symbols for /lib64/ld-linux-x86-64.so.2
Reading symbols from /lib64/libpthread.so.0...(no debugging symbols 
found)...done.
[Thread debugging using libthread_db enabled]
Loaded symbols for /lib64/libpthread.so.0
Reading symbols from /usr/lib64/dovecot/lib15_notify_plugin.so...Reading 
symbols from 
/usr/lib/debug/usr/lib64/dovecot/lib15_notify_plugin.so.debug...done.
done.
Loaded symbols for /usr/lib64/dovecot/lib15_notify_plugin.so
Reading symbols from /usr/lib64/dovecot/lib20_replication_plugin.so...Reading 
symbols from 
/usr/lib/debug/usr/lib64/dovecot/lib20_replication_plugin.so.debug...done.
done.
Loaded symbols for /usr/lib64/dovecot/lib20_replication_plugin.so
Core was generated by `dovecot/doveadm-server'.
Program terminated with signal 11, Segmentation fault.
#0  dsync_mailbox_try_save_cur (importer=0x15699f0, save_change=0x0) at 
dsync-mailbox-import.c:428
428             newmail_link(importer, newmail, save_change->uid);
Missing separate debuginfos, use: debuginfo-install 
glibc-2.12-1.80.el6_3.7.x86_64
(gdb) bt full
#0  dsync_mailbox_try_save_cur (importer=0x15699f0, save_change=0x0) at 
dsync-mailbox-import.c:428                                                      
                                                                        
        m1 = {guid = 0x1580180 "5bdd352daff91851ad060000960042f4", uid = 1}     
                                                                                
                                                                
        newmail = 0x1569b00                                                     
                                                                                
                                                                
        remote_saved = false                                                    
                                                                                
                                                                
        m2 = {guid = 0x0, uid = 0}                                              
                                                                                
                                                                
        diff = 22463952                                                         
                                                                                
                                                                
#1  dsync_mailbox_try_save (importer=0x15699f0, save_change=0x0) at 
dsync-mailbox-import.c:440                                                      
                                                                            
No locals.                                                                      
                                                                                
                                                                
#2  0x000000000041b4fa in dsync_mailbox_import_changes_finish 
(importer=0x15699f0) at dsync-mailbox-import.c:1249                             
                                                                                
  
        __FUNCTION__ = "dsync_mailbox_import_changes_finish"                    
                                                                                
                                                                
#3  0x0000000000419119 in dsync_brain_recv_mail_change (brain=0x154c090) at 
dsync-brain-mails.c:70                                                          
                                                                    
        change = <value optimized out>                                          
                                                                                
                                                                
        ret = <value optimized out>                                             
                                                                                
                                                                
#4  dsync_brain_sync_mails (brain=0x154c090) at dsync-brain-mails.c:270         
                                                                                
                                                                
        changed = false                                                         
                                                                                
                                                                
        __FUNCTION__ = "dsync_brain_sync_mails"                                 
                                                                                
                                                                
#5  0x0000000000415d19 in dsync_brain_run_real (brain=0x154c090, 
changed_r=0x7fff1cebc59f) at dsync-brain.c:303                                  
                                                                               
        changed = false                                                         
                                                                                
                                                                
        ret = true                                                              
                                                                                
                                                                
#6  dsync_brain_run (brain=0x154c090, changed_r=0x7fff1cebc59f) at 
dsync-brain.c:332                                                               
                                                                             
        _data_stack_cur_id = 5                                                  
                                                                                
                                                                
        ret = true                                                              
                                                                                
                                                                
#7  0x0000000000416260 in dsync_brain_run_io (context=0x154c090) at 
dsync-brain.c:38                                                                
                                                                            
        brain = 0x154c090                                                       
                                                                                
                                                                
---Type <return> to continue, or q <return> to quit---    
        changed = false                                                         
                                                                                
                                                                
        try_pending = true                                                      
                                                                                
                                                                
#8  0x0000000000424a10 in dsync_ibc_stream_input (ibc=0x1548260) at 
dsync-ibc-stream.c:174                                                          
                                                                            
No locals.                                                                      
                                                                                
                                                                
#9  0x00007f35fbbbfbc6 in io_loop_call_io (io=0x1548c80) at ioloop.c:387        
                                                                                
                                                                
        ioloop = 0x152b680                                                      
                                                                                
                                                                
        t_id = 4                                                                
                                                                                
                                                                
#10 0x00007f35fbbc0c57 in io_loop_handler_run (ioloop=<value optimized out>) at 
ioloop-epoll.c:215                                                              
                                                                
        ctx = 0x152e4b0                                                         
                                                                                
                                                                
        events = <value optimized out>                                          
                                                                                
                                                                
        event = 0x152e520                                                       
                                                                                
                                                                
        list = 0x1548cd0                                                        
                                                                                
                                                                
        io = <value optimized out>                                              
                                                                                
                                                                
        tv = {tv_sec = 4, tv_usec = 778811}                                     
                                                                                
                                                                
        msecs = <value optimized out>
        ret = 1
        i = <value optimized out>
        call = <value optimized out>
        __FUNCTION__ = "io_loop_handler_run"
#11 0x00007f35fbbbfb68 in io_loop_run (ioloop=0x152b680) at ioloop.c:406
No locals.
#12 0x0000000000414511 in cmd_dsync_run_remote (ctx=0x153a660, user=0x1542d60) 
at doveadm-dsync.c:342
        status = <value optimized out>
#13 cmd_dsync_run_real (ctx=0x153a660, user=0x1542d60) at doveadm-dsync.c:442
---Type <return> to continue, or q <return> to quit---
         ibc = 0x1548260
        ibc2 = 0x0
        brain = 0x154c090
        sync_ns = <value optimized out>
        brain_flags = <value optimized out>
        ret = 0
#14 0x00000000004147f1 in cmd_dsync_run (_ctx=0x153a660, user=0x1542d60) at 
doveadm-dsync.c:520
        ctx = 0x153a660
        lock_path = 0x1524120 "/mailstore/user1/.dovecot-sync.lock"
        lock = 0x1547f20
        lock_fd = 13
        ret = <value optimized out>
#15 0x000000000040ba9f in doveadm_mail_next_user (ctx=0x153a660, input=<value 
optimized out>, error_r=0x7fff1cebc7a0) at doveadm-mail.c:309
        error = <value optimized out>
        ret = 0
        __FUNCTION__ = "doveadm_mail_next_user"
#16 0x00000000004135d6 in doveadm_mail_cmd_server_run (conn=0x15309a0) at 
client-connection.c:125
        error = 0x7f35fbb53000 "\177ELF\002\001\001"
        ret = <value optimized out>
#17 client_handle_command (conn=0x15309a0) at client-connection.c:227
        ctx = 0x153a660
        flags = <value optimized out>
        cmd_name = <value optimized out>
        input = {module = 0x0, service = 0x428fbc "doveadm", username = 
0x1523239 "user1", session_id = 0x0, local_ip = {family = 0, u = {ip6 = 
{__in6_u = {__u6_addr8 = '\000' <repeats 15 times>, __u6_addr16 = {0, 0, 0, 0, 
---Type <return> to continue, or q <return> to quit---
                    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 = 0, 
flags_override_remove = 0, no_userdb_lookup = 0}
        argc = 6
#18 client_connection_input (conn=0x15309a0) at client-connection.c:326
        args = 0x1523290
        _data_stack_cur_id = 3
        line = <value optimized out>
        ok = true
#19 0x00007f35fbbbfbc6 in io_loop_call_io (io=0x1530820) at ioloop.c:387
        ioloop = 0x152b680
        t_id = 2
#20 0x00007f35fbbc0c57 in io_loop_handler_run (ioloop=<value optimized out>) at 
ioloop-epoll.c:215
        ctx = 0x152e4b0
        events = <value optimized out>
        event = 0x152e520
        list = 0x1530870
        io = <value optimized out>
        tv = {tv_sec = 2147483, tv_usec = 0}
        msecs = <value optimized out>
        ret = 1
        i = <value optimized out>
        call = <value optimized out>
        __FUNCTION__ = "io_loop_handler_run"
#21 0x00007f35fbbbfb68 in io_loop_run (ioloop=0x152b680) at ioloop.c:406
---Type <return> to continue, or q <return> to quit---
No locals.
#22 0x00007f35fbb77203 in master_service_run (service=0x152b520, 
callback=<value optimized out>) at master-service.c:546
No locals.
#23 0x0000000000413cf1 in main (argc=1, argv=0x152b370) at main.c:90
        set_roots = {0x428d60, 0x0}
        error = 0x0
     

Reply via email to