Summary: | ASTERISK-07494: astmanproxy and res_jabber have some conflict | ||
Reporter: | jmls (jmls) | Labels: | |
Date Opened: | 2006-08-09 06:42:22 | Date Closed: | 2006-09-05 10:06:00 |
Priority: | Minor | Regression? | No |
Status: | Closed/Complete | Components: | Resources/res_jabber |
Versions: | Frequency of Occurrence | ||
Related Issues: | |||
Environment: | Attachments: | ( 0) console20060820-1900.txt | |
Description: | I have modified the safe_asterisk script to automatically kill any open astmanproxy service and to start astmanproxy when asterisk starts. The 39248 version of res_jabber.c now does not connect to the jabber server if astmanproxy starts before the jabber connection is complete. You can workaround this by adding a delay to the astmanproxy startup. I presume that this broke because of the manager stuff added to res_jabber.c in r39248 ****** ADDITIONAL INFORMATION ****** my original safe_asterisk is [snip] killall astmanproxy run_asterisk & astmanproxy & I now have to change this to killall astmanproxy run_asterisk & sleep 5 astmanproxy & | ||
Comments: | By: Serge Vecher (serge-v) 2006-08-09 09:43:54 you may have to contact Dave Troy (the author of astmanproxy) to see where the change needs to take place. Just google 'david troy astmanproxy' for his email address. I'll send a reminder through the bugtracker as well to see if he responds. By: Serge Vecher (serge-v) 2006-08-09 09:44:32 dave: do you mind looking into this bug. By: jmls (jmls) 2006-08-20 03:39:31 this is still the issue with the latest trunk (r40602). If astmanproxy is started, then jabber does not send any messages, and seems to get stuck somewhere, as a "stop now" takes several seconds (if not longer) to quit. Note the workaround, well, doesn't work. :( It seems to be ok but doesn't send messages) By: jmls (jmls) 2006-08-20 04:03:39 this combination works with r37320, I'll try to find the exact version it broke in By: jmls (jmls) 2006-08-20 13:02:40 ok, I've narrowed it down. My initial description was wrong, r39248 is the *last* version that it works with, r39272 is broken. To reproduce this behaviour: r39248: 1) safe_asterisk 2) try send a message (works) 3) start astmanproxy 4) try send a message (works) r39272: 1) safe_asterisk 2) try send a message (works) 3) start astmanproxy 4) try send a message (does not work) I've attached console output so you can see exactly what goes on. My comments are indicated by ################ By: jmls (jmls) 2006-08-20 13:10:33 console20060820-1900.txt uploaded to show where the problems are By: Serge Vecher (serge-v) 2006-08-21 10:14:25 asking for russel's help, since that was his commit of ast_verbose_threadstorage branch. Thanks, Russell ;) By: jmls (jmls) 2006-08-30 07:38:06 This is holding me up from moving from 37320 (buggy) upwards. Is there anything I can do ? By: jmls (jmls) 2006-09-03 02:42:12 ok, some more info. Thanks to some great help from mog, we've determined that it is *not* astmanproxy that causes the problem, but any connected manager session. take the following scenario: with manager.c 39272 upwards Start asterisk send a jabber message (sends ok) connect to manager (telnet 127.0.0.1 5038) send a jabber message (now broken) If I revert manager.c back to r39271 then it all works. So, it looks as if it might be a problem with the changes to manager.c Please could you update the description of this bug to reflect the new findings. Thanks. By: Russell Bryant (russell) 2006-09-03 09:43:03 I can't seem to reproduce this problem. I have an authenticated manager session over telnet, and I am still able to send messages using JabberSend. This is some variant of the trunk that include the changes noted as problematic. *CLI> show version Asterisk SVN-russell-frame_caching-r41161M built by russell @ badunkadunk on a i686 running Linux on 2006-08-27 16:03:59 UTC By: Russell Bryant (russell) 2006-09-03 10:08:27 I updated to the latest trunk and still cannot reproduce the problem. *CLI> show version Asterisk SVN-trunk-r41527M built by russell @ badunkadunk on a i686 running Linux on 2006-09-03 04:44:43 UTC By: jmls (jmls) 2006-09-03 12:41:17 i can reproduce this all the time on the latest trunk, with no modified source . I can give access to my machine if someone wants to take a look - as soon as the jabber message is sent, asterisk goes into 100% cpu. Revert to 39271 of manager.c and it all works just fine. By: jmls (jmls) 2006-09-03 13:05:27 just double-checked with latest svn trunk. [root@quebec asterisk]# safe_asterisk [root@quebec asterisk]# asterisk -r Asterisk SVN-trunk-r41883, Copyright (C) 1999 - 2006 Digium, Inc. and others. Created by Mark Spencer <markster@digium.com> Asterisk comes with ABSOLUTELY NO WARRANTY; type 'show warranty' for details. This is free software, with components licensed under the GNU General Public License version 2 and other licenses; you are welcome to redistribute it under certain conditions. Type 'show license' for details. ========================================================================= Connected to Asterisk SVN-trunk-r41883 currently running on quebec (pid = 1244) Verbosity is at least 3 -- Executing [7703@from-sip:1] JabberSend("SIP/7706-09d78138", "asterisk|jmls@indigo.tessera.co.uk/Pandion|Message ID is 1157302101.0") in new stack -- Executing [7703@from-sip:2] Hangup("SIP/7706-09d78138", "") in new stack == Spawn extension (from-sip, 7703, 2) exited non-zero on 'SIP/7706-09d78138' -- Executing [h@from-sip:1] NoOp("SIP/7706-09d78138", "++++ HANGUP FROM-SIP ++++ [/16]") in new stack -- Executing [h@from-sip:2] GotoIf("SIP/7706-09d78138", "1?end") in new stack -- Goto (from-sip,h,6) -- Executing [h@from-sip:6] NoOp("SIP/7706-09d78138", "EndOfCall") in new stack quebec*CLI> exit #at this point, from another terminal, I did: [root@quebec asterisk]# telnet 127.0.0.1 5038 Trying 127.0.0.1... Connected to quebec.tessera.co.uk (127.0.0.1). Escape character is '^]'. Asterisk Call Manager/1.0 #back to the first terminal ... [root@quebec asterisk]# asterisk -r Asterisk SVN-trunk-r41883, Copyright (C) 1999 - 2006 Digium, Inc. and others. Created by Mark Spencer <markster@digium.com> Asterisk comes with ABSOLUTELY NO WARRANTY; type 'show warranty' for details. This is free software, with components licensed under the GNU General Public License version 2 and other licenses; you are welcome to redistribute it under certain conditions. Type 'show license' for details. ========================================================================= Connected to Asterisk SVN-trunk-r41883 currently running on quebec (pid = 1244) -- Remote UNIX connection Verbosity is at least 3 -- Executing [7703@from-sip:1] JabberSend("SIP/7706-09d78540", "asterisk|jmls@indigo.tessera.co.uk/Pandion|Message ID is 1157302178.1") in new stack quebec*CLI> #notice that the call gets stuck at the Jabbersend (unlike the first message before the manager got a connection) # top now gives: (asterisk@100%) top - 17:50:10 up 1 day, 9:17, 2 users, load average: 0.46, 0.42, 0.21 Tasks: 57 total, 2 running, 55 sleeping, 0 stopped, 0 zombie Cpu(s): 50.4% us, 0.0% sy, 0.0% ni, 48.6% id, 0.0% wa, 1.0% hi, 0.0% si Mem: 2074736k total, 745660k used, 1329076k free, 71112k buffers Swap: 2031608k total, 0k used, 2031608k free, 576548k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1244 root 16 0 25200 10m 5300 S 100 0.5 0:32.62 asterisk 1 root 16 0 1972 528 452 S 0 0.0 0:00.50 init 2 root RT 0 0 0 0 S 0 0.0 0:00.07 migration/0 3 By: Russell Bryant (russell) 2006-09-03 16:15:20 Sure, if you can catch me on IRC, I would be happy to log in and take a look. I'll need to use gdb on your machine while you replicate the problem to see what is going on ... By: Serge Vecher (serge-v) 2006-09-05 09:43:35 was this fixed by r41944 or that was just bug found in the process? By: jmls (jmls) 2006-09-05 09:46:17 it fixed this. Sorry, thought that this was laready closed. |