Package: release.debian.org Severity: normal User: release.debian....@packages.debian.org Usertags: unblock
To fix two important issues affecting the version in bullseye, I would like to upload these changes to unstable. Do you agree that these changes are appropriate for a freeze exception? [ Reason ] Fixes important issues. [ Impact ] Poor performance and errors. [ Tests ] Upstream CI. [ Risks ] Low. [ Checklist ] [x] all changes are documented in the d/changelog [x] I reviewed all changes and I approve them [x] attach debdiff against the package in testing [ Other info ] N/A unblock osm2pgsql/1.4.1+ds-2 Kind Regards, Bas
diff -Nru osm2pgsql-1.4.1+ds/debian/changelog osm2pgsql-1.4.1+ds/debian/changelog --- osm2pgsql-1.4.1+ds/debian/changelog 2021-02-04 05:23:03.000000000 +0100 +++ osm2pgsql-1.4.1+ds/debian/changelog 2021-04-07 15:59:14.000000000 +0200 @@ -1,3 +1,14 @@ +osm2pgsql (1.4.1+ds-2) unstable; urgency=medium + + * Update watch file for GitHub URL changes. + * Add upstream patches: + - 0001-Bugfix-Disable-expire-in-flex-output-when-not-used.patch + Important performance fix. + - 0001-Bug-fix-Remove-schema-name-from-CREATE-INDEX.patch + Fix CREATE INDEX failure. + + -- Bas Couwenberg <sebas...@debian.org> Wed, 07 Apr 2021 15:59:14 +0200 + osm2pgsql (1.4.1+ds-1) unstable; urgency=medium * New upstream release. diff -Nru osm2pgsql-1.4.1+ds/debian/patches/0001-Bugfix-Disable-expire-in-flex-output-when-not-used.patch osm2pgsql-1.4.1+ds/debian/patches/0001-Bugfix-Disable-expire-in-flex-output-when-not-used.patch --- osm2pgsql-1.4.1+ds/debian/patches/0001-Bugfix-Disable-expire-in-flex-output-when-not-used.patch 1970-01-01 01:00:00.000000000 +0100 +++ osm2pgsql-1.4.1+ds/debian/patches/0001-Bugfix-Disable-expire-in-flex-output-when-not-used.patch 2021-04-07 15:56:01.000000000 +0200 @@ -0,0 +1,31 @@ +Description: Bugfix: Disable expire in flex output when not used + If we don't have expire enabled we never need to create an expire list. + But as a side effect of the two-stage processing we created such a list + which costs a lot of time and RAM. This commit disables this which + speeds up processing considerably. +Author: Jochen Topf <joc...@topf.org> +Origin: https://github.com/openstreetmap/osm2pgsql/issues/1436 +Bug: https://github.com/openstreetmap/osm2pgsql/issues/1436 + +--- a/src/expire-tiles.hpp ++++ b/src/expire-tiles.hpp +@@ -60,6 +60,8 @@ struct expire_tiles + expire_tiles(uint32_t maxzoom, double maxbbox, + const std::shared_ptr<reprojection> &projection); + ++ bool enabled() const noexcept { return maxzoom != 0; } ++ + int from_bbox(double min_lon, double min_lat, double max_lon, + double max_lat); + void from_wkb(char const *wkb, osmid_t osm_id); +--- a/src/output-flex.cpp ++++ b/src/output-flex.cpp +@@ -1289,7 +1289,7 @@ void output_flex_t::delete_from_table(ta + assert(table_connection); + auto const id = table_connection->table().map_id(type, osm_id); + +- if (table_connection->table().has_geom_column()) { ++ if (m_expire.enabled() && table_connection->table().has_geom_column()) { + auto const result = table_connection->get_geom_by_id(type, id); + + if (result.num_tuples() == 0) { diff -Nru osm2pgsql-1.4.1+ds/debian/patches/0001-Bug-fix-Remove-schema-name-from-CREATE-INDEX.patch osm2pgsql-1.4.1+ds/debian/patches/0001-Bug-fix-Remove-schema-name-from-CREATE-INDEX.patch --- osm2pgsql-1.4.1+ds/debian/patches/0001-Bug-fix-Remove-schema-name-from-CREATE-INDEX.patch 1970-01-01 01:00:00.000000000 +0100 +++ osm2pgsql-1.4.1+ds/debian/patches/0001-Bug-fix-Remove-schema-name-from-CREATE-INDEX.patch 2021-04-07 15:56:19.000000000 +0200 @@ -0,0 +1,21 @@ +Description: Bug fix: Remove schema name from CREATE INDEX + Indexes are always created in the same schema as the table. +Author: Jochen Topf <joc...@topf.org> +Origin: https://github.com/openstreetmap/osm2pgsql/issues/1436 +Bug: https://github.com/openstreetmap/osm2pgsql/issues/1447 + +--- a/src/middle-pgsql.cpp ++++ b/src/middle-pgsql.cpp +@@ -714,9 +714,9 @@ static table_sql sql_for_ways(bool has_b + " SELECT ARRAY(SELECT DISTINCT" + " unnest($1) >> {way_node_index_id_shift})\n" + "$$ LANGUAGE SQL IMMUTABLE;\n" +- "CREATE INDEX {schema}{prefix}_ways_nodes_bucket_idx" +- " ON {schema}{prefix}_ways" +- " USING GIN ({schema}{prefix}_index_bucket(nodes))" ++ "CREATE INDEX \"{prefix}_ways_nodes_bucket_idx\"" ++ " ON {schema}\"{prefix}_ways\"" ++ " USING GIN ({schema}\"{prefix}_index_bucket\"(nodes))" + " WITH (fastupdate = off) {index_tablespace};\n"; + } + diff -Nru osm2pgsql-1.4.1+ds/debian/patches/series osm2pgsql-1.4.1+ds/debian/patches/series --- osm2pgsql-1.4.1+ds/debian/patches/series 1970-01-01 01:00:00.000000000 +0100 +++ osm2pgsql-1.4.1+ds/debian/patches/series 2021-04-07 15:52:06.000000000 +0200 @@ -0,0 +1,2 @@ +0001-Bugfix-Disable-expire-in-flex-output-when-not-used.patch +0001-Bug-fix-Remove-schema-name-from-CREATE-INDEX.patch diff -Nru osm2pgsql-1.4.1+ds/debian/watch osm2pgsql-1.4.1+ds/debian/watch --- osm2pgsql-1.4.1+ds/debian/watch 2020-12-12 07:13:52.000000000 +0100 +++ osm2pgsql-1.4.1+ds/debian/watch 2021-04-07 15:31:29.000000000 +0200 @@ -5,4 +5,4 @@ filenamemangle=s/(?:.*?\/)?(?:rel|v|osm2pgsql)?[\-\_]?(\d\S+)\.(tgz|tbz|txz|(?:tar\.(?:gz|bz2|xz)))/osm2pgsql-$1.$2/,\ repacksuffix=+ds \ https://github.com/openstreetmap/osm2pgsql/releases \ -(?:.*?/archive/)?(?:rel|v|osm2pgsql)?[\-\_]?(\d\S+)\.(?:tgz|tbz|txz|(?:tar\.(?:gz|bz2|xz))) +(?:.*?/archive/(?:.*?/)?)?(?:rel|v|osm2pgsql)?[\-\_]?(\d\S+)\.(?:tgz|tbz|txz|(?:tar\.(?:gz|bz2|xz)))