Re: [PATCH] Improve geometric types

From: Emre Hasegeli <emre(at)hasegeli(dot)com>
To: Tomas Vondra <tomas(dot)vondra(at)2ndquadrant(dot)com>
Cc: Kyotaro HORIGUCHI <horiguchi(dot)kyotaro(at)lab(dot)ntt(dot)co(dot)jp>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Thomas Munro <thomas(dot)munro(at)enterprisedb(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: [PATCH] Improve geometric types
Date: 2018-08-17 16:40:44
Message-ID: CAE2gYzwoaU_O9xtw3yy46fxCWZ1G3d8ETGAgzNU7pDPGH0hOLg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

> the buildfarm seems to be mostly happy so far, so I've taken a quick
> look at the remaining two parts. The patches still apply, but I'm
> getting plenty of failures in regression tests, due to 0.0 being
> replaced by -0.0.

I think we are better off fixing them locally at the moment like your
patch does. We should consider to eliminate -0 globally for all
floating point based datatypes later. I simplified and incorporated
your change to line_interpt_line() into mine.

I am not sure about normalising -0s on point_construct(). We
currently allow points to be initialized with -0s. I think it is fair
for us to return -0 when -x and 0 are multiplied. That is the current
behavior and the behavior of the float datatypes. I adjusted the
results of the new regression tests accordingly.

> Another thing I noticed is the last few lines from line_interpt_line are
> actually unreachable, because there's now 'else return false' branch.

Which lines do you mean exactly? I don't see any being unreachable.

Attachment Content-Type Size
0001-line-fixes-v14.patch application/octet-stream 13.1 KB
0002-geo-tests-v10.patch.gz application/x-gzip 69.6 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Jesper Pedersen 2018-08-17 17:15:46 Re: Index Skip Scan
Previous Message Amit Khandekar 2018-08-17 16:30:20 Re: partitioning - changing a slot's descriptor is expensive