[pgrouting-users] osm_relations table does not get populated

Imre Samu pella.samu at gmail.com
Mon Jun 5 04:13:44 PDT 2023


> Attaching another `.osm` extract (please rename from `.txt`).

Sometimes, an extract might not contain all parts of an extremely long
relation, which means it won't be imported.

You can use "osmium check-refs" * to check referential integrity of OSM
file.*
https://docs.osmcode.org/osmium/latest/osmium-check-refs.html

osmium check-refs  -r haywards-heath-uk-small-extract-routes.osm.xml
[======================================================================]
100%
There are 1969 nodes, 197 ways, and 14 relations in this file.
Nodes     in ways      missing: 0

*Nodes     in relations missing: 297   <---- !!!!Ways      in relations
missing: 870   **<---- !!!!*
Relations in relations missing: 0

>  This file contains at least one `highway` ("Sydney Road") which is a
part of a route `relation` ("270 Brighton - East Grinstead").

( adding: "-i, --show-ids" ) you can check the missing ids.
osmium check-refs -i  -r haywards-heath-uk-small-extract-routes.osm.xml

missing ways in https://www.openstreetmap.org/relation/11566101
...
w20863252 in r11566101
w1124142166 in r11566101
w1124142167 in r11566101
w159596938 in r11566101
w181594063 in r11566101
....

missing ways in https://www.openstreetmap.org/relation/11566102
...
w14396123 in r11566102
w153899205 in r11566102
w223616400 in r11566102
w145426967 in r11566102
...

And you can check your example:  "270 Brighton → East Grinstead"
https://www.openstreetmap.org/relation/11561226

osmium check-refs -i  -r haywards-heath-uk-small-extract-routes.osm.xml |
grep r11561226
...
w960935109 in r11561226
w954035172 in r11561226
w954241918 in r11561226
w3807763 in r11561226
w843923122 in r11561226
w964331211 in r11561226
w986987784 in r11561226
w3995557 in r11561226
w986987785 in r11561226
w165441577 in r11561226
w4378508 in r11561226
w137403281 in r11561226
w137403098 in r11561226
w638278559 in r11561226
w719574502 in r11561226
w793744330 in r11561226
...



 > Attaching another `.osm` extract

imho :
if you are using osmium extract [2]  probably you have to use the
"Strategy: smart"  to extract osm data.
*"When using the smart strategy, everything is done as in the complete_ways
strategy, but multipolygon relations that have at least one node in the
region will also be completely included. You can see this in the example
image: If a multipolygon relation ties the red, green, and blue ways
together, the blue way and all its nodes will be included.*
*....**"  [1]*

[1]
https://osmcode.org/osmium-tool/manual.html#creating-geographic-extracts
[2] https://docs.osmcode.org/osmium/latest/osmium-extract.html

Regards,
   Imre


Tokura Gou <tokura.gou at gmail.com> ezt írta (időpont: 2023. jún. 5., H,
12:11):

