[Home]

Summary:ASTERISK-27115: Deadlock? db_sync_thread at db.c
Reporter:Ryan Smith (ryan_k_smith)Labels:
Date Opened:2017-07-10 08:36:26Date Closed:2020-01-14 11:13:42.000-0600
Priority:MajorRegression?
Status:Closed/CompleteComponents:
Versions:13.15.0 Frequency of
Occurrence
Occasional
Related
Issues:
duplicatesASTERISK-26978 rtp: Crash in ast_rtp_codecs_payload_code()
Environment:Cettos 6.8 FinalAttachments:( 0) core-asterisk-running-2017-07-07T15-44-43+0100-brief.txt
( 1) core-asterisk-running-2017-07-07T15-44-43+0100-full.txt
( 2) core-asterisk-running-2017-07-07T15-44-43+0100-locks.txt
( 3) core-asterisk-running-2017-07-07T15-44-43+0100-thread1.txt
Description:Asterisk/PJSIP simply stops processing any further SIP packets. Incoming options "ping" packets from proxy see a task-processor limit error related to pjsip/distributor (live clients have been redirected by fail over by time of requesting a core dump) Unfortunately debug log files have been deleted until the next occurrence.

Asterisk will often seq fault on requesting the core dump.

{noformat}
Processor                                      Processed   In Queue  Max Depth  Low water High water
pjsip/distributor-00000cda                        256958        292          8        450        500
pjsip/distributor-00000cdb                        254784          0          7        450        500
pjsip/distributor-00000cdc                        271315        251          6        450        500
pjsip/distributor-00000cdd                        252324        551          8        450        500
pjsip/distributor-00000cde                        252965        162          4        450        500
pjsip/distributor-00000cdf                        265077        214          8        450        500
pjsip/distributor-00000ce0                        265003        329          6        450        500
pjsip/distributor-00000ce1                        250271        346          8        450        500
pjsip/distributor-00000ce2                        251438        481          5        450        500
pjsip/distributor-00000ce3                        251036         28          8        450        500
{noformat}
Comments:By: Asterisk Team (asteriskteam) 2017-07-10 08:36:27.030-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: Ryan Smith (ryan_k_smith) 2017-07-10 08:37:30.169-0500

output fore create core dump.

By: Joshua C. Colp (jcolp) 2017-07-10 08:48:20.910-0500

This issue appears to be a duplicate and a change[1] has recently gone in which should resolve the problem. The change is in the current release candidate, 13.17.0-rc1, so you can try that or wait until the release of 13.17.0.

[1] https://gerrit.asterisk.org/#/c/5854/

By: Ryan Smith (ryan_k_smith) 2017-07-10 09:20:13.379-0500

Hi - Linked gerrit appears to reference ASTERISK-26978 which is an rtp_engine issue?

By: Joshua C. Colp (jcolp) 2017-07-10 09:25:03.368-0500

Yes, your backtrace shows the same:

{noformat}
Thread 119 (Thread 0x7f11da83d700 (LWP 1157)):
#0  0x000000324380aa86 in pthread_rwlock_rdlock () from /lib64/libpthread.so.0
#1  0x000000000056ebcb in ast_rtp_codecs_payload_code (codecs=0x7f121b118808, asterisk_format=1, format=0x15b97e8, code=0) at rtp_engine.c:937
#2  0x00007f11dd5db932 in bridge_p2p_rtp_write (instance=0x7f11b73075e0, rtcp=<value optimized out>) at res_rtp_asterisk.c:4455
#3  ast_rtp_read (instance=0x7f11b73075e0, rtcp=<value optimized out>) at res_rtp_asterisk.c:4711
#4  0x00007f11dcdb6429 in chan_pjsip_read (ast=0x7f11afdbaa40) at chan_pjsip.c:718
#5  0x00000000004b854d in __ast_read (chan=0x7f11afdbaa40, dropaudio=0) at channel.c:3952
#6  0x000000000047a1cb in bridge_handle_trip (bridge_channel=0x7f11bf348540) at bridge_channel.c:2416
{noformat}

That holds a channel lock and cascades to cause problems for other threads.

By: Ryan Smith (ryan_k_smith) 2017-07-10 09:28:14.411-0500

Cheers Joshua - thanks for the input will look to apply the patches.

By: Asterisk Team (asteriskteam) 2017-07-24 12:00:01.710-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