Re: Floating point comparison inconsistencies of the geometric types

From: Emre Hasegeli <emre(at)hasegeli(dot)com>
To: Kevin Grittner <kgrittn(at)gmail(dot)com>
Cc: PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Andreas Karlsson <andreas(at)proxel(dot)se>, Teodor Sigaev <teodor(at)sigaev(dot)ru>, Robert Haas <robertmhaas(at)gmail(dot)com>, Kevin Grittner <kgrittn(at)ymail(dot)com>, Jim Nasby <Jim(dot)Nasby(at)bluetreble(dot)com>, Joe Conway <mail(at)joeconway(dot)com>
Subject: Re: Floating point comparison inconsistencies of the geometric types
Date: 2016-09-28 17:02:08
Message-ID: CAE2gYzwZf7F7XO=_oPhdcpR0YGDdqwQEeB6Z=Xbxowp8q1-saw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

> These patches apply and build on top of 5c609a74 with no problems,
> but `make check` finds differences per the attached. Please
> investigate why the regression tests are failing and what the
> appropriate response is.

I fixed the first one and workaround the second with COLLATE "C". I
have how my changes caused this regression.

"select_views" test runs "SELECT name, #thepath FROM iexit ORDER BY 1,
2" and expects to get rows in this order:

> I- 580 Ramp | 8
> I- 580/I-680 Ramp | 2

With the collation on my laptop, this is actually true:

> regression=# select 'I- 580/I-680 Ramp' < 'I- 580 Ramp';
> ?column?
> ----------
> t
> (1 row)

However, on the Linux server, I am testing it is not:

> regression=# select 'I- 580 Ramp' < 'I- 580/I-680 Ramp';
> ?column?
> ----------
> f
> (1 row)

Do you know how it is not failing on the master?

> I suspect that they will be as fast or faster, and they eliminate
> the hazard of multiple evaluation, where a programmer might not be
> aware of the multiple evaluation or of some side-effect of an
> argument.

I reworked the the patches to use inline functions and fixed the
problems I found. The new versions are attached.

Attachment Content-Type Size
0001-float-header-v03.patch application/octet-stream 83.1 KB
0002-geo-ops-fpcomp-v03.patch application/octet-stream 163.1 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Robert Haas 2016-09-28 17:04:48 Re: Binary I/O for isn extension
Previous Message Robert Haas 2016-09-28 17:01:38 Re: [PATCH] SortSupport for macaddr type