mirror of
https://github.com/osm-search/Nominatim.git
synced 2026-02-26 11:08:13 +00:00
@@ -2144,6 +2144,12 @@ BEGIN
|
|||||||
NEW.name := hstore('ref', NEW.address->'postcode');
|
NEW.name := hstore('ref', NEW.address->'postcode');
|
||||||
END IF;
|
END IF;
|
||||||
|
|
||||||
|
IF NEW.class in ('boundary')
|
||||||
|
AND ST_GeometryType(NEW.geometry) not in ('ST_Polygon','ST_MultiPolygon') THEN
|
||||||
|
DELETE FROM placex where place_id = existingplacex.place_id;
|
||||||
|
RETURN NULL;
|
||||||
|
END IF;
|
||||||
|
|
||||||
update placex set
|
update placex set
|
||||||
name = NEW.name,
|
name = NEW.name,
|
||||||
address = NEW.address,
|
address = NEW.address,
|
||||||
|
|||||||
@@ -69,3 +69,19 @@ Feature: Update of simple objects
|
|||||||
Then placex contains
|
Then placex contains
|
||||||
| object | class | type |
|
| object | class | type |
|
||||||
| N3 | place | house |
|
| N3 | place | house |
|
||||||
|
|
||||||
|
Scenario: remove boundary when changing from polygon to way
|
||||||
|
Given the grid
|
||||||
|
| 1 | 2 |
|
||||||
|
| 3 | 4 |
|
||||||
|
And the places
|
||||||
|
| osm | class | type | name | admin | geometry |
|
||||||
|
| W1 | boundary | administrative | Haha | 5 | (1, 2, 4, 3, 1) |
|
||||||
|
When importing
|
||||||
|
Then placex contains
|
||||||
|
| object |
|
||||||
|
| W1 |
|
||||||
|
When updating places
|
||||||
|
| osm | class | type | name | admin | geometry |
|
||||||
|
| W1 | boundary | administrative | Haha | 5 | 1, 2, 4, 3 |
|
||||||
|
Then placex has no entry for W1
|
||||||
|
|||||||
Reference in New Issue
Block a user