Hi,
On 2014-05-29 13:56:29 +0000, maxim.boguk@gmail.com wrote:
> PostgreSQL version: 9.0.17
> [local]:5432 postgres@comon3=# select record_rating from rating.record
> where record_rating>0 order by 1 limit 50;
> record_rating
> ----------------------
> 6.5397686164648e-309
> 8.1108289380243e-309
> 2.0326868922821e-308
> and so on...
>
> But:
> select '6.5397686164648e-309'::double precision;
> ERROR: "6.5397686164648e-309" is out of range for type double precision
> LINE 2: select '6.5397686164648e-309'::double precision;
Those are 'denormalized' floating point numbers. Code to handle those
was added to 9.2+ in
http://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=c318aeed84438619fc6b8c647def1730a110f04b
I guess it could be backpatched now that it has survived testing for a
fair while. It's annoying not to be able to restore data... Till then
you can just apply the patch.
Greetings,
Andres Freund
--
Andres Freund http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services