]> git.openstreetmap.org Git - nominatim.git/commitdiff
make classtype table update work when special schemas are used
authorSarah Hoffmann <lonvia@denofr.de>
Sat, 23 Nov 2013 12:31:29 +0000 (13:31 +0100)
committerSarah Hoffmann <lonvia@denofr.de>
Sat, 23 Nov 2013 12:31:29 +0000 (13:31 +0100)
patch from https://trac.openstreetmap.org/ticket/5037

sql/functions.sql

index 4670a71fec4d0756bdd419364f254f7c3ae1f0f5..73aa4feefbba5b3b1c4e739c0ddcc3c88b4ded7a 100644 (file)
@@ -1245,7 +1245,7 @@ BEGIN
    -- Note: won't work on initial import because the classtype tables
    -- do not yet exist. It won't hurt either.
   classtable := 'place_classtype_' || NEW.class || '_' || NEW.type;
-  SELECT count(*)>0 FROM pg_tables WHERE tablename = classtable INTO result;
+  SELECT count(*)>0 FROM pg_tables WHERE tablename = classtable and schemaname = current_schema() INTO result;
   IF result THEN
     EXECUTE 'INSERT INTO ' || classtable::regclass || ' (place_id, centroid) VALUES ($1,$2)' 
     USING NEW.place_id, ST_Centroid(NEW.geometry);
@@ -1987,7 +1987,7 @@ BEGIN
 
   -- remove from tables for special search
   classtable := 'place_classtype_' || OLD.class || '_' || OLD.type;
-  SELECT count(*)>0 FROM pg_tables WHERE tablename = classtable INTO b;
+  SELECT count(*)>0 FROM pg_tables WHERE tablename = classtable and schemaname = current_schema() INTO b;
   IF b THEN
     EXECUTE 'DELETE FROM ' || classtable::regclass || ' WHERE place_id = $1' USING OLD.place_id;
   END IF;