Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Routino Fatal Error (relationsx.c:240) #601

Closed
rudepi opened this issue Apr 26, 2023 · 5 comments
Closed

Routino Fatal Error (relationsx.c:240) #601

rudepi opened this issue Apr 26, 2023 · 5 comments
Labels
bug Something isn't working

Comments

@rudepi
Copy link

rudepi commented Apr 26, 2023

Describe the bug

When I try to create a new routino database I have the following error message:
image

What have you done to circle down the problem?

  • I have googled the text of the error and found one other user facing the same problem in April 2023
  • I have tried with different .pbf file having different sizes

To Reproduce

  1. Go to 'Tools"
  2. Click on 'Create a routino database'
  3. Setup QmapSchack to create a database and click on start
  4. See error

Expected behavior

I expect no error like it was the other time I update the database

Screenshots

image

Attachments

Tracebacks

Desktop

  • OS: Windows 10
  • QMapShack Version: 1.16.1
  • Window Manager: N/A

Additional context

@rudepi rudepi added the bug Something isn't working label Apr 26, 2023
@kiozen
Copy link
Collaborator

kiozen commented Apr 26, 2023

This is a problem of Routino, not QMapShack. Your input database is too large and Routino has it's limitations as it can only handle 32bit aka 4GB. You might want to file a bug report at https://www.routino.org/.

Or you use BRouter as an alternative.

@rudepi
Copy link
Author

rudepi commented Apr 26, 2023 via email

@kiozen
Copy link
Collaborator

kiozen commented Apr 26, 2023

👍

@rdorsch
Copy link

rdorsch commented Jun 12, 2023

I contacted the author of routino, Andrew M. Bishop, and there is probably good news:

Andrew's explanation for the issue:

The change suggested by the error message is just a one-line change in
the file sorting.h but it will make the data processing less efficient
in some cases which is why it does not have that value by default.

The problem is caused by a route relation that has more than ~8000
nodes and ways. It is not forbidden to have a relation with so many
members but the maximum size of a relation is recommended to be no
more than 300 items (https://wiki.openstreetmap.org/wiki/Relation#Size)
so these are exceptional relations.

The good news is that this problem is handled in routino 3.4 which he just released:

-------------------- ChangeLog --------------------

2022-07-10 [r2110] Andrew M. Bishop

    * src/relationsx.c, src/waysx.c: Drop data and log an error rather
      than exit if a way or relation contains too much data.

-------------------- ChangeLog --------------------

The fix that I used is perhaps not the optimum one but when there is
too much data (a route relation with more than about 8000 members)
Routino now discards the extra data. This is a rare case and route
relations only have a small effect on the routing database. Dropping
a few route members seems better than making the sorting less
efficient for everything else.

@kiozen
Copy link
Collaborator

kiozen commented Jun 13, 2023

Hey that's good news. Thanks for taking action!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants