Summary:ASTERISK-12107: Asterisk stop responding to commands, stop processing calls in and out
Reporter:Nicolas Ross (rossnick)Labels:
Date Opened:2008-05-29 07:19:31Date Closed:2011-06-07 14:03:21
Versions:Frequency of
Environment:Attachments:( 0) agi.txt
( 1) gdb_thread_20080528.txt
( 2) gdb_thread_20080529.txt
( 3) islocalprefix.sh
Description:Sometimes, Asterisk just stops working. I notice it with phones getting "No service" on their display, calls not comming in etc. I almost always have a console connected, and when I issue commands most of them doesn't do anything. For exemple, "core show channels" or "core show locks". Some commands like "sip show peers" only show half of the info.

I compiled with DONT_OPTIMIZE and DEBUG_THREADS and run asterisk inside gdb (/usr/sbin/asterisk -f -vvvg -c).


Os : CentOS 5 almost up todate.
Sangoma quad-port card hooked-up to a PRI with MTS/Allstream
23 configured SIP clients, curently serving 8.
Have been playing with call queues, curently none are configured.
AEL is my primary dialplan
Comments:By: Nicolas Ross (rossnick) 2008-05-29 08:07:19

It did it again.

Note that my top-most thread is still forking. Both times (yesterday and today), it was after calling an AGI script (bourne shell script, also attached).

By: Nicolas Ross (rossnick) 2008-05-29 08:36:16

I can now crash it every time. I use a small php script that uses phpagi to originate a call. The data sent to asterisk is attached as agi.txt. After the manager connection ended, my phone rings, I pickup, it then goes in my dialout macro and it crashes forking for my islocakprefix script.

Note that if I do manualy dial, it also goes into my dialout macro and it's working.

By: Tilghman Lesher (tilghman) 2008-06-19 18:07:57

When this happens, please use the remote command to grab the output:

asterisk -rx 'core show locks'

and upload the output here.  This ensures that NOTHING else is run on the console first.

By: Nicolas Ross (rossnick) 2008-06-19 18:16:49

I cannot, asterisk crashes completly...

By: Tilghman Lesher (tilghman) 2008-06-20 08:48:31

Could you give me a 'bt', 'bt full', and 'list' from that crash?

By: Nicolas Ross (rossnick) 2008-06-20 08:56:36

I was instructed on the asterisk list to do a "thread apply all bt" while running into the debuger. I uploaded those with the report (gdb_thread* file attached).

I'll see if I can reproduce it.

I since upgraded to 1.4.21 and change my method for determining the local or not call...

By: Tilghman Lesher (tilghman) 2008-06-21 07:52:05

rossnick:  if the process is still running, I'd much rather have a 'core show locks'.  If the process crashes, then a 'bt', 'bt full', and 'list' are what are generally useful.  There are some specific cases that need a 'thread apply all ...', but we leave it up to a specific bug marshal on the bugtracker to determine when it's needed for a particular issue.

By: Steve Murphy (murf) 2008-06-21 22:17:16

Sorry, got issue nums mixed up and closed this mistakenly. It's back!

By: Tilghman Lesher (tilghman) 2008-06-26 12:39:27

rossnick:  I need the requested information to be able to proceed on this issue.

By: Tilghman Lesher (tilghman) 2008-08-06 15:12:38

Suspended, due to lack of response.  If you're able to provide the requested information, please reopen this issue.  If you need assistance, please contact a bug marshal in #asterisk-bugs on the Freenode IRC network.