A new long-term version of osm2pgsql has been released, 0.88.0. This includes the work done in the 0.87.x development series and the porting to C++.

Like all versions, 0.88.0 can be obtained from

Potentially breaking changes

Major new features

  • A new backend has been added, the “multi” backend. This allows multiple tables which can each contain different types of features. More documentation is available at

    One potential use for this feature is matching an existing schema for data, to allow OSM data to be a drop-in replacement.

  • In-memory pending tracking instead of in-database, with significant performance gains.

  • Rendering tables are ordered by GeoHash when created, resulting in significant performance improvements.

  • z_logic has been improved, taking into account more recent work across multiple styles. has more information.

Other changes

  • The node storage has been improved, and out of order nodes and nodes at 0,0 should now always be handled correctly

  • A new test suite with unit tests

  • Many bug-fixes and cleanups

Known issues

  • Append mode is not supported with non-slim. This is suported in 0.89.0-dev, but is frequently a user error. Typically, when a user does this they should instead merge input files with osmosis/osmconvert and use –create

What’s next?

osm2pgsql is switching to libosmium for parsing and will require a C++11 compiler. These changes are already in 0.89.0-dev. Beyond this, it depends on contributor time and interest and if anyone decides to pay for development.

Mailing list post:

Login to leave a comment