X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/42cd021d0406970d6c96c029ab83d08dfbe02792..6dac643d2c48c00065c68e575f7dbbc092175245:/lib-sql/functions/placex_triggers.sql?ds=sidebyside diff --git a/lib-sql/functions/placex_triggers.sql b/lib-sql/functions/placex_triggers.sql index e6f083c8..8a65c555 100644 --- a/lib-sql/functions/placex_triggers.sql +++ b/lib-sql/functions/placex_triggers.sql @@ -85,7 +85,10 @@ BEGIN FROM each(location.name - result.name); {% if debug %}RAISE WARNING 'Extra names: %', extra_names;{% endif %} - result.name := location.name || result.name || extra_names; + IF extra_names is not null THEN + result.name := result.name || extra_names; + END IF; + {% if debug %}RAISE WARNING 'Final names: %', result.name;{% endif %} END IF; END IF; @@ -446,6 +449,7 @@ CREATE OR REPLACE FUNCTION insert_addresslines(obj_place_id BIGINT, maxrank SMALLINT, token_info JSONB, geometry GEOMETRY, + centroid GEOMETRY, country TEXT, OUT parent_place_id BIGINT, OUT postcode TEXT, @@ -508,7 +512,7 @@ BEGIN END LOOP; FOR location IN - SELECT * FROM getNearFeatures(partition, geometry, maxrank) + SELECT * FROM getNearFeatures(partition, geometry, centroid, maxrank) WHERE not addr_place_ids @> ARRAY[place_id] ORDER BY rank_address, isguess asc, distance * @@ -1103,7 +1107,8 @@ BEGIN END IF; SELECT * FROM insert_addresslines(NEW.place_id, NEW.partition, max_rank, - NEW.token_info, geom, NEW.country_code) + NEW.token_info, geom, NEW.centroid, + NEW.country_code) INTO NEW.parent_place_id, NEW.postcode, nameaddress_vector; {% if debug %}RAISE WARNING 'RETURN insert_addresslines: %, %, %', NEW.parent_place_id, NEW.postcode, nameaddress_vector;{% endif %}