Pavel Stehule wrote:
> 2010/3/3 Yeb Havinga <yebhavinga@gmail.com>:
>
>> Theo Schlossnagle wrote:
>>
>>> I didn't look deeply at the postgres internals to see if there was a way
>>> to do double -> numeric and integer-types -> numeric without intermediary
>>> string format. If that sort of thing is easy to leverage, I'd be happy to
>>> share the code.
>>>
>>>
>> I think your code could be valuable for postgres on the fact alone that it
>> is almost twice as fast, and probably easy to integrate and unit test. We
>> make heavy use of the numeric data type, so I'm very interested!
>>
>
> I did some test and numeric->double is about 5% faster than
> numeric->string->double (on my PC)
>
numeric_to_double_no_overflow() also uses string as intermediate format.
Theo's conversions are the converse, from double to numeric, and do not
use string as intermediate format (if I understand it correct). (where
float8_numeric
http://doxygen.postgresql.org/backend_2utils_2adt_2numeric_8c.html#2de7f65c8de4b65dad441e77ea1bf402
does)
regards
Yeb Havinga