Summary: | ASTERISK-27091: pjsip: Crash when joining bridge | ||
Reporter: | Joshua Elson (joshelson) | Labels: | |
Date Opened: | 2017-06-28 14:27:44 | Date Closed: | 2020-01-14 11:14:00.000-0600 |
Priority: | Major | Regression? | |
Status: | Closed/Complete | Components: | |
Versions: | 14.5.0 | Frequency of Occurrence | |
Related Issues: | |||
Environment: | Attachments: | ( 0) core.txt | |
Description: | Seen an occasional crash under moderate load in an otherwise normal call bridge scenario.
Dialplan up to crash output looks like: {noformat} [2017-06-28 12:44:43] VERBOSE[25780][C-000048c8] pbx.c: Executing [s@set-did-hint:1] Verbose("PJSIP/DFW-PROXY-00004e7e", "2,[set-did-hint] Setting Hint for 2104050015 to INUSE on Cust1") in new stack [2017-06-28 12:44:43] VERBOSE[25780][C-000048c8] app_verbose.c: [set-did-hint] Setting Hint for 2104050015 to INUSE on Cust1 [2017-06-28 12:44:43] VERBOSE[25780][C-000048c8] pbx.c: Executing [s@set-did-hint:2] ExecIf("PJSIP/DFW-PROXY-00004e7e", "0?Return") in new stack [2017-06-28 12:44:43] VERBOSE[25780][C-000048c8] pbx.c: Executing [s@set-did-hint:3] Set("PJSIP/DFW-PROXY-00004e7e", "DID_TO_SET=2104050015") in new stack [2017-06-28 12:44:43] VERBOSE[25780][C-000048c8] pbx.c: Executing [s@set-did-hint:4] Set("PJSIP/DFW-PROXY-00004e7e", "DEVICE_STATE(Custom:2104050015)=INUSE") in new stack [2017-06-28 12:44:43] VERBOSE[25780][C-000048c8] pbx.c: Executing [s@set-did-hint:5] Return("PJSIP/DFW-PROXY-00004e7e", "") in new stack [2017-06-28 12:44:43] VERBOSE[25780][C-000048c8] app_stack.c: Spawn extension (outside-in, , 1) exited non-zero on 'PJSIP/DFW-PROXY-00004e7e' [2017-06-28 12:44:43] VERBOSE[25780][C-000048c8] app_stack.c: PJSIP/DFW-PROXY-00004e7e Internal Gosub(set-did-hint,s,1(2104050015,INUSE)) complete GOSUB_RETVAL= [2017-06-28 12:44:43] VERBOSE[25780][C-000048c8] bridge_channel.c: Channel PJSIP/DFW-PROXY-00004e7d joined 'simple_bridge' basic-bridge <8fe9fbdc-0546-4467-b1ab-8827ba6b25c0> {noformat} | ||
Comments: | By: Asterisk Team (asteriskteam) 2017-06-28 14:27:44.934-0500 Thanks for creating a report! The issue has entered the triage process. That means the issue will wait in this status until a Bug Marshal has an opportunity to review the issue. Once the issue has been reviewed you will receive comments regarding the next steps towards resolution. A good first step is for you to review the [Asterisk Issue Guidelines|https://wiki.asterisk.org/wiki/display/AST/Asterisk+Issue+Guidelines] if you haven't already. The guidelines detail what is expected from an Asterisk issue report. Then, if you are submitting a patch, please review the [Patch Contribution Process|https://wiki.asterisk.org/wiki/display/AST/Patch+Contribution+Process]. By: Joshua Elson (joshelson) 2017-06-28 14:28:33.894-0500 Full backtrace attached. By: Joshua C. Colp (jcolp) 2017-06-28 14:36:56.850-0500 Are you using MixMonitor or Chanspy with these channels? If so you may be experiencing an issue that has been solved with the change at https://gerrit.asterisk.org/#/c/5758/ - I'd suggest trying that and reporting back. The backtrace itself shows memory corruption in frames, which will occur from the bug above. By: Joshua Elson (joshelson) 2017-06-28 14:43:08.335-0500 MixMonitor is very likely in use. Will apply patch and re-test / update ticket with results. By: Joshua Elson (joshelson) 2017-06-28 14:48:14.070-0500 Actually @jcolp, we had already applied the patch you reference to resolve another issue. This crash occurs with this patch already applied. By: Rusty Newton (rnewton) 2017-07-01 13:19:09.586-0500 Your backtrace appears to contain a memory corruption. We need one or both of the following items to continue investigation of the issue: 1. Valgrind output. See https://wiki.asterisk.org/wiki/display/AST/Valgrind for instructions on how to use Valgrind with Asterisk. 2. MALLOC_DEBUG output. See https://wiki.asterisk.org/wiki/display/AST/MALLOC_DEBUG+Compiler+Flag for instructions on how to use the MALLOC_DEBUG option. Note that MALLOC_DEBUG and Valgrind are mutually exclusive options. Valgrind output is preferable, but will be more system resource intensive and may be difficult to get on a production system. In such a case, you may have better luck getting the necessary output from MALLOC_DEBUG. By: Asterisk Team (asteriskteam) 2017-07-16 12:00:00.956-0500 Suspended due to lack of activity. This issue will be automatically re-opened if the reporter posts a comment. If you are not the reporter and would like this re-opened please create a new issue instead. If the new issue is related to this one a link will be created during the triage process. Further information on issue tracker usage can be found in the Asterisk Issue Guidlines [1]. [1] https://wiki.asterisk.org/wiki/display/AST/Asterisk+Issue+Guidelines |