PgOSM Flex provides high quality OpenStreetMap datasets in PostGIS (Postgres) using the osm2pgsql Flex output.
PgOSM Flex 1.0.0 is here! :tada:
This release indicates the overall stability of the project. Merge requests in the past 6+ months have been related to documentation, code cleanup, and keeping up with project dependencies (osm2pgsql and Postgres version updates). No bugs have been reported in 9+ months.
Recent osm2pgsql improvements significantly reduced active connections used with PgOSM Flex's data model with quite a few tables (see https://github.com/rustprooflabs/pgosm-flex/pull/376). The high connection load was the last major concern with production workloads on busy Postgres instances, and is no longer a significant issue.
Commit hash: 09efa14
The commit hash from this git repo shows up with the PgOSM Flex version number in SELECT pgosm_flex_version FROM osm.pgosm_flex;
If you see this version with a different commit hash, it indicates you are using a latest
Docker image with untagged features.
osm2pgsql
for reduced connections to Postgres #376osm2pgql-tuner
to 0.1.0 #372Full Changelog: https://github.com/rustprooflabs/pgosm-flex/compare/0.10.3...1.0.0
Commit hash: 1cd1f98
The commit hash from this git repo shows up with the PgOSM Flex version number in SELECT pgosm_flex_version FROM osm.pgosm_flex;
If you see this version with a different commit hash, it indicates you are using a latest
Docker image with untagged features.
--replication
#343Full Changelog: https://github.com/rustprooflabs/pgosm-flex/compare/0.10.2...0.10.3
Commit hash: f45b3f6
The commit hash from this git repo shows up with the PgOSM Flex version number in SELECT pgosm_flex_version FROM osm.pgosm_flex;
If you see this version with a different commit hash, it indicates you are using a latest
Docker image with untagged features.
add_row()
#361--replication
N/A
Full Changelog: https://github.com/rustprooflabs/pgosm-flex/compare/0.10.1...0.10.2
Commit hash: c3e755e
The commit hash from this git repo shows up with the PgOSM Flex version number in SELECT pgosm_flex_version FROM osm.pgosm_flex;
If you see this version with a different commit hash, it indicates you are using a latest
Docker image with untagged features.
--schema-name
#353 / #355--input-file
used in osm.pgosm_flex
meta table #357--replication
N/A
Full Changelog: https://github.com/rustprooflabs/pgosm-flex/compare/0.10.0...0.10.1
This release contains :warning: breaking changes :warning:.
Commit hash: e7d967e
The commit hash from this git repo shows up with the PgOSM Flex version number in SELECT pgosm_flex_version FROM osm.pgosm_flex;
If you see this version with a different commit hash, it indicates you are using a latest
Docker image with untagged features.
place=false
in layerset - #347 reported by @asitemade4uNLOHMANN_INCLUDE_DIR
error #345--replication
The indexes created by default have changed, but in a way that is unlikely to affect the majority of users. There was no attempt made to provide a migration script for these changing indexes. PgOSM Flex (via osm2pgsql) makes no efforts to sync changes to indexes, the easiest way to update to the new default indexes is a clean import.
This release is a good time to re-evaluate your databases index usage, and determine if you want to continue using the defaults (either the original defaults, or the new!) or if you want to migrate to your own custom index definitions.
Full Changelog: https://github.com/rustprooflabs/pgosm-flex/compare/0.9.0...0.10.0
This release contains :warning: breaking changes :warning:. The original _all
views for the building, shop and POI layers have been replaced by tables. The tables are built via osm2pgsql Flex style which enables loading only the combined table, instead of requiring the base point/line/polygon tables to be built first.
Commit hash: 50c6ddd
The commit hash from this git repo shows up with the PgOSM Flex version number in SELECT pgosm_flex_version FROM osm.pgosm_flex;
If you see this version with a different commit hash, it indicates you are using a latest
Docker image with untagged features.
_all
views/materialized views to tables populated by osm2pgsql #320, #337, #340The following subsections include minimized notes from #337 to explain a variety of shifts coming along with this change (#320).
The views have turned into tables and are not always created. Only some packaged layersets include these to avoid additional overhead by default.
vbuilding_all
--> building_combined_point
vshop_all
--> shop_combined_point
vpoi_all
--> poi_combined_point
Enables loading combined point table w/out requiring load of full polygon data. This can be considerable size savings when larger polygons are involved in the source data but being simplified before loading to Postgres.
vbuilding_all
and vshop_all
were views doing the combination and simplification on-the-fly. Wasn't good for general querying performance beyond small regional data. New table structure is only points, and fully indexed.
Requires duplicating a bit of logic in the Lua styles. The negative impact was minimized by moving common logic into new helper methods. E.g. building
and building_combined_point
leverage common logic in building_helper
. There is almost certainly room for improvement in these areas.
Increased data size with layerset=everything
with more data loaded to tables. Because of additional overhead, not loading the new _combined
tables in default
layerset. However, this opened the opportunity to consider loading more _combined_points
layers into lightweight layersets. These are discussed in the Layerset Changes subsection.
building_polygon
building_combined_point
poi_combined_point
building_combined_point
poi_combined_point
shop_combined_point
poi
poi_combined_point
--replication
Need to manually drop old views and materialized view using the db/data-migration/0.9.0.sql script. The updated import makes no attempt to remove these legacy objects. Leaving these legacy objects behind shouldn't cause any actual problems other than having multiple sources to retrieve identical data. Leaving the extra MV will increase disk usage unnecessarily.
Full Changelog: https://github.com/rustprooflabs/pgosm-flex/compare/0.8.2...0.9.0
Didn't expect another release right away.
Fixed #332 to load pgosm.road
table. Improved DB comment in #334.
Commit hash: 79de29f
The commit hash from this git repo shows up with the PgOSM Flex version number in SELECT pgosm_flex_version FROM osm.pgosm_flex;
If you see this version with a different commit hash, it indicates you are using a latest
Docker image with untagged features.
--force
option via #327osm.pgosm_flex
N/A
N/A
--replication
N/A
Full Changelog: https://github.com/rustprooflabs/pgosm-flex/compare/0.8.0...0.8.1
This release comes with multiple :warning: breaking changes. :warning: While breaking changes are included, the overall impression I have of PgOSM Flex is it is production ready, even though it's still a sub 1.0 release. Absent any major bugs/shifts in the near future, a 1.0 release is getting closer.
Commit hash: 45843be
The commit hash from this git repo shows up with the PgOSM Flex version number in SELECT pgosm_flex_version FROM osm.pgosm_flex;
If you see this version with a different commit hash, it indicates you are using a latest
Docker image with untagged features.
These are :warning: breaking changes :warning:
--schema-name
option, users can manually rename when needed #314osm.pgosm_flex
meta table (#298, #304, #312)osm.pgosm_flex
New columns
layerset
import_mode
Removed columns
project_url
import_uuid
default_date
osm2pgsql_replication
osm2pgsql_mode
N/A
--replication
No manual changes required.
osmium
for w/ --input-file
- #315Full Changelog: https://github.com/rustprooflabs/pgosm-flex/compare/0.7.2...0.8.0
Commit hash: 0b91c81
The commit hash from this git repo shows up with the PgOSM Flex version number in
SELECT pgosm_flex_version FROM osm.pgosm_flex;
If you see this version with a different commit hash, it indicates you are using alatest
Docker image with untagged features.
N/A
--replication
N/A
Full Changelog: https://github.com/rustprooflabs/pgosm-flex/compare/0.7.1...0.7.2