Does anyone know what causes the following error:
[Mar 7 09:51:01] ERROR[27369] bridge_channel.c: We couldn’t write alert pipe for 0x7f956c026988(SIP/3bc0b5b669cbdd42847984a43c152474d26-00000004)… something is VERY wrong
It keeps repeating in console like 20 times a second, and the CPU goes 100%. I have to restart asterisk to get rid of it.
Any help would be much appreciated.
Make sure you are using the most recent sub-version of a currently supported version of Asterisk. If the problem is still present, raise a bug report on issues.asterisk.org giving as much detail as possible.
The error is caused when a write to a pipe that is used signal that there is a message on an internal queue fails. This could only happen if there was a bug, a hardware failure, or the relevant filesystem was completely out of space. The bug could be one that is causing the pipe not to be read, at all, after every message is consumed, or for long enough for a large number of messages to accumulate.
Hi David, I have installed Asterisk 13.7.2. I am using it with Webrtc. I have connected 2 browsers and let them all night, after a while the CPU went 100%, the last cli message being: DEBUG[5961]: chan_sip.c:6725 sip_destroy: Destroying SIP dialog 1cec39969179a71ca78405462b6f8395, since then no messages are shown. The console is responsive (tried sip show users, core show version). In your opinion what is more likely to cause such high CPU? Maybe I should post more info so you can figure out?
Thanks.
I experienced the same problem today. Using webrtc (sip.js) on firefox and chrome. Using lastest asterisk (13.9.1).
CPU goes to 100%, asterisk can only be stopped using killall -9 asterisk. New webrtc connections are not accepted (time out).
Log shows:
[Jun 21 17:15:09] ERROR[24363][C-00000000] bridge_channel.c: We couldn’t write alert pipe for 0x7f0f34006d78(SIP/webrtc-00000000)… something is VERY wrong
Console shows:
[Jun 21 17:14:49] ERROR[24363][C-00000000]: bridge_channel.c:989 ast_bridge_channel_queue_frame: We couldn’t write alert pipe for 0x7f0f34006d78(SIP/webrtc-00000000)… something is VERY wrong
Both at a rate of 50 lines per second …
valter, have you found a solution or workaround for this?
The trouble when something is VERY wrong, is that it means something has happened that no-one anticipated. Consequently, no-one will have thought of possible causes for it.
Failing to write an alert pipe would either be the result of completely running out of space on the temporary filesystem the thread that is supposed to be handling the channel having stalled, or not existing at all.
Could be just about anything. I’ve seen wierd things happen when permissions aren’t set right. Like Asterisk not able to write to log files. That’s just a shot in the dark.
Sorry for late answer.
Here is how I solved it:
edit asterisk_folder/contrib/scripts/pjproject/pjnath/src/pjnath/stun_session.c
[in function pj_stun_session_send_msg under pj_status_t status; put: cache_res=PJ_FALSE;]
the compile asterisk.
It’s running now flawless more than 3 months.
Thanks valter. Will definitely check your solution out! Have moved to freeswitch in the meantime which worked perfectly, but would like to have two working configurations for production. Thanks again!