Adrian, Kevin,
Thank you for the clues. It turns out a java process was added (between the data source and database) at same time of postgres upgrade. It was the java process that incorrectly handled the double precision data.
Joanne
On Sat, Sep 14, 2013 at 9:57 AM, Adrian Klaver <adrian.klaver@xxxxxxxxx> wrote:
Interesting, more grist for the mill. Adrian KlaverOn 09/14/2013 08:51 AM, Kevin Grittner wrote:
Adrian Klaver <adrian.klaver@xxxxxxxxx> wrote:
create table float_test (id int, f_fld double precision);
insert into float_test values (1, 6.31);
insert into float_test values (2, 6.32);
select * from float_test ;
id | f_fld
----+-------
1 | 6.31
2 | 6.32
(2 rows)
If, instead of those inserts I use these:
insert into float_test values (1, '6.31');
insert into float_test values (1, '6.32');
insert into float_test values (1, '6.32'::double precision);
insert into float_test values (1, '6.32'::real);
I get:
id | f_fld
----+------------------
1 | 6.31
1 | 6.32
1 | 6.32
1 | 6.32000017166138
(4 rows)
Apparently the value is being treated as a real value somewhere.
adrian.klaver@xxxxxxxxx
--
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general