2

After upgrading from Freeswitch 1.2.9 (1.2.9+git~20130506T233047Z~7c88f35451) to Freeswitch 1.4.21 (1.4.21-35~64bit), freeswitch stopped dropping channels after they were hung up, and when we tried to do a manual uuid_kill, it gives us this lovely error:

-ERR No such channel!

Even though show channels shows that channel clearly there. From the bugs on jira.freeswitch.com that I've seen, it looks like it may be a code problem. A little more info on our environment/code:

We have a python twisted loop that connects to the client so the client can run commands on the server and vice versa. As soon as that twisted connection dies (the client is closed/disconnected) the channels are killed as well, but we need the channel to die before then as we're taking a lot of calls per second and need them to die when the other end is disconnected. We can't close and reopen the client every time a call is done, or reconnect as that would take way too much time and defeats the purpose of our use of the software.

Once again, this error only started happening when we changed to installing the freeswitch server using apt-get instead of directly from source. This lets us get a new server up and running extremely faster, and we would rather not take the extra time to use our previous method. Please tell me if there's any code you would like to look at, and ask for any clarification you need, but we would really like this to be fixed soon. Thanks in advance!

Edit: For more clarification, we're mainly using mod_callcenter, mod_conference, and mod_sofia with our software.

Edit 2: For a little more clarification, we're running this on Ubuntu 14.04 Server

We are using an ESL connection to connect and run commands in freeswitch from python, and we think that's the root of the problem. We tried exiting the connection, but that destroys both channels.

Also, all of the bugs filed already for this problem on Jira are closed for not being bugs. I thought I may have a bit more success here, as it is a programming type question.

Ethan Brouwer
  • 975
  • 9
  • 32

1 Answers1

1

You need to reproduce the issue in a test environment and file the bug report to Jira. At best you should also try reproducing it with the latest master branch (only Debian 8 is supported): https://freeswitch.org/confluence/display/FREESWITCH/Debian+8+Jessie

I had a similar problem when I used mod_perl, and a Perl object was referring to a session, and it was not properly destructed (if I remember it right, I had two Perl objects attached to the same session). That resulted in channels which were impossible to kill.

I suppose you are using a ESL connection between your application and FreeSWITCH, right?

Stanislav Sinyagin
  • 1,973
  • 10
  • 10
  • Yes. We are using an ESL connection, and we think that's the root of the problem. We tried exiting the connection, but that destroys both channels. I'll edit my question. Also, all of the bugs filed already for it are closed for not being bugs. We're running it on Ubuntu 14.04 which is based on Debian 8. It works, everything except for closing the channel. – Ethan Brouwer Sep 01 '15 at 02:16
  • well, unkillable channel is definitely a bug, but probably difficult to reproduce. If you can write a Python script which definitely reproduces the problem, it will be easier to track it on the server side. – Stanislav Sinyagin Sep 01 '15 at 07:15