Bug #477: path ?# path

Started by PostgreSQL Bugs Listover 24 years ago3 messagesbugs
Jump to latest
#1PostgreSQL Bugs List
pgsql-bugs@postgresql.org

Curtis Barrett (curtis@northwestern.edu) reports a bug with a severity of 3
The lower the number the more severe it is.

Short Description
path ?# path

Long Description
nothing major. the ?# (geometric intersection) operator for paths iterates over point pairs in each path testing for intersection. however, it ignores the last->first point pair for closed paths. a quick workaround is to tack the first point on the end of a closed path.

Sample Code
# select '((1,1),(2,0))'::path ?# '((0,0),(0,2),(2,2))'::path;
?column?
----------
f
(1 row)

# select '((1,1),(2,0))'::path ?# '((0,0),(0,2),(2,2),(0,0))'::path;
?column?
----------
t
(1 row)

No file was uploaded with this report

#2Bruce Momjian
bruce@momjian.us
In reply to: PostgreSQL Bugs List (#1)
Re: Bug #477: path ?# path

Can someone comment on this?

Curtis Barrett (curtis@northwestern.edu) reports a bug with a severity of 3
The lower the number the more severe it is.

Short Description
path ?# path

Long Description
nothing major. the ?# (geometric intersection) operator for paths iterates over point pairs in each path testing for intersection. however, it ignores the last->first point pair for closed paths. a quick workaround is to tack the first point on the end of a closed path.

Sample Code
# select '((1,1),(2,0))'::path ?# '((0,0),(0,2),(2,2))'::path;
?column?
----------
f
(1 row)

# select '((1,1),(2,0))'::path ?# '((0,0),(0,2),(2,2),(0,0))'::path;
?column?
----------
t
(1 row)

No file was uploaded with this report

---------------------------(end of broadcast)---------------------------
TIP 4: Don't 'kill -9' the postmaster

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
#3Tom Lane
tgl@sss.pgh.pa.us
In reply to: PostgreSQL Bugs List (#1)
Re: Bug #477: path ?# path

pgsql-bugs@postgresql.org writes:

the ?# (geometric intersection) operator for paths iterates over point
pairs in each path testing for intersection. however, it ignores the
last->first point pair for closed paths.

Looks like a bug to me too; and path_distance, path_length, dist_ppath
also fail to consider the closing segment of a closed path.

Fixed for 7.2.

regards, tom lane