P
P
pcdesign2013-10-15 14:11:33
Asterisk
pcdesign, 2013-10-15 14:11:33

Deadlock at Trixbox?

Tell me please. Sometimes the following appears in the trixbox logs:

[Oct 15 14:51:04] ERROR[20896] /usr/src/redhat/BUILD/asterisk16-1.6.0.26/include/asterisk/lock.h: chan_sip.c line 20825 (restart_monitor): Deadlock? waited 5 sec for mutex '&monlock'?
[Oct 15 14:51:04] ERROR[20896] /usr/src/redhat/BUILD/asterisk16-1.6.0.26/include/asterisk/lock.h: chan_sip.c line 20806 (do_monitor): '&monlock' was locked here.
[Oct 15 14:51:09] ERROR[20896] /usr/src/redhat/BUILD/asterisk16-1.6.0.26/include/asterisk/lock.h: chan_sip.c line 20825 (restart_monitor): Deadlock? waited 10 sec for mutex '&monlock'?

If you type the command:
/usr/sbin/asterisk -rx "core show locks"
You can see the following:
=======================================================================
=== Currently Held Locks ======================= 1381832881.644731 ====
=======================================================================
=== 
=== <file> <line num> <function> <lock name> <lock addr>
=== <locked at>, <failed at>, <held for> (attempts, times locked)
===
=== Thread ID: 34868112 (do_monitor started at [20836] chan_sip.c restart_monitor())
=== ---> Lock #0 (chan_sip.c): MUTEX 20806 do_monitor &monlock 0x5defc20
===      1381832782.15513, 1381832779.92700, 99.629218 (1, 52039)
=== -------------------------------------------------------------------
===
=== Thread ID: 36318096 (pbx_thread started at [4006] pbx.c ast_pbx_start())
=== ---> Waiting for Lock #0 (chan_sip.c): MUTEX 20825 restart_monitor &monlock 0x5defc20
===      1381832786.889034, 1381832786.786326, 94.755697 (1, 4263)
=== --- ---> Locked Here: chan_sip.c line 20806 (do_monitor)
=== -------------------------------------------------------------------
===
=== Thread ID: 77179792 (pbx_thread started at [4006] pbx.c ast_pbx_start())
=== ---> Waiting for Lock #0 (chan_sip.c): MUTEX 20825 restart_monitor &monlock 0x5defc20
===      1381832786.965409, 1381832786.964463, 94.679322 (1, 821)
=== --- ---> Locked Here: chan_sip.c line 20806 (do_monitor)
=== -------------------------------------------------------------------
===
=======================================================================

All registrations fall off and the problem is solved only by rebooting the server.
How to deal with it?

Answer the question

In order to leave comments, you need to log in

5 answer(s)
S
Sergey Grushko, 2013-10-16
@pcdesign

Most likely, the problem occurs at the moments when the DNS lags.

G
g613, 2013-10-15
@g613

start by updating the asterisk. TrixBox by the way is a dead product already. If you still want something similar then FreePBX distro.

S
stavinsky, 2013-10-16
@stavinsky

Good afternoon.
Here is a similar issue, but you didn't describe the asterisk version. issues.asterisk.org/jira/browse/ASTERISK-17436
In any case, I will join the previous answer, I would also start by updating the asterisk, it's easier than digging into the sources of the morally obsolete version of Aster and looking for bugs there, which Aster has always been missing few.
UPD:
In pursuit
asterisk-support.ru/question/41897/perestali-registrirovatsia-tranki/
www.google.com.cy/search?q=Deadlock%3F+waited+10+sec+for+mutex+ '%26monlock'&oq =Deadlock%3F+waited+10+sec+for+mutex+'%26monlock'&aqs=chrome.0.69i57j69i58.258j0&sourceid=chrome&ie=UTF-8

R
Rsa97, 2014-11-07
@ruslite

In jquery, the .click, .hover, .keyPress, etc. methods are bind the callback function to the corresponding object method (onClick, onHover, onKeyPress) at the moment the method is called. Accordingly, if the buttons are loaded separately and asynchronously after the document is ready, when the .click method has already been called, the callback function is not attached to anything.
Find the nearest static parent of these buttons and put an event on it via

$('selector').on('click', '.info-click-unsuccess', $function() {
});

A
Alexander Tsymbal, 2014-11-07
@AlexanderTsymbal

if the content is loaded from another site/script, then it is added to the page after calling your code.
jquery has its own methods for this:

$('.info-click-unsuccess').on('click',function () {
    $('.info-click-unsuccess').hide();
  });

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question