[asterisk-users] Asterisk simply stops call processing

Antony Stone Antony.Stone at asterisk.open.source.it
Tue Feb 28 08:00:02 CST 2023


On Wednesday 22 February 2023 at 15:29:38, John Harragin wrote:

> If there are multiple connections that the utilize the same driver, try
> putting:
> 
> Threading       = 2
> 
> in the appropriate driver section of
> /etc/odbcinst.ini

I'll give that a go, however I doubt that it is the problem, since I see the 
correct result from the ODBC query recorded in the assignment verbose log 
output, therefore the query is done and the result has been used by the time 
Asterisk freezes.

> ...this would be a possibility if the problem is intermittent.

It's actually extremely repeatable - I have not seen call processing proiceed 
beyond this stage once so far.

> Also can you successfully execute the same SQL from the cli?

Yes, and as I say, they query is working fine and Asterisk is correctly using 
the returned value in the assignment.

The further detail which I think I added in a later post is that this is 
actually in a context which gets called using a Gosub() from two different 
places in the dialplan.

From one, it works fine; from the other, it gets stuck.  Completely consistent.

> By the way, what driver is asterisk using?

You mean ODBC?  That's connected to MariaDB.

> On Mon, Feb 20, 2023 at 11:12 PM Antony Stone wrote:
> > Hi.
> > 
> > I have a strange problem and I'm looking for suggestions on how to
> > investigate it.
> > 
> > I have a dialplan which is processing a call, and Asterisk simply stops
> > doing anything for that call.
> > 
> > I have verbose and debug logging turned on.
> > 
> > There are two steps at a particular point in the dialplan:
> >         Set(UserCredit=${ODBC_GENERIC(select Credit('${DDI}'))})
> >         
> >         Verbose(6,Current credit level for user ${DDI} is ${UserCredit}
> > pence)
> > 
> > 
> > Everything gets processed up to and including the first line - the
> > verbose log file shows me:
> > 
> > pbx.c:2946 in pbx_extension_helper: Executing
> > [0044xxxx509903 at DialBleg:46]
> > Set("SIP/TrunkTwo-00001184", "UserCredit=999") in new stack
> > 
> > (Phone number obscured here for anonymity).
> > 
> > Then, that is it.  Nothing further happens with call processing (until
> > one of the parties hangs up) and the second dialplan command above never
> > appears in the verbose log file.  I have several other Verbose(6,.....)
> > commands preceding this, and they all output into the log file as expected.
> > 
> > If another call arrives on the same server, Asterisk quite happily starts
> > processing it and records what it's doing in the log files.
> > 
> > 
> > Can anyone suggest how I can investigate what Asterisk is doing at the
> > point where it "gets stuck", and how to find out why it simply stops
> > processing the call and doesn't continue with the dialplan commands?
> > 
> > 
> > Thanks,
> > 
> > 
> > Antony.

-- 
Why are they called "The Rocky Mountains"?
What are other mountains made of?

                                                   Please reply to the list;
                                                         please *don't* CC me.



More information about the asterisk-users mailing list