]> git.openstreetmap.org Git - nominatim.git/commitdiff
adapt index for changes name lookup
authorSarah Hoffmann <lonvia@denofr.de>
Fri, 17 Jan 2020 16:47:10 +0000 (17:47 +0100)
committerSarah Hoffmann <lonvia@denofr.de>
Thu, 23 Jan 2020 21:28:43 +0000 (22:28 +0100)
sql/functions/placex_triggers.sql
sql/tables.sql

index cedbb6080f9e0d38a4736dd772391d121d8db00d..9803e815e80fdedc024492ee4885aaf82bd01891 100644 (file)
@@ -225,6 +225,7 @@ BEGIN
       WHERE make_standard_name(name->'name') = bnd_name
         AND placex.rank_address = bnd.rank_address
         AND placex.osm_type = 'N'
+        AND placex.rank_search < 26 -- needed to select the right index
         AND st_covers(geometry, placex.geometry)
     LOOP
       --DEBUG: RAISE WARNING 'Found matching place node %', linkedPlacex.osm_id;
@@ -235,7 +236,7 @@ BEGIN
   RETURN NULL;
 END;
 $$
-LANGUAGE plpgsql;
+LANGUAGE plpgsql STABLE;
 
 CREATE OR REPLACE FUNCTION placex_insert()
   RETURNS TRIGGER
index f9fa95c03f1469a6d09fe75bcdefa90c5d7a17ce..28d664be436b0e993f3d75225e06f981bcdb2a7e 100644 (file)
@@ -176,7 +176,7 @@ CREATE INDEX idx_placex_osmid ON placex USING BTREE (osm_type, osm_id) {ts:searc
 CREATE INDEX idx_placex_linked_place_id ON placex USING BTREE (linked_place_id) {ts:address-index} WHERE linked_place_id IS NOT NULL;
 CREATE INDEX idx_placex_rank_search ON placex USING BTREE (rank_search, geometry_sector) {ts:address-index};
 CREATE INDEX idx_placex_geometry ON placex USING GIST (geometry) {ts:search-index};
-CREATE INDEX idx_placex_adminname on placex USING BTREE (make_standard_name(name->'name'),rank_search) {ts:address-index} WHERE osm_type='N' and rank_search < 26;
+CREATE INDEX idx_placex_adminname on placex USING BTREE (make_standard_name(name->'name')) {ts:address-index} WHERE osm_type='N' and rank_search < 26;
 
 DROP SEQUENCE IF EXISTS seq_place;
 CREATE SEQUENCE seq_place start 1;