Skip site navigation (1) Skip section navigation (2)

Re: Bug : FAST_NUMBER_FAILED when getting NaN on BigDecimal

From: DocSea - Patrice Delorme <pdelorme(at)docsea(dot)com>
To: Kevin Grittner <Kevin(dot)Grittner(at)wicourts(dot)gov>
Cc: pgsql-jdbc(at)postgresql(dot)org
Subject: Re: Bug : FAST_NUMBER_FAILED when getting NaN on BigDecimal
Date: 2012-09-12 09:00:03
Message-ID: 50504F13.2020607@docsea.com (view raw or flat)
Thread:
Lists: pgsql-jdbc
Le 11/09/2012 16:10, Kevin Grittner a écrit :
> DocSea - Patrice Delorme <pdelorme(at)docsea(dot)com> wrote:
>   
>> It is impossible to fetch data when numeric value in database is
>> NaN
>> It throws FAST_NUMBER_FAILED
>> (postgresql-jdbc-9.1-902:AbstractJdbc2ResultSet:2176) because my
>> value is not numeric (NaN).
>> This is incorect behaviour since 'NaN' is a legal value in
>> postgres for numeric type.
>   
> How do you expect what you read to be represented in Java?
>   
> -Kevin
>
>
Hi Kevin,

You are right, as a matter of Fact BigDecimal does not support NaN like 
Double, Float does.
However, postgres DOES support it and I find it disturbing that the 
driver fails so badly without explaination (I had to dig in the driver 
source to find out what the problem was).
The problem is that somehow I managed to write my Double NaN to database 
but wasn't able to read it back even though I was using the very same 
driver in both cases!
To me, behaviour is not coherent. Either wriiting of NaN is prevented or 
reading is functional !

Maybe a more explicit Exception like "numeric NaN values not supported" 
and not "org.postgresql.util.PSQLException: Bad value for type 
BigDecimal : NaN;" which is rather obscure
or to Extend BigDecimal with PgBigDecimal that supports NaN (and 
infinity)...

Best Regards,

P.



In response to

Responses

pgsql-jdbc by date

Next:From: Dave CramerDate: 2012-09-12 09:03:07
Subject: Re: 9.2 driver
Previous:From: Devrim GÜNDÜZDate: 2012-09-12 08:59:52
Subject: Re: 9.2 driver

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group