Re: PG8.3->10 migration data differences - Mailing list pgsql-general
From | Adrian Klaver |
---|---|
Subject | Re: PG8.3->10 migration data differences |
Date | |
Msg-id | 07333286-2480-8750-c73d-d82e061b2bca@aklaver.com Whole thread Raw |
In response to | Re: PG8.3->10 migration data differences (Csaba Ragasits <ragasits.csaba@gmail.com>) |
Responses |
Re: PG8.3->10 migration data differences
|
List | pgsql-general |
On 9/10/18 6:43 AM, Csaba Ragasits wrote: > I think I found the solution. > > When I set this parameter on the pg10 client connection, the pg10 REAL > value format same as the pg83 value: > > SET extra_float_digits = 0; > > Interesting, because the default value is 0 in the postgresql.conf: > #extra_float_digits = 0 # min -15, max 3 > > Do you have any ideas how can I format the miliseconds too? select version(); version ------------------------------------------------------------------------------------ PostgreSQL 10.5 on x86_64-pc-linux-gnu, compiled by gcc (SUSE Linux) 4.8.5, 64-bit test=# select '09/10/18 07:10:25.100'::timestamp; timestamp ----------------------- 2018-09-10 07:10:25.1 (1 row) test=# select '09/10/18 07:10:25.111'::timestamp; timestamp ------------------------- 2018-09-10 07:10:25.111 Milliseconds will display if they are significant. If you want to format the output: test=# select to_char('09/10/18 07:10:25.100'::timestamp, 'MM/DD/YY HH:MI:SS.MS'); to_char ----------------------- 09/10/18 07:10:25.100 (1 row) > > Thx, > Csaba > > 2018-09-10 12:00 GMT+02:00 Peter J. Holzer <hjp-pgsql@hjp.at > <mailto:hjp-pgsql@hjp.at>>: > > On 2018-09-10 11:57:42 +0300, Achilleas Mantzios wrote: > > On 10/09/2018 11:22, Csaba Ragasits wrote: > > Hello, > > > > We would like to migrate our old databases to new postgres server, > > with the simple backup-restore process. The process run fine > > without errors but when we're checking the source and the > > migrated datas as field level, we found the following differences: > [...] > > > > Field type: REAL > > pg93: 2.2 > > pg10: 2.20000005 > > > > > > Those have to do with rounding. Precision for real is 6 decimal > > digits. Your difference is on the 8-th digit. > > Nitpick: Precision is 24 binary digits which is *about* 6 decimal > digits. The number which is actually stored (on both pg93 and pg10) is > actually 2.2000000476837158203125 (1.00011001100110011001101 * 2^1 in > binary). Apparently Pg9.3 rounds this to "2.2" on output while Pg10 > prints the more precise (but still not exact) "2.20000005". > > (I would argue that the Pg9.3 output is better, since it represents the > same value in fewer digits, but always printing the minimum number of > digits necessary is surprisingly difficult.) > > hp > > -- > _ | Peter J. Holzer | we build much bigger, better disasters now > |_|_) | | because we have much more sophisticated > | | | hjp@hjp.at <mailto:hjp@hjp.at> | management tools. > __/ | http://www.hjp.at/ | -- Ross Anderson <https://www.edge.org/> > > -- Adrian Klaver adrian.klaver@aklaver.com
pgsql-general by date: