drolbr / Overpass-API

A database engine to query the OpenStreetMap data.
http://overpass-api.de
GNU Affero General Public License v3.0
690 stars 90 forks source link

Certain country areas not created due to open border polygon in corresponding relation #732

Closed rollenfahrer closed 11 hours ago

rollenfahrer commented 1 week ago

Hi,

I'm observing an issue with area creation. I downloaded the latest europe osm file from geofabrik and created a fresh database with osm-3s_v0.7.62. Almost all country areas are built but some are not, e.g. Austria. Traced the problem down to this if-statement in make_area.cc:383.

if (!(odd_id == Node::Id_Type(0ull)) || !(odd_pair.first == Node::Id_Type(0ull))) { transfer_output(rman, into); return; }

The debugger shows that there are indeed 2 nodes in the relation of Austria that don't fulfill the parity condition. So if closed polygons are mandatory for area creation this is clearly an inconsistency in the osm file. Yet, the strange thing is: in overpass turbo the area exists (and I'm pretty sure also in earlier versions of the database I created myself). So either they are using another osm file in overpass turbo or applied a patch to make_area.cc,

Any help or comment greatly appreciated!

mmd-osm commented 1 week ago

overpass turbo is just a web frontend, so this is not relevant for the discussion here. The backend Overpass API server that is used by overpass turbo uses a global database to generate the areas.

Maybe you're seeing some issues in your case, because not all information is available in your extract. Also, it might be, that the relation is broken at the moment, but used to be ok some time ago.

In this case, Overpass API will still use the old area, because the area creation won't delete the existing area, if the area cannot be generated for a relation for some reason. If you're starting fresh with a new extract, this will of course not apply, because there's no prior area available that is still working.

If the data is broken in OSM, you could check if it needs to be fixed (assuming that there's really in issue), and wait for the next Geofabrik extract to be published.

rollenfahrer commented 1 week ago

Thanks for the comment. Of course this makes absolutely sense! I'll raise an issue at osm.org then. In the meantime, commenting out the parity condition will help me to go on.

mmd-osm commented 1 week ago

No, please discuss this topic on https://c.osm.org the OSM community forum. There's no point in raising any issue for it.

rollenfahrer commented 1 week ago

Ok, will do so.

Am 22. Juni 2024, 12:42, um 12:42, mmd @.***> schrieb:

No, please discuss this topic on https://c.osm.org the OSM community forum. There's no point in raising any issue for it.

-- Reply to this email directly or view it on GitHub: https://github.com/drolbr/Overpass-API/issues/732#issuecomment-2183976113 You are receiving this because you authored the thread.

Message ID: @.***>

drolbr commented 11 hours ago

From the thread on community.osm.org, it looks like the user had bad luck with a short window of broken data.