Call ends but channel persists

Hello.

Problem I’m about to present seems to be something like I mentioned in title. But I’m not sure so far, therefore do not feel limited by the title. Problem is as it goes:

At some certain point ( this has happened to me for third time in 5 months now. ) there emerges a channel which is tried to be autodestructed by asterisk, but fails everytime and reschedules for 10000 ms later, which also fails and repeats as every call after that point goes through that same problem.

[2020-01-27 10:36:08] VERBOSE[11450][C-000109a1] bridge_channel.c: Channel SIP/XXXX-00021ca4 joined 'simple_bridge' basic-bridge <9600ecae-e49e-4378-a841-0d4711ef6a78>
[2020-01-27 10:36:08] VERBOSE[11023][C-000109a1] bridge_channel.c: Channel Local/XXXX@from-queue-00007488;2 joined 'simple_bridge' basic-bridge <9600ecae-e49e-4378-a841-0d4711ef6a78>
[2020-01-27 10:36:08] VERBOSE[11465][C-000109a1] bridge_channel.c: Channel Local/XXXX@from-queue-00007488;1 joined 'simple_bridge' basic-bridge <a4ac17e0-c6b4-4c08-86c4-3e22b0382d9f>
[2020-01-27 10:36:09] VERBOSE[11004][C-000109a1] bridge_channel.c: Channel SIP/YYYY-00021ca2 joined 'simple_bridge' basic-bridge <a4ac17e0-c6b4-4c08-86c4-3e22b0382d9f>
[2020-01-27 10:40:45] VERBOSE[11450][C-000109a1] bridge_channel.c: Channel SIP/XXXX-00021ca4 left 'simple_bridge' basic-bridge <9600ecae-e49e-4378-a841-0d4711ef6a78>
[2020-01-27 10:40:45] VERBOSE[11023][C-000109a1] bridge_channel.c: Channel Local/XXXX@from-queue-00007488;2 left 'simple_bridge' basic-bridge <9600ecae-e49e-4378-a841-0d4711ef6a78>
[2020-01-27 10:40:45] VERBOSE[11023][C-000109a1] app_macro.c: Spawn extension (macro-dial-one, s, 54) exited non-zero on 'Local/XXXX@from-queue-00007488;2' in macro 'dial-one'
[2020-01-27 10:40:45] VERBOSE[11023][C-000109a1] pbx.c: Spawn extension (from-queue-exten-internal, XXXX, 8) exited non-zero on 'Local/XXXX@from-queue-00007488;2'
[2020-01-27 10:40:45] VERBOSE[11023][C-000109a1] pbx.c: Executing [h@from-queue-exten-internal:1] Macro("Local/XXXX@from-queue-00007488;2", "hangupcall,") in new stack
[2020-01-27 10:40:45] VERBOSE[11023][C-000109a1] pbx.c: Executing [s@macro-hangupcall:1] GotoIf("Local/XXXX@from-queue-00007488;2", "1?theend") in new stack
[2020-01-27 10:40:45] VERBOSE[11023][C-000109a1] pbx_builtins.c: Goto (macro-hangupcall,s,3)
[2020-01-27 10:40:45] VERBOSE[11023][C-000109a1] pbx.c: Executing [s@macro-hangupcall:3] ExecIf("Local/XXXX@from-queue-00007488;2", "0?Set(CDR(recordingfile)=)") in new stack
[2020-01-27 10:40:45] VERBOSE[11023][C-000109a1] pbx.c: Executing [s@macro-hangupcall:4] Hangup("Local/XXXX@from-queue-00007488;2", "") in new stack
[2020-01-27 10:40:45] VERBOSE[11023][C-000109a1] app_macro.c: Spawn extension (macro-hangupcall, s, 4) exited non-zero on 'Local/XXXX@from-queue-00007488;2' in macro 'hangupcall'
[2020-01-27 10:40:45] VERBOSE[11023][C-000109a1] pbx.c: Spawn extension (from-queue-exten-internal, h, 1) exited non-zero on 'Local/XXXX@from-queue-00007488;2'
[2020-01-27 10:40:45] VERBOSE[11465][C-000109a1] bridge_channel.c: Channel Local/XXXX@from-queue-00007488;1 left 'simple_bridge' basic-bridge <a4ac17e0-c6b4-4c08-86c4-3e22b0382d9f>

This is the log of a call that lived through aforementioned problem. As you can see call answered on 10:36:08 and hung up on 10:40:45. First autodestruct on channel SIP/YYYY-00021ca2 logs on 10:36:46, during the call so to say. But it fails every time it tries and keeps trying until I restart asterisk at which point system is not able to take any more calls.

At that certain point I also monitored the system asterisk runs on. Some useful information:

  • There are more than enough inodes for any process to start.
  • Disk is not more than half full at any given moment.
  • System load does not increases more than normal, maybe 0.2 more or less, nothing unusual.
  • RAM consumption does not increase in any way that draws attention.
  • There are no overlapping crushes on any other processes of notice.
  • ntpd is running and updating date as it is expected.
  • Network does not flicker. I was able to sustain this problem for like 1 minutes at live to conduct this test. Ping, traceroute, and obligatory sl install succeeded.

After all the tests and observations my own assumption is that this channel itself stands alone on bridge created and disallows asterisk to destroy it. Why asterisk also fails to destroy this channel that I do now know. Any help would be appreciated. I can happily provide any information that is not private or any test result that I can conduct on a live server.

Thanks.

I do not see anything happening at that time in your logs.

Are you able to un-Macro() things ? In favor of Gosub() application ?