Opened 8 years ago

Closed 8 years ago

#3530 closed defect (fixed)

geocode_intersection fails to find Cumming / Seaman in NY (node ids intersect but linestrings do not)

Reported by: robe Owned by: robe
Priority: medium Milestone: PostGIS 2.2.3
Component: tiger geocoder Version: 2.2.x
Keywords: Cc:

Description

I hate uncovering these issues during workshop presentation prep.

SELECT pprint_addy(addy), ST_AsText(ST_SnapToGrid(geomout,0.001)), rating 
FROM geocode_intersection('Cumming St', 'Seaman Ave', 'NY');

Is a famous intersection which returns nothing. Not sure if it's tiger data at fault or my algorithm need to investigate.

I hope this is not a political correctness bug.

Change History (6)

comment:1 by robe, 8 years ago

Summary: geocode_intersection fails to find Cummings / Seaman in NYgeocode_intersection fails to find Cumming / Seaman in NY

comment:2 by robe, 8 years ago

phew figured out the issue. It's because the tiger data ST_Intersects between the two edges returns false, however I also do a node id check, so I'm thinking of just keeping the node id check and chucking the Intersects check. I think it ends up being faster anyway. Will have to do some tests to confirm.

comment:3 by robe, 8 years ago

Summary: geocode_intersection fails to find Cumming / Seaman in NYgeocode_intersection fails to find Cumming / Seaman in NY (node ids intersect but linestrings do not)

comment:4 by robe, 8 years ago

(In [14846]) revise to use node start/end of edges for geocode_intersection and remove ST_Intersects check references #3530 for postgis 2.3 (trunk)

comment:5 by robe, 8 years ago

(In [14847]) Minor cleanup of last commit and also more schema qualifying references #3530 #3421 for postgis 2.3 (trunk)

comment:6 by robe, 8 years ago

Resolution: fixed
Status: newclosed

(In [14848]) Minor cleanup, change to schema qualify tables, change to use tiger node ids overlap instead of intersects for determining intersections Closes #3530 for PostGIS 2.2.3 References #3451

Note: See TracTickets for help on using tickets.