openmaptiles/layers
benedikt-brandtner-bikemap 66731f3544
LineString Merging Updates (#1538)
This PR addresses two main issues introduced by the new ID-Based Merged-LineString Updates

1. Partial Indexes can only be accessed when the query matches more or less exactly and the query-planner will fail to use indexes when targeted via the join-condition and not the where-condition
    - `osm_transportation_merge_linestring_gen_z9`
    - `osm_transportation_name_network`
    - `osm_shipway_linestring`
    - `osm_aerialway_linestring`
    - `osm_waterway_linestring`
2. When intersecting updated Source-LineStrings with the existing Merged-LineStrings we join the Source-IDs of each existing Merged-LineString. This bloats the table unnecessarily and slows down bigger updates considerably.
    - This is addressed by aggregating the Source-IDs of each existing Merged-LineString into an array and concatinating these arrays when grouping them. Afterwards we add the IDs of updated SourceLineStrings and deduplicate the result before adding it to the Source-IDs-Table.
2023-06-19 10:12:57 +02:00
..
aerodrome_label
aeroway
boundary
building
housenumber
landcover
landuse
mountain_peak
park
place
poi
transportation LineString Merging Updates (#1538) 2023-06-19 10:12:57 +02:00
transportation_name LineString Merging Updates (#1538) 2023-06-19 10:12:57 +02:00
water
water_name
waterway LineString Merging Updates (#1538) 2023-06-19 10:12:57 +02:00