[asterisk-users] Issue with Asterisk 13, multiple CDR per queue and arbitrary upper limit

Michaël Gaudette michael at virtutel.ca
Fri Mar 31 20:55:59 CDT 2017


I`ve recently upgraded a server from 1.8 to Asterisk 13.  While everything
is under control, I have one issue with the way CDRs are kept for queues.
And I don`t mean “I don`t like it”. I mean it crashes the server.

I realize there are multiple CDRs per queue call – one per ring/per phone,
basically.  The issue is that whenever the number of CDRs “to  be
recorded” for a call exceeds 5000, Asterisk becomes unresponsive for a few
minute. I get this message in the console:

“taskprocessor_push: The 'subm:cdr_engine-00000003' task processor queue
reached 5000 scheduled tasks again.”

This scenario is trivial to reproduce: a queue, with simultaneous ring, 20
phones, all unreachable, 1 second between attempts.  After 250 (5000
divided by 20) seconds of waiting asterisk partially breaks down.

This seems to be because while multiple CDR`s are written per queue call,
it`s only done at the  end of the call, so CDRs accumulate in
memory/cacher/whatever and break some limit.

So, my question is:  is there any way to force the CDR`s to be written as
the queue app is working it`s magic, instead of at the very end of the
call? Or anyway to work around this limit? Or any fix for this?


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-users/attachments/20170331/9c2ec4fe/attachment.html>

More information about the asterisk-users mailing list