Hi Andrei,
I dunno if this will confuse you or not. I run the gdb a couple of
times on different instances when the queue gets filled and it shows
different traces.
See below.
0 0xffffe002 in ?? ()
#1 0x0805931c in main_loop ()
#2 0x0805b1e2 in main ()
#3 0x42015574 in ?? ()
(gdb) bt
#0 0xffffe002 in ?? ()
#1 0x0805931c in main_loop ()
#2 0x0805b1e2 in main ()
#3 0x42015574 in ?? ()
(gdb) bt
#0 0xffffe002 in ?? ()
#1 0x0805931c in main_loop ()
#2 0x0805b1e2 in main ()
#3 0x42015574 in ?? ()
(gdb) bt
#0 0xffffe002 in ?? ()
#1 0x0805931c in main_loop ()
#2 0x0805b1e2 in main ()
#3 0x42015574 in ?? ()
(gdb) bt
#0 0xffffe002 in ?? ()
#1 0x0805931c in main_loop ()
#2 0x0805b1e2 in main ()
#3 0x42015574 in ?? ()
#0 0xffffe002 in ?? ()
#1 0x4003f6d4 in ?? ()
#2 0x4003ecb5 in ?? ()
#3 0x4003dc07 in ?? ()
#4 0x4003e35b in ?? ()
#5 0x4003df22 in ?? ()
#6 0x4003e26a in ?? ()
#7 0x4003d7ac in ?? ()
#8 0x080695a3 in sip_resolvehost ()
#9 0x0806a0c4 in free_rdata_list ()
#10 0x08066523 in free_proxy ()
#11 0x40056f91 in ?? ()
#12 0x400561b6 in ?? ()
#13 0x40056873 in ?? ()
#14 0x4005525c in ?? ()
#15 0x4005d762 in ?? ()
#16 0x0804e35f in do_action ()
#17 0x0804f97c in run_actions ()
#18 0x0806d183 in print_expr ()
#19 0x0806bb4b in push ()
#20 0x0806bb1e in push ()
#21 0x0804e24b in do_action ()
#22 0x0804f97c in run_actions ()
#23 0x0804e11f in do_action ()
#24 0x0804f97c in run_actions ()
#25 0x08068ee7 in get_record ()
#26 0x08075e2f in fm_status ()
#27 0x0805970e in add_interfaces ()
#28 0x0805b1e2 in main ()
#29 0x42015574 in ?? ()
#0 0xffffe002 in ?? ()
#1 0x4003f6d4 in ?? ()
#2 0x4003ecb5 in ?? ()
#3 0x4003dc07 in ?? ()
#4 0x4003e35b in ?? ()
#5 0x4003df22 in ?? ()
#6 0x4003e26a in ?? ()
#7 0x4003d7ac in ?? ()
#8 0x080695a3 in sip_resolvehost ()
#9 0x0806a0c4 in free_rdata_list ()
#10 0x08066523 in free_proxy ()
#11 0x40056f91 in ?? ()
#12 0x400561b6 in ?? ()
#13 0x40056873 in ?? ()
#14 0x4005525c in ?? ()
#15 0x4005d762 in ?? ()
#16 0x0804e35f in do_action ()
#17 0x0804f97c in run_actions ()
#18 0x0806d183 in print_expr ()
#19 0x0806bb4b in push ()
#20 0x0806bb1e in push ()
#21 0x0804e24b in do_action ()
#22 0x0804f97c in run_actions ()
#23 0x0804e11f in do_action ()
#24 0x0804f97c in run_actions ()
#25 0x08068ee7 in get_record ()
#26 0x08075e2f in fm_status ()
#27 0x0805970e in add_interfaces ()
#28 0x0805b1e2 in main ()
#29 0x42015574 in ?? ()
#0 0xffffe002 in ?? ()
#1 0x4206d2dc in ?? ()
#2 0x4206fa7d in ?? ()
#3 0x4206f72d in ?? ()
#4 0x42062ed8 in ?? ()
#5 0x42062dd3 in ?? ()
#6 0x42061b95 in ?? ()
#7 0x08051ef4 in read_line_set ()
#8 0x080536be in destroy_fifo ()
#9 0x08052c20 in open_fifo_server ()
#10 0x080592b5 in main_loop ()
#11 0x0805b1e2 in main ()
#12 0x42015574 in ?? ()
#0 0xffffe002 in ?? ()
#1 0x080723cf in tcpconn_put ()
#2 0x080594bc in main_loop ()
#3 0x0805b1e2 in main ()
#4 0x42015574 in ?? ()
#0 0xffffe002 in ?? ()
#1 0x080723cf in tcpconn_put ()
#2 0x080594bc in main_loop ()
#3 0x0805b1e2 in main ()
#4 0x42015574 in ?? ()
On Tue, 15 Mar 2005, Andrei Pelinescu-Onciul wrote:
On Mar 15, 2005 at 16:42, kcassidy(a)kakelma.mine.nu
<kcassidy(a)kakelma.mine.nu> wrote:
Hi All,
I have a strange problem with my ser-0.8.14. I noticed that sometimes
it's very slow in responding to requests (e.g. INVITES). After tinkering
around, I saw my UDP queue gets filled up (netstat -an). The only fix I
have right now is to restart the process. Then the problem will come up
again around 1-2 days. I have around 40 registered users, and tried
setting the children parameter in ser.cfg to different numbers like 4,6,
and 10. But still having the problem.
A possible cause could be blocking dns lookups.
When you see the queues fill up again try to attach with gdb to the
corresponding ser process (gdb ser pid). You can see the pid using
netstat -anp. Send me the output of the bt (gdb command). It should tell
what that ser process is doing.
Also for debugging run it with very few children (2, 3). If it's
something that blocks the processes, this should make it happen faster
:-)
Andrei