[OSM-dev] Osmupdate 0.4.5 fails (osmctools)

Stephan Knauss osm at stephans-server.de
Mon Feb 22 19:37:55 UTC 2021


Hello Florian,

On 22.02.2021 18:25, Florian Lohoff wrote:
> "Download and build in one run:   wget -O - http://m.m.i24.cc/osmupdate.c | cc -x c - -o osmupdate"
> 
> How is anyone not familiar with C coding, gcc/cc command line options be
> able to apply a simple one liner patch?
> 
> The whole procedure around osmupdate/osmconvert are not user friendly AT ALL.

I think ten years ago when Markus created this set of tooling it was one 
of the most user-friendly ways around to handle osm files.

The development of the o5m format happened somewhat in parallel to PBF 
and in terms of processing speed/size in a similar category, compared to 
the old XML format.

Getting the right versions of protobuf together to handle PBF files was 
quite hard.

The tools offered a text-gui driven way for beginners to interact with them.

That one-liner is copy-paste. Quite beginner friendly. And for others 
had been pre-compiled binaries.

Also available for Windows!

What is right, that the coding style is quite unique with sort of 
inlined modules instead of multiple files.

I had a longer look at the code together with Markus at a hack day in 
Munich that time when I was trying to investigate a performance 
bottleneck of the toolchain under windows.
I think we talked about adding the code to a VCS. Looks like thzis 
happened, just the wiki never got updated.

Performance of his tools is still excellent, as it probably took some 
shortcuts.
As it is always compared with osmium, I keep wondering what osmium does 
which makes it use more than 5 times CPU time.

12 cores fully saturated, so about 1836s of CPU time.
time work/osmium-tool/build/osmium extract -p osm-tools-sea.poly  -o 
sea.pbf --progress asia-latest.osm.pbf
real    2m33.952s


single threaded, 357s CPU time:
time ./osmconvert64 asia-latest.osm.pbf -B=osm-tools-sea.poly 
--complete-ways -o=sea.pbf
real    5m57.311s


What remains is the lack of contributors, probably due to the unique 
coding style. Even with the code having lots of comments it is hard to 
follow. So yes: It is a project with a bus-factor of 1.

Not certain what the reason was why no new versions had been released. 
Maybe the tool was just working? Let's see whether we will get a fixed 
version.

I certainly prefer to have multiple alternative tools around doing 
similar jobs. This makes the OSM ecosystem much more robust.

Stephan



More information about the dev mailing list