[Dovecot] Segfault problem when using TWO dovecot servers!
Adam M. Dunn
adunn at hgsc.bcm.tmc.edu
Fri Mar 10 23:20:42 EET 2006
On Thu, 9 Mar 2006, Timo Sirainen wrote:
> As for the segfault, it shouldn't really be doing that, but you'd
> need to give gdb backtrace for me to figure out why it happens, see
> http://dovecot.org/bugreport.html
>
>
Version: 1.0.beta3
OS: Linux, SuSE 10 2.6.13-15-smp /x86_64
I get this Seg Fault when a different Dovecot server reads a user's
Maildir directory after another Dovecot server creates temp files in it.
Basically, it seems like two servers don't like reading each other's
temp files. If I delete the files manually each time, everything works
fine.
Core was generated by `imap'.
Program terminated with signal 11, Segmentation fault.
Reading symbols from /lib64/libdl.so.2...done.
Loaded symbols for /lib64/libdl.so.2
Reading symbols from /lib64/tls/libc.so.6...done.
Loaded symbols for /lib64/tls/libc.so.6
Reading symbols from /lib64/ld-linux-x86-64.so.2...done.
Loaded symbols for /lib64/ld-linux-x86-64.so.2
#0 0x00002aaaaad3823f in memcpy () from /lib64/tls/libc.so.6
(gdb) bt full
#0 0x00002aaaaad3823f in memcpy () from /lib64/tls/libc.so.6
No symbol table info available.
#1 0x00000000005a6090 in ?? ()
No symbol table info available.
#2 0x0000000000445abc in mail_index_map (index=0x5a4950, force=<value
optimized out>) at mail-index.c:714
map = (struct mail_index_map *) 0x5a5f40
ret = 5917008
__PRETTY_FUNCTION__ = "mail_index_map"
#3 0x00000000004464ad in mail_index_try_open (index=0x5a4950,
lock_id_r=0x7fffffe5023c) at mail-index.c:1204
lock_id = <value optimized out>
ret = 1
#4 0x0000000000446642 in mail_index_open (index=0x5a4950, flags=5,
lock_method=MAIL_INDEX_LOCK_DOTLOCK) at mail-index.c:1391
i = 0
ret = 5
#5 0x000000000043e926 in index_storage_mailbox_init (ibox=0x5a5b70,
index=0x5a4950, name=<value optimized out>, flags=<value optimized out>,
move_to_memory=false) at index-storage.c:360
storage = (struct mail_storage *) 0x59ddb0
index_flags = 5
lock_method = MAIL_INDEX_LOCK_DOTLOCK
ret = 5922960
__PRETTY_FUNCTION__ = "index_storage_mailbox_init"
#6 0x000000000041e9c1 in maildir_open (storage=0x59ddb0, name=0x59e8b0
"Sent Items", flags=0) at maildir-storage.c:444
istorage = <value optimized out>
mbox = (struct maildir_mailbox *) 0x5a5b70
index = (struct mail_index *) 0x5a4950
path = 0x594288 "/users/adunn/Maildir/.Sent Items"
index_dir = <value optimized out>
control_dir = 0x5942d8 "/users/adunn/Maildir/.Sent Items"
st = {st_dev = 432, st_ino = 0, st_nlink = 512, st_mode = 32768,
st_uid = 0, st_gid = 2, pad0 = 0, st_rdev = 1141945065,
st_size = 176186000, st_blksize = 1141862340, st_blocks = 603596000,
st_atim = {tv_sec = 1141945065, tv_nsec = 174278000}, st_mtim = {tv_sec =
0,
tv_nsec = 0}, st_ctim = {tv_sec = 0, tv_nsec = 5849696}, __unused =
{5843568, 5849576, 140737486589814}}
shared = 0
pool = 0x5a5b10
#7 0x000000000041ec43 in maildir_mailbox_open (_storage=0x59ddb0,
name=0x59e8b0 "Sent Items", input=<value optimized out>, flags=0)
at maildir-storage.c:508
storage = <value optimized out>
istorage = <value optimized out>
path = 0x5941e8 "/users/adunn/Maildir/.Sent Items"
st = {st_dev = 21, st_ino = 2104, st_nlink = 5, st_mode = 16832,
st_uid = 14538, st_gid = 432, pad0 = 0, st_rdev = 0, st_size = 512,
st_blksize = 32768, st_blocks = 2, st_atim = {tv_sec = 1141945065,
tv_nsec = 126409000}, st_mtim = {tv_sec = 1141862340, tv_nsec =
748524000},
st_ctim = {tv_sec = 1141945065, tv_nsec = 124664000}, __unused = {0, 0,
0}}
#8 0x0000000000413dfa in _cmd_select_full (cmd=0x59e3c8, readonly=false)
at cmd-select.c:32
client = (struct client *) 0x59e350
storage = (struct mail_storage *) 0x59ddb0
box = (struct mailbox *) 0x59cba0
status = {messages = 5900192, recent = 0, unseen = 5887248,
uidvalidity = 0, uidnext = 5900192, first_unseen_seq = 0, keywords =
0x59e350}
mailbox = 0x59e8b0 "Sent Items"
#9 0x0000000000413f9b in cmd_select (cmd=<value optimized out>) at
cmd-select.c:92
No locals.
#10 0x000000000041589a in _client_input (context=<value optimized out>) at
client.c:364
client = (struct client *) 0x59e350
cmd = (struct client_command_context *) 0x59e3c8
#11 0x0000000000468fc3 in io_loop_handler_run (ioloop=0x59cb50) at
ioloop-poll.c:203
ctx = (struct ioloop_handler_context *) 0x59cba0
pollfd = <value optimized out>
tv = {tv_sec = 9, tv_usec = 986755}
---Type <return> to continue, or q <return> to quit---
io = (struct io *) 0x59e650
t_id = 2
msecs = <value optimized out>
ret = 0
call = <value optimized out>
#12 0x00000000004684dd in io_loop_run (ioloop=0x59cb50) at ioloop.c:246
No locals.
#13 0x000000000041ce34 in main (argc=<value optimized out>, argv=0x0,
envp=0x592840) at main.c:238
No locals.
(gdb)
More information about the dovecot
mailing list