Control: tags -1 confirmed moreinfo
On 2021-04-07 16:17:45 +0200, Bas Couwenberg wrote:
> Package: release.debian.org
> Severity: normal
> User: release.debian.org@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?
Assuming that the upload happens soon, please go ahead. Please remove
the moreinfo tag once the version is available in unstable.
Cheers
>
> [ 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 <sebastic@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 <jochen@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 <jochen@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)))
--
Sebastian Ramacher
Attachment:
signature.asc
Description: PGP signature