I have  been in favor of using GMP for decimal and possibly for other
math operations for about a year now.

so ++

Jobin Augustine wrote:
> Voting for Brian to go for GMP.
> because almost all linux distributions already contains GMP library. just
> like libc. so this cannot be considered as additional dependency.
> this is one of the heavily used library. well tested and stable.
> this way we can avoid reinventing the wheel.
> 
> if existing code is using string for this. its really bad.
> 
> -Jobin
> 
> 
> 
> On Sun, Nov 1, 2009 at 4:05 AM, Brian Aker <[email protected]> wrote:
> 
>> Hi!
>>
>> On Oct 31, 2009, at 11:59 AM, John David Duncan wrote:
>>
>>  The final result is not easy to grok.  (Base 10^9?? One's complement!? And
>>> as Sheeri said, how big on disk??)  But decimal.c is really only about 3,000
>>> lines of code, including a 100-line comment on the SQL standard and a
>>> 200-line test suite.  GMP is more like 50,000 lines.
>>>
>> GMP can do a lot more feature-wise and can handle a much larger set of
>> numbers then what the hand written one can.
>>
>>  So I'd like to make the case that it's pretty remarkable code.  A database
>>> *must* have a fixed decimal type, this design has some real advantages over
>>> others, and there's nothing else out there that you can really just drop in
>>> to replace it.
>>>
>> Looking at the code there really isn't much in the way of tests (200 lines
>> is pretty small). One of the other things I noticed was that when reading
>> the comments I found that it followed the standard bug for bug (aka...
>> behavior wise). Is that really way someone expects?
>>
>> I went and looked at the one PG is using. No limitations on size, doesn't
>> follow the SQL standard,...
>>
>> I'm not sure that I buy the disk format being the absolute best. Internally
>> when it was pushed several folks pointed out other solutions which, I have
>> no idea, might have been better then this one. What I do know though is that
>> it is not that complete.
>>
>> One question I ask myself... do we want to have to extend this library to
>> add additional functions? For that matter, what functions matter for a
>> database beyond comparison operations? There was a good argument to go with
>> the GMP since it was complete, widely used, and had a community that worked
>> on it. While right now? We will be stuck extending our own library, that
>> only we use.
>>
>> There is also the question of numerical constraint, what matters?
>>
>> I'm on the fence. I know this will go sometime, but I don't know when. I
>> hate creating upgrade paths though.
>>
>> Cheers,
>>        -Brian
>>
>>
>>> I'd urge you folks to consider giving the decimal library a new lease on
>>> life by reusing it in drizzle.
>>>
>>>
>>>
>>> On Oct 30, 2009, at 11:44 AM, Brian Aker wrote:
>>>
>>>  Hi!
>>>> I'm working through some reference checking right now, and decided to
>>>> look at decimal. Just for those playing along at home, up until 5.0 MySQL
>>>> just stored DECIMAL as a string, mostly, and did all operations on it
>>>> through normal mathematical operations. Starting in 5.0 we switched to a
>>>> library and internal developer wrote which should mimic the SQL standard
>>>> (and if you read the header in the subject you can find out some of the
>>>> absurd bits it is doing).
>>>>
>>>> Would anyone care if we dropped this in favor of just using one of the
>>>> GNU based arbitrary libraries in the future? GMP perhaps (though it is not
>>>> quite the same)? I'm a minimalist when it comes to built in types so I tend
>>>> to favor this approach, but I would like to hear from others as well.
>>>>
>>>> Cheers,
>>>>        -Brian
>>>>
>>>> BTW any thoughts on long double over our current use of double? It looks
>>>> like it would be a mess.
>>>>
>>>> _______________________________________________
>>>> Mailing list: 
>>>> https://launchpad.net/~drizzle-discuss<https://launchpad.net/%7Edrizzle-discuss>
>>>> Post to     : [email protected]
>>>> Unsubscribe : 
>>>> https://launchpad.net/~drizzle-discuss<https://launchpad.net/%7Edrizzle-discuss>
>>>> More help   : https://help.launchpad.net/ListHelp
>>>>
>>>
>> _______________________________________________
>> Mailing list: 
>> https://launchpad.net/~drizzle-discuss<https://launchpad.net/%7Edrizzle-discuss>
>> Post to     : [email protected]
>> Unsubscribe : 
>> https://launchpad.net/~drizzle-discuss<https://launchpad.net/%7Edrizzle-discuss>
>> More help   : https://help.launchpad.net/ListHelp
>>
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> Mailing list: https://launchpad.net/~drizzle-discuss
> Post to     : [email protected]
> Unsubscribe : https://launchpad.net/~drizzle-discuss
> More help   : https://help.launchpad.net/ListHelp


_______________________________________________
Mailing list: https://launchpad.net/~drizzle-discuss
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~drizzle-discuss
More help   : https://help.launchpad.net/ListHelp

Reply via email to