[Tile-serving] [osm2pgsql-dev/osm2pgsql] Fix a bug in diff expire handling (PR #2492)

Jochen Topf notifications at github.com
Fri Jul 3 15:11:15 UTC 2026


If you have multiple expire outputs on a single geometry column and at least one of them is configured as a diff_expire, osm2pgsql can segfault. This commit fixes that problem.

The problem was that to calculate the diff geometries, the original geometries were destroyed which lead to the segfault when those geometries were accessed again later. Now we make sure to access the original geometries only until we generate the diff geometries and after that only access the diff geometries. As a side effect processing will even be faster if you have several expire configs that use diff processing.
You can view, comment on, or merge this pull request online at:

  https://github.com/osm2pgsql-dev/osm2pgsql/pull/2492

-- Commit Summary --

  * Fix a bug in diff expire handling

-- File Changes --

    M src/flex-table-column.cpp (107)
    M tests/bdd/flex/expire-diff.feature (86)

-- Patch Links --

https://github.com/osm2pgsql-dev/osm2pgsql/pull/2492.patch
https://github.com/osm2pgsql-dev/osm2pgsql/pull/2492.diff

-- 
Reply to this email directly or view it on GitHub:
https://github.com/osm2pgsql-dev/osm2pgsql/pull/2492
You are receiving this because you are subscribed to this thread.

Message ID: <osm2pgsql-dev/osm2pgsql/pull/2492 at github.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstreetmap.org/pipermail/tile-serving/attachments/20260703/8d0edc0e/attachment.htm>


More information about the Tile-serving mailing list