Mercurial > gemma
changeset 5019:dc3d648bdf4a
Avoid needless geometry processing
Mangling every geometry in the intersection machinery when importing
as waterway admin leads to slightly different geometries compared
to the same geometries imported by a sys_admin, thus creating
artificial history of entries when importing alternately as
waterway admin and sys admin, respectively.
author | Tom Gottfried <tom@intevation.de> |
---|---|
date | Fri, 13 Mar 2020 19:14:45 +0100 |
parents | d6873fa95ed6 |
children | e4ab338e7ba9 |
files | pkg/imports/wx.go |
diffstat | 1 files changed, 2 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/pkg/imports/wx.go Fri Mar 13 18:08:41 2020 +0100 +++ b/pkg/imports/wx.go Fri Mar 13 19:14:45 2020 +0100 @@ -50,6 +50,8 @@ FROM ST_GeomFromWKB($1, $2::integer) AS new_line (new_line), LATERAL (SELECT CASE WHEN pg_has_role('sys_admin', 'MEMBER') + OR ST_Covers((SELECT a FROM resp), + ST_Transform(new_line, (SELECT ST_SRID(a) FROM resp))) THEN new_line ELSE ST_Intersection((SELECT ST_Buffer(a, -0.0001) FROM resp), ST_Node(ST_Transform(new_line, (SELECT ST_SRID(a) FROM resp))))