Re: BUG #14046: Bad mathematical rules for 0 cast

From: Jarosław Stokłosa <jaroslaw(dot)stoklosa(at)nomino(dot)pl>
To: John McKown <john(dot)archie(dot)mckown(at)gmail(dot)com>
Cc: pgsql-bugs(at)postgresql(dot)org
Subject: Re: BUG #14046: Bad mathematical rules for 0 cast
Date: 2016-03-30 06:55:15
Message-ID: 56FB7853.5090803@nomino.pl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs


W dniu 25/03/2016 o 14:32, John McKown pisze:
> On Fri, Mar 25, 2016 at 3:56 AM, <jaroslaw(dot)stoklosa(at)nomino(dot)pl
> <mailto:jaroslaw(dot)stoklosa(at)nomino(dot)pl>>wrote:
>
> The following bug has been logged on the website:
>
> Bug reference: 14046
> Logged by: Jarosław Stokłosa
> Email address: jaroslaw(dot)stoklosa(at)nomino(dot)pl
> <mailto:jaroslaw(dot)stoklosa(at)nomino(dot)pl>
> PostgreSQL version: 9.4.5
> Operating system: x86_64-redhat-linux-gnu
> Description:
>
> Below query should return 2 times TRUE.
>
> SELECT cast('+0' as FLOAT) = cast('-0' as FLOAT), cast('+0' as
> FLOAT)::TEXT
> = cast('-0' as FLOAT)::TEXT
>
> +0 and -0 should be casted to +0 or 0.
>
>
> ​I humbly disagree with you. PostgreSQL use IEEE 754 for floating
> point (mainly because that is what most - not all - computers today
> use). IEEE 754 distinguishes +0 (or just 0) from -0. cast('-0' as
> FLOAT) results in an IEEE 754 negative zero. Which is not identically
> equal to a positive zero. The case to TEXT should, and does, preserve
> this non-identical difference. ​
>
>
Hi,

I'm disagee with you. PostgreSQL don't distinguish +0 from -0 because
cast('+0' as FLOAT) = cast('-0' as FLOAT) equals to TRUE. This is math
rules. So case to float then to text shoud, and doesn't, preserve the
equality. IEEE754 describes storage numbers in computer's memory but
doesn't turn off math comparation rules.

Regards
Jarek Stokłosa

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message maxim 2016-03-30 07:04:14 BUG #14053: postgres crashes in plpgsql under load of concurrent transactions
Previous Message Tom Lane 2016-03-30 01:09:04 Re: Re: [HACKERS] BUG #13854: SSPI authentication failure: wrong realm name used