[jadmin] Jabber 1.4.3 problem -- segfault after upgrade from ubuntu 5 to ubuntu 6.06
Victor Danilchenko
victor at askonline.net
Sun Oct 21 21:20:05 CDT 2007
(it's jabber 1.4.3 according to 'dpkg --list', this doesn't seem to
correspond with the official jabber versioning nomenclature?..)
I ran jabberd in debug mode. It accepts one login, and upon logout, it
segaults, so no more than one login is ever possible. It was working
fine under the previous OS distro, I just did the upgrade two days
ago... any idea what's wrong?
I tried it with three different clients, with the same result. I use
MUC, but I disabled it for the testing, and the segfault still occurs
without it.
Here is the debug output preceding the segfault, right after I log out:
Sun Oct 21 21:57:02 2007 mio.c:829 mio while loop, working
Sun Oct 21 21:57:02 2007 mio.c:977 MIO read from socket 17:
</stream:stream>
Sun Oct 21 21:57:02 2007 c2s [client.c:282] pthsock_client_read called
with: m:812E520 flag:4 arg:812E4A0
Sun Oct 21 21:57:02 2007 c2s [client.c:287] io_select Socket 17 close
notification
Sun Oct 21 21:57:02 2007 deliver.c:474 DELIVER 4:demo.askonline.net
<route type='error' to='victor at demo.askonline.net/81E7E18'
from='17 at c2s/812E520'/>
Sun Oct 21 21:57:02 2007 deliver.c:678 delivering to instance 'sessions'
Sun Oct 21 21:57:02 2007 deliver.c:95 (80D18E0)incoming packet <route
type='error' to='victor at demo.askonline.net/81E7E18' from='17 at c2s/812E520'/>
Sun Oct 21 21:57:02 2007 users.c:143
js_user(victor at demo.askonline.net,8130320)
Sun Oct 21 21:57:02 2007 sessions.c:159 end 136216088 'Disconnected'
Sun Oct 21 21:57:02 2007 mio_ssl.c:133 SSL Cleanup for 0
Sun Oct 21 21:57:02 2007 mio.c:505 freed MIO socket
Sun Oct 21 21:57:02 2007 mtq 8141DF0 entering from pth
Sun Oct 21 21:57:02 2007 mtq 8141DF0 queue call 81E7E18
Sun Oct 21 21:57:02 2007 sessions.c:331 THREAD:SESSION exiting
Sun Oct 21 21:57:02 2007 modules.c:135 mapi_call 2
Sun Oct 21 21:57:02 2007 modules.c:158 MAPI 81E80B8
Sun Oct 21 21:57:02 2007 mod_last storing last for user
victor at demo.askonline.net
Segmentation fault
# Sun Oct 21 21:57:02 2007 dnsrv.c:155 dnsrv: Read error on
coprocess(1): 0 Success
Sun Oct 21 21:57:02 2007 dnsrv.c:169 DNSRV CHILD: out of loop.. exiting
normal
A couple of times, instead of a segfault, there's a 'memory leak
detected' error at the same point, with the same result -- server dies.
BTW, I tried to look at the coredump (set the limit to 10000 blocks),
but no coredump is created... does jabberd do something funny to change
where and/or how core id dumped? Anyway, here is the last few lines of
strace output, right before the segfault... not sure if they help:
sigprocmask(SIG_SETMASK, ~[KILL STOP RTMIN], []) = 0
gettimeofday({1193018905, 976875}, NULL) = 0
rt_sigpending([]) = 0
read(3, 0x809f8a4, 128) = -1 EAGAIN (Resource
temporarily unavailable)
rt_sigprocmask(SIG_SETMASK, [], ~[KILL STOP RTMIN RT_1], 8) = 0
select(16, [3 15], [], [], {0, 0}) = 0 (Timeout)
rt_sigprocmask(SIG_SETMASK, ~[KILL STOP RTMIN RT_1], NULL, 8) = 0
gettimeofday({1193018905, 977593}, NULL) = 0
sigprocmask(SIG_SETMASK, [], ~[KILL STOP RTMIN]) = 0
time(NULL) = 1193018905
write(2, "Sun Oct 21 22:08:25 2007 mtq 81"..., 55Sun Oct 21 22:08:25
2007 mtq 8141DF0 entering from pth) = 55
write(2, "\n", 1
) = 1
time(NULL) = 1193018905
write(2, "Sun Oct 21 22:08:25 2007 mtq 81"..., 56Sun Oct 21 22:08:25
2007 mtq 8141DF0 queue call 81E7E18) = 56
write(2, "\n", 1
) = 1
time(NULL) = 1193018905
write(2, "Sun Oct 21 22:08:25 2007 sessio"..., 63Sun Oct 21 22:08:25
2007 sessions.c:331 THREAD:SESSION exiting) = 63
write(2, "\n", 1
) = 1
time(NULL) = 1193018905
write(2, "Sun Oct 21 22:08:25 2007 module"..., 51Sun Oct 21 22:08:25
2007 modules.c:135 mapi_call 2) = 51
write(2, "\n", 1
) = 1
time(NULL) = 1193018905
write(2, "Sun Oct 21 22:08:25 2007 module"..., 52Sun Oct 21 22:08:25
2007 modules.c:158 MAPI 81E80B8) = 52
write(2, "\n", 1
) = 1
time(NULL) = 1193018905
write(2, "Sun Oct 21 22:08:25 2007 mod_la"..., 82Sun Oct 21 22:08:25
2007 mod_last storing last for user victor at demo.askonline.net) = 82
write(2, "\n", 1
) = 1
time(NULL) = 1193018905
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
Sun Oct 21 22:08:25 2007 dnsrv.c:155 dnsrv: Read error on coprocess(1):
0 Success
Sun Oct 21 22:08:25 2007 dnsrv.c:169 DNSRV CHILD: out of loop.. exiting
normal
+++ killed by SIGSEGV (core dumped) +++
Any idea on what causes this problem, you fine, beautiful, brilliant
people?.. This is a production server, I am desperate...
--
Victor Danilchenko
Senior Software Engineer, AskOnline.net
victor at askonline.net - 617-273-0119
More information about the JAdmin
mailing list