[asterisk-dev] Time for a bug fix phase?

Grey Man greymanvoip at gmail.com
Sat May 31 10:00:06 CDT 2008


On Sat, May 31, 2008 at 3:00 PM, Steve Murphy <murf at digium.com> wrote:
>
> Which version of Asterisk did you do this in? The stuff I in did 1.4
> is different than what I did in trunk.

1.4.19 but I'd be pretty confident the CDR code in res_features.c
hasn't changed in later 1.4 versions.

> In general, the CDR merging was necessary to combine info that was
> captured in either the channel or peer CDR's.

What sort of information? To me it looks like information is only
going to be lost by merging. For example if the channels on either
side of the bridge happen to have different accountcodes then since
there is only one accountcode per CDR a combined CDR has to choose one
of the accountcodes. Which happens to be the crux of the problem when
an attended transfer takes place.

> And also, in general, I find that the CDR system is pretty much smeared
> across the entire code base, and innocuous changes in one part can
> solve one problem, but create a cascade of problems in other areas.

I don't doubt you there. That's one reason why I think the problem
needs some thought put into the design instead of just jumping in. The
starting point for a CDR design that works correctly should be to
create an option that allows the whole bridged/merged CDR approach to
be turned off and instead get a CDR per channel.

> I have been targeting trunk for changes to the CDR system, mainly
> because
> of all the complaints about changes I've made in 1.4. It disturbs apps
> they've
> worked hard to develop. I've pretty much written off 1.4, for this
> reason.
> There's hardly ANYTHING I can do without mucking somebody up.

I'd agree as well but it's worth noting that the current CDR system is
pretty broken, a lot of us are in a real fix about providing a
billable service and transfer functionality with Asterisk. The format
of the CDR records does not need to be altered and that would avoid
the most disruptive type of change. If the option to switch from the
current broken merged CDR behaviour to correct per channel CDR
behaviour was made into a config file switch that should further
minimise any pain.

I'd still contend that this is a major bug and should be fixed in 1.4
but I suspect that may be a lonely view.

Regards,

Greyman.



More information about the asterisk-dev mailing list