[SR-Users] time for acc records

Henning Westerholt henning.westerholt at 1und1.de
Thu Aug 11 15:26:12 CEST 2011


On Thursday 11 August 2011, Alex Hermann wrote:
> > > In MySQL, one could use the DECIMAL type.
> > 
> > there is currently no write functionality in the DB API and also scheme
> > generation XSL to support the DECIMAL type.
> 
> IMHO support should be added then. Floating point (on digitial equipment)
> is not suitable nor acceptable (it might even be illegal in some
> jurisdictions) for accounting.
> 
> I really wonder why DOUBLE support is(/would be) present in a SIP proxy.

Hi Alex,

good question - I guess as workaround for a lack of DECIMAL in old open source 
database versions.
 
> > If double is not correct for
> > you, what about just storing the milliseconds as INT value e.g. 12,3s =>
> > 123 in the DB?
> 
> Why try to invent a workaround? Fixed point number types are part of SQL92:
> NUMERIC(precision, scale).

I think something similar is used related to the 'q' value for contacts, the 
respective field in the location table is also floating point.

http://devel.kamailio.org/doxygen/QvalueHandling.html
 
> > BTW, only db_mysql and db_unixodbc currently support DECIMAL value for
> > read, db_mysql evaluates it to DB1_STRING, db_unixodbc to DB1_INT.
> 
> I know. You committed the fix for MySQL yourself after my bugreport, see
> commit b74e6f6.

Yes, I also looked it up. :-) Just wanted to give some context about the 
current support in the DB API.

> Internal representation as string is ok as long as calculations are not
> necessary. Alternatively a scaled integer could be used internally.

Best regards,

Henning



More information about the sr-users mailing list