Warning on CLI


having CLI warrning when there are more than 100 SIP channels used for outbound dialing .
Oct 11 12:35:57 WARNING[9983]: res_agi.c:247 launch_script: Unable to create toast pipe: Too many open files
Oct 11 13:29:16 WARNING[12348]: channel.c:565 ast_channel_alloc: Channel allocation failed: Can't create alert pipe!
Oct 11 13:29:16 WARNING[12348]: chan_local.c:555 local_new: Unable to allocate channel structure(s)
Oct 11 13:34:30 WARNING[30151]: res_agi.c:170 launch_netscript: Unable to create socket: Too many open files
Oct 11 13:38:05 NOTICE[15124]: manager.c:1457 accept_thread: Accept returned -1: Too many open files
Who is Participating?
In safe_asterisk there is probably a line 'ulimit -c'. After that put the extra line 'ulimit -n 65535'.
That will set it so that it can open up to 65535 files.

From your 'ulimit -a' output it looks like this has already been set but it is still worth making the change just to make sure it is in effect.
After making the change you will need to restart asterisk (/etc/init.d/asterisk restart) which will unfortunetly drop any current calls.
How long has asterisk been running for?
Can you post the contents of the /usr/sbin/safe_asterisk file.
Improve Your Query Performance Tuning

In this FREE six-day email course, you'll learn from Janis Griffin, Database Performance Evangelist. She'll teach 12 steps that you can use to optimize your queries as much as possible and see measurable results in your work. Get started today!

can you also post the output of the command 'ulimit -a'
nocinfospanAuthor Commented:
output of 'ulimit -a'
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
file size               (blocks, -f) unlimited
pending signals                 (-i) 65536
max locked memory       (kbytes, -l) 32
max memory size         (kbytes, -m) unlimited
open files                      (-n) 65535
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 65536
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited

> Asterisk not running for long it happens when there are more than 100 SIP channels for outbound.
> and what kind of content u want from safe_asterisk

nocinfospanAuthor Commented:
i do the changes in safe_asterisk but the errors are still there.
You could also try increasing the pipes using the command 'ulimit -p 32' in safe_asterisk again.
If that does not help I would suggest posting on the Asterisk mailing list.
nocinfospanAuthor Commented:
As i tried that ulimit -p 32 its says unvalid argument . Any how as i searched through internet some people says set the ulimit before starting asterisk bcz some system do not set these setting on default.

And also some time i have echo problem . is there any paticular setting for echo in zapata.conf

right now its only


and what algorithim or software asterisk uses for ECHO?
Making the change in safe_asterisk is equivilent to issueing the command before running asterisk because safe_asterisk is a shell script.

What type of telephone cards do you have in the asterisk box?
Does the echo disappear after some time when talking (30 seconds or so)?

I used to get echo at the start of the call on my home system but I set the following configuration which cured the problem :-
; In some cases, the echo canceller doesn't train quickly enough and there
; is echo at the beginning of the call.  Enabling echo training will cause
; asterisk to briefly mute the channel, send an impulse, and use the impulse
; response to pre-train the echo canceller so it can start out with a much
; closer idea of the actual echo.  Value may be "yes", "no", or a number of
; milliseconds to delay before training (default = 400)

Also tweaking the txgain and rxgain can help reduce echo aswell.
nocinfospanAuthor Commented:
TE420B card
You could set echotraining=yes and see if that helps.
It is unusual to get echo on digital lines though.
How bad is the echo and does it correct itself or it it bad throughout the call?

You can play with the number of taps. Which way you go will depend if the echo fixes itself during the call. If it does you can try reducing the taps to make it work faster. If the echo does not disappear you can increase the number of taps.

Can you tell roughly how delayed the echo is?
nocinfospanAuthor Commented:
if ECHO comes then it remains through out the call. and i will definitely try echocancel and also set the taps accordingly. delay b/w echo is 1-2 secs.
1-2s is an incredibly long echo. You would need about 10,000 taps to do that. The best you could get would be 1024 taps and that is by buying the additional dsp for your TDM420P card.
To get that sort of echo there must be at least around 100,000km between you and the person you are calling. In that sort of situation there is nothing really you can do your end.
nocinfospanAuthor Commented:
hmmm ... and what kind of DSP is that is this is some hardware ???

also i have another box on which only astiersk is running for normal calling .. i am having problem with SIP
when i try to reload sip its hanged . and if its not after some time the accounts are not registering to the server giving timeout .
Yes its a module which plugs ino the socket on the card.  They dont have a picture of it on your card but this is the PCI version of your card http://www.digium.com/en/products/hardware/te410p.php and the version with the DSP fitted http://www.digium.com/en/products/hardware/te412p.php.
A DSP (Digital Signal Processor) is just a mini processor which is designed purely to do signal analysis.

For your other server What does it say when you connect to the command line and issue the reload command. Does it give any errors?

Night time here. Back online tomorrow.
nociSoftware EngineerCommented:
You can check the open files on a linux/unix system with lsof, and determine from the output how many and what handles are opened. And for most items also what file/pipe/socket etc. is attached to the filehandle.
Either: lsof -p <processid of appl>
or something like: lsof | grep asterisk.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.