]> git.openstreetmap.org Git - nominatim.git/commitdiff
use address rank for address forming when available
authorSarah Hoffmann <lonvia@denofr.de>
Sun, 9 Aug 2020 12:43:23 +0000 (14:43 +0200)
committerSarah Hoffmann <lonvia@denofr.de>
Wed, 12 Aug 2020 20:22:24 +0000 (22:22 +0200)
sql/functions/placex_triggers.sql
test/bdd/db/import/rank_computation.feature

index e179024833997b9e0b4bcf9c2a907ec5af9b6fb8..f9d5b60f4bbcf1d45b9b0b2d51ccc07c0e9587ca 100644 (file)
@@ -861,7 +861,9 @@ BEGIN
   END IF;
 
   SELECT * FROM insert_addresslines(NEW.place_id, NEW.partition,
-                                    NEW.rank_search, NEW.address,
+                                    CASE WHEN NEW.rank_address = 0
+                                      THEN NEW.rank_search ELSE NEW.rank_address END,
+                                    NEW.address,
                                     CASE WHEN NEW.rank_search >= 26
                                              AND NEW.rank_search < 30
                                       THEN NEW.geometry ELSE NEW.centroid END)
index 185905209ab60ede843c94b6c0259e1f8c39c709..38d15e962bbe6b71dac1ce117caea91e5e057133 100644 (file)
@@ -91,15 +91,15 @@ Feature: Rank assignment
           | R21 | boundary | administrative | 8     |              | (0 0, 0 1, 1 1, 1 0, 0 0) |
           | R22 | boundary | administrative | 8     | suburb       | (0 0, 0 1, 1 1, 1 0, 0 0) |
         When importing
-        Then place_addressline contains
-            | object | address | cached_rank_address |
-            | R21    | R20     | 16                  |
-            | R22    | R20     | 16                  |
         Then placex contains
           | object | rank_search | rank_address |
           | R20    | 12          | 16 |
           | R21    | 16          | 18 |
           | R22    | 16          | 20 |
+        Then place_addressline contains
+            | object | address | cached_rank_address |
+            | R21    | R20     | 16                  |
+            | R22    | R20     | 16                  |
 
     Scenario: Admin levels must not be larger than 25
         Given the named places