From: Sarah Hoffmann Date: Fri, 13 Nov 2020 20:34:29 +0000 (+0100) Subject: use bool_or(ST_Intersects) instead of ST_Intersects(ST_Collect) X-Git-Tag: v3.6.0~32^2 X-Git-Url: https://git.openstreetmap.org./nominatim.git/commitdiff_plain/6b60f0ab032d84bc4488a8199189aad95fde023b use bool_or(ST_Intersects) instead of ST_Intersects(ST_Collect) ST_Intersects segfaults on geometry collections for certain versions of Postgis 3. --- diff --git a/sql/partition-functions.src.sql b/sql/partition-functions.src.sql index 229fe884..1197b3b7 100644 --- a/sql/partition-functions.src.sql +++ b/sql/partition-functions.src.sql @@ -87,7 +87,7 @@ BEGIN AND rank_address between item.from_rank and item.to_rank AND word_ids_from_name(item.name) && keywords GROUP BY place_id, keywords, rank_address, rank_search, isguess, postcode, centroid - ORDER BY ST_Intersects(ST_Collect(geometry), feature), distance LIMIT 1; + ORDER BY bool_or(ST_Intersects(geometry, feature)), distance LIMIT 1; IF r.place_id is null THEN -- If we cannot find a place for the term, just return the -- search term for the given name. That ensures that the address