use centroid for near feature search on rank 30

Rank 30 has some very large geometries (peninsulas, time zones,
etc.) for which a near feature search for the full geometry is
too expensive, so do the search on the centroid only.
This commit is contained in:
Sarah Hoffmann
2017-04-09 23:12:35 +02:00
parent 43eedfd253
commit 8138729aea

View File

@@ -1681,8 +1681,10 @@ BEGIN
-- RAISE WARNING ' getNearFeatures(%,''%'',%,''%'')',NEW.partition, place_centroid, search_maxrank, isin_tokens;
FOR location IN
SELECT * from getNearFeatures(NEW.partition,
CASE WHEN NEW.rank_search >= 26 THEN NEW.geometry
ELSE place_centroid END,
CASE WHEN NEW.rank_search >= 26
AND NEW.rank_search < 30
THEN NEW.geometry
ELSE place_centroid END,
search_maxrank, isin_tokens)
LOOP