> Another input dataset:
>
> Attaching another `.osm` extract (please rename from `.txt`). This file
> contains at least one `highway` ("Sydney Road") which is a part of a route
> `relation` ("270 Brighton - East Grinstead").
>
> This `highway` has a tag `highway=secondary` which is declared in
> `mapconfig.xml`.
>
>
>
> On Mon, Jun 5, 2023 at 11:17 AM Tokura Gou <tokura.gou at gmail.com> wrote:
>
>> Hello Imre,
>>
>> Thanks for your comment.
>>
>> I will test with another data set.
>>
>> Meanwhile, may I ask:
>>
>> 1. It seems that by default osm2pgrouting will only store those
>> osm_relations that are related to routes and that contain "highway"-tagged
>> ways, is this correct?
>> 2. Is it possible to edit mapconfig.xml to include other, non-highway
>> relations?
>>
>>
>> Thank you.
>>
>> On Sun, Jun 4, 2023 at 4:21 PM Imre Samu <pella.samu at gmail.com> wrote:
>>
>>> Hello,
>>>
>>> In the data file you've provided, named
>>> 'haywards-heath-uk-small-extract.txt',
>>> there are 8 OpenStreetMap (OSM) relation objects [2]
>>> that are marked as either 'boundary=*' or 'landuse=residential'.
>>> It appears that none of these are related to routes or are included in
>>> the 'mapconfig.xml' [1] file.
>>>
>>> Could you please specify which OSM relation you're missing from your
>>> table?
>>>
>>> Could you also test it with another input data set?  Specifically, one
>>> that includes a 'highway=*' osm relation in the extract.
>>>
>>> [1] https://github.com/pgRouting/osm2pgrouting/blob/main/mapconfig.xml
>>> [2] osmium cat haywards-heath-uk-small-extract.osm.xml -t relation  -f
>>> opl | cut -d' ' -f8
>>> [3] https://taginfo.openstreetmap.org/keys/highway#overview
>>>
>>> Regards,
>>>   Imre
>>>
>>>
>>> Tokura Gou <tokura.gou at gmail.com> ezt írta (időpont: 2023. jún. 3.,
>>> Szo, 19:11):
>>>
>>>> Hello Vicky and thanks for your response,
>>>>
>>>> Maybe due to formatting issues the data and the command were not
>>>> visible.
>>>>
>>>>
>>>> 1. Data:
>>>> https://github.com/pgRouting/osm2pgrouting/files/11598959/haywards-heath-uk-small-extract.txt
>>>> 2. Exact command: osm2pgrouting -f home/map.osm -c
>>>> "/usr/local/share/osm2pgrouting/mapconfig.xml" -d city_routing -U
>>>> [username] -W [password] --clean --tags --addnodes
>>>>
>>>>
>>>> On Fri, Jun 2, 2023 at 6:25 PM Vicky Vergara <vicky at erosion.dev> wrote:
>>>>
>>>>> Hello,
>>>>> I can not reproduce your problem:
>>>>> What is needed:
>>>>> 1) The exact data that has been used, can be in the form of a link to
>>>>> a shared file, the wget command to download from osm.
>>>>> 2) the exact command that is been used (use mylogin and mypass instead
>>>>> of the real ones when posting the command)
>>>>>
>>>>> Regards
>>>>> Vicky
>>>>>
>>>>>
>>>>> On Fri, Jun 2, 2023 at 3:52 AM Tokura Gou <tokura.gou at gmail.com>
>>>>> wrote:
>>>>>
>>>>>> *Problem*
>>>>>>
>>>>>> When running osm2pgrouting on a typical .osm file with the --addnodes
>>>>>>  option, osm_relations table stays empty.
>>>>>>
>>>>>> *To Reproduce*
>>>>>>
>>>>>> osm2pgrouting -f home/map.osm -c "/usr/local/share/osm2pgrouting/mapconfig.xml" -d city_routing -U [username] -W [password] --clean --tags --addnodes
>>>>>>
>>>>>> *Expectation*
>>>>>>
>>>>>> I use the --addnodes flag as per the documentation and I can see that
>>>>>>  osm_nodes and osm_ways tables do get populated. However,
>>>>>> osm_relations has 0 records after running osm2pgrouting and "Final
>>>>>> osm_relations:" is never mentioned in the output:
>>>>>>
>>>>>> Creating tables...
>>>>>> TABLE: ways_vertices_pgr created ... OK.
>>>>>> TABLE: ways created ... OK.
>>>>>> TABLE: pointsofinterest created ... OK.
>>>>>> TABLE: configuration created ... OK.
>>>>>> TABLE: osm_nodes created ... OK.
>>>>>> TABLE: osm_ways created ... OK.
>>>>>> TABLE: osm_relations created ... OK.
>>>>>> Opening configuration file: /usr/local/share/osm2pgrouting/mapconfig.xml
>>>>>>     Parsing configuration
>>>>>>
>>>>>> Exporting configuration ...
>>>>>>   - Done
>>>>>> Counting lines ...
>>>>>>   - Done
>>>>>> Opening data file: home/map.osm  total lines: 175957
>>>>>>     Parsing data
>>>>>>
>>>>>> Current osm_nodes:      48000
>>>>>> Final osm_nodes:        48375
>>>>>> Current osm_ways:       6000
>>>>>> Final osm_ways:         6320
>>>>>>
>>>>>> ...
>>>>>>
>>>>>> End Of file
>>>>>>
>>>>>>
>>>>>>     Finish Parsing data
>>>>>>
>>>>>> Adding auxiliary tables to database...
>>>>>>
>>>>>> Export Ways ...
>>>>>>
>>>>>> ...
>>>>>>
>>>>>> Creating indexes ...
>>>>>>
>>>>>> Processing Points of Interest ...
>>>>>>
>>>>>> Adding functions for processing Points of Interest ...
>>>>>>
>>>>>> To process pointsOfInterest table:
>>>>>> osm2pgr_pois_update(radius default 200, within default 50)
>>>>>>
>>>>>>   - Using areas of (radius)mts on POIS
>>>>>>   - Using edges that are at least (within) mts of each POI
>>>>>> POIS that do not have a closest edge is considered as too far
>>>>>> #########################
>>>>>> size of streets: 6320
>>>>>> Execution started at: Tue May 30 10:07:09 2023
>>>>>> Execution ended at:   Tue May 30 10:07:21 2023
>>>>>> Elapsed time: 11.767 Seconds.
>>>>>> User CPU time: -> 1.12268 seconds
>>>>>>
>>>>>> *Sample Data*
>>>>>>
>>>>>> A sample .osm file is attached (please rename from txt to osm if
>>>>>> needed), however I have tried other .osm exports that contain osm relations
>>>>>> with the same result.
>>>>>>
>>>>>> haywards-heath-uk-small-extract.txt
>>>>>> <https://github.com/pgRouting/osm2pgrouting/files/11598959/haywards-heath-uk-small-extract.txt>
>>>>>>
>>>>>> *Platform/versions*
>>>>>>
>>>>>> SELECT version();
>>>>>>
>>>>>> PostgreSQL 15.3 (Debian 15.3-1.pgdg110+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 10.2.1-6) 10.2.1 20210110, 64-bit
>>>>>>
>>>>>>
>>>>>> SELECT postgis_full_version();
>>>>>>
>>>>>> POSTGIS="3.3.2 4975da8" [EXTENSION] PGSQL="150" GEOS="3.9.0-CAPI-1.16.2" PROJ="7.2.1" LIBXML="2.9.10" LIBJSON="0.15" LIBPROTOBUF="1.3.3" WAGYU="0.5.0 (Internal)"
>>>>>>
>>>>>>
>>>>>> SELECT pgr_version();
>>>>>>
>>>>>>
>>>>>> 3.4.1
>>>>>>
>>>>>> _______________________________________________
>>>>>> Pgrouting-users mailing list
>>>>>> Pgrouting-users at lists.osgeo.org
>>>>>> https://lists.osgeo.org/mailman/listinfo/pgrouting-users
>>>>>>
>>>>> _______________________________________________
>>>>> Pgrouting-users mailing list
>>>>> Pgrouting-users at lists.osgeo.org
>>>>> https://lists.osgeo.org/mailman/listinfo/pgrouting-users
>>>>>
>>>> _______________________________________________
>>>> Pgrouting-users mailing list
>>>> Pgrouting-users at lists.osgeo.org
>>>> https://lists.osgeo.org/mailman/listinfo/pgrouting-users
>>>>
>>> _______________________________________________
>>> Pgrouting-users mailing list
>>> Pgrouting-users at lists.osgeo.org
>>> https://lists.osgeo.org/mailman/listinfo/pgrouting-users
>>>
>> _______________________________________________
> Pgrouting-users mailing list
> Pgrouting-users at lists.osgeo.org
> https://lists.osgeo.org/mailman/listinfo/pgrouting-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/pgrouting-users/attachments/20230605/17b6c79e/attachment-0001.htm>


More information about the Pgrouting-users mailing list