Your message dated Mon, 12 Apr 2021 20:14:59 +0000
with message-id <[email protected]>
and subject line unblock osm2pgsql
has caused the Debian Bug report #986572,
regarding unblock: osm2pgsql/1.4.1+ds-2 (pre-approval)
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)
--
986572: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=986572
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: release.debian.org
Severity: normal
User: [email protected]
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 <[email protected]> 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 <[email protected]>
+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 <[email protected]>
+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)))
--- End Message ---
--- Begin Message ---
Unblocked.
--- End Message ---