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

osrm-prepare Segmentation fault #430

Closed
banek13 opened this issue Sep 24, 2012 · 7 comments
Closed

osrm-prepare Segmentation fault #430

banek13 opened this issue Sep 24, 2012 · 7 comments
Milestone

Comments

@banek13
Copy link

banek13 commented Sep 24, 2012

Hello

I'm using ununtu 12.04 x86_64 with latest updates
the osrm-exctractor finished fine. But osrm-prepare gives me segmentation fault

planner@plannerubuntu:~/Project-OSRM$ gdb ./osrm-prepare
GNU gdb (Ubuntu/Linaro 7.4-2012.04-0ubuntu2) 7.4-2012.04
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
http://bugs.launchpad.net/gdb-linaro/...
Reading symbols from /home/planner/Project-OSRM/osrm-prepare...(no debugging symbols found)...done.
(gdb) r europe.osrm europe.osrm.restrictions
Starting program: /home/planner/Project-OSRM/osrm-prepare europe.osrm europe.osrm.restrictions
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[info createHierarchy.cpp:86] Loading SRTM from/to ./srtm/Eurasia
[info createHierarchy.cpp:89] Using restrictions from file: europe.osrm.restrictions
[info Util/GraphLoader.h:190] Graph loaded ok and has 124206952 edges
[info createHierarchy.cpp:117] 95591 restrictions, 528 bollard nodes, 185165 traffic lights

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff777da70 in lua_pushthread () from /usr/lib/x86_64-linux-gnu/libluajit-5.1.so.2
(gdb) bt
#0 0x00007ffff777da70 in lua_pushthread () from /usr/lib/x86_64-linux-gnu/libluajit-5.1.so.2
#1 0x00007ffff79b5fce in luabind::open(lua_State*) () from /usr/lib/libluabind.so.0.9.1
#2 0x000000000040a119 in main ()

@banek13
Copy link
Author

banek13 commented Sep 25, 2012

that issue occurs with big europe map data file.
With swirzerland file it runs ok.

@DennisOSRM
Copy link
Collaborator

According to the stack trace it breaks before touching any input data. Please use the lastest and greatest version from master branch and retry.

@banek13
Copy link
Author

banek13 commented Sep 26, 2012

THank you for your reply.
updated, recompiled. another error

planner@plannerubuntu:/Project-OSRM$ ./osrm-prepare europe.osrm europe.osrm.restrictions
[info createHierarchy.cpp:86] Loading SRTM from/to /opt/storage/srtm/Eurasia
[info createHierarchy.cpp:89] Using restrictions from file: europe.osrm.restrictions
[info Util/GraphLoader.h:190] Graph loaded ok and has 124206952 edges
[info createHierarchy.cpp:117] 95591 restrictions, 528 bollard nodes, 185165 traffic lights
[error createHierarchy.cpp:133] profile.lua:73: 'end' expected (to close 'if' at line 71) near 'node' occured in scripting block
planner@plannerubuntu:
/Project-OSRM$ ./osrm-extract europe.osm.pbf
[info extractor.cpp:58] extracting data from input file europe.osm.pbf
[LUA] Initializing LUA engine
[error extractor.cpp:146] profile.lua:73: 'end' expected (to close 'if' at line 71) near 'node' occured in scripting block

planner@plannerubuntu:~/Project-OSRM$ gdb ./osrm-prepare
GNU gdb (Ubuntu/Linaro 7.4-2012.04-0ubuntu2) 7.4-2012.04
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
http://bugs.launchpad.net/gdb-linaro/...
Reading symbols from /home/planner/Project-OSRM/osrm-prepare...(no debugging symbols found)...done.
(gdb) r europe.osrm europe.osrm.restrictions
Starting program: /home/planner/Project-OSRM/osrm-prepare europe.osrm europe.osrm.restrictions
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[info createHierarchy.cpp:86] Loading SRTM from/to /opt/storage/srtm/Eurasia
[info createHierarchy.cpp:89] Using restrictions from file: europe.osrm.restrictions
[info Util/GraphLoader.h:190] Graph loaded ok and has 124206952 edges
[info createHierarchy.cpp:117] 95591 restrictions, 528 bollard nodes, 185165 traffic lights
[error createHierarchy.cpp:133] profile.lua:73: 'end' expected (to close 'if' at line 71) near 'node' occured in scripting block
Inferior 1 (process 21811) exited with code 0377 bt
No stack.
(gdb)

DennisOSRM pushed a commit that referenced this issue Sep 27, 2012
@banek13
Copy link
Author

banek13 commented Sep 27, 2012

thanks for fix.
Pulled updates. The another error with europe file:
planner@plannerubuntu:~/Project-OSRM$ gdb ./osrm-prepare
GNU gdb (Ubuntu/Linaro 7.4-2012.04-0ubuntu2) 7.4-2012.04
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
http://bugs.launchpad.net/gdb-linaro/...
Reading symbols from /home/planner/Project-OSRM/osrm-prepare...(no debugging symbols found)...done.
(gdb) r europe.osrm europe.osrm.restrictions
Starting program: /home/planner/Project-OSRM/osrm-prepare europe.osrm europe.osrm.restrictions
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[info createHierarchy.cpp:86] Loading SRTM from/to /opt/storage/srtm/Eurasia
[info createHierarchy.cpp:89] Using restrictions from file: europe.osrm.restrictions
[info Util/GraphLoader.h:190] Graph loaded ok and has 124206952 edges
[info createHierarchy.cpp:117] 95591 restrictions, 528 bollard nodes, 185165 traffic lights
[info createHierarchy.cpp:153] Generating edge-expanded graph representation
terminate called after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc

Program received signal SIGABRT, Aborted.
0x00007ffff6112445 in raise () from /lib/x86_64-linux-gnu/libc.so.6
(gdb) bt
#0 0x00007ffff6112445 in raise () from /lib/x86_64-linux-gnu/libc.so.6
#1 0x00007ffff6115bab in abort () from /lib/x86_64-linux-gnu/libc.so.6
#2 0x00007ffff6c6e69d in __gnu_cxx::__verbose_terminate_handler() () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#3 0x00007ffff6c6c846 in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#4 0x00007ffff6c6c873 in std::terminate() () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#5 0x00007ffff6c6c96e in __cxa_throw () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#6 0x00007ffff6c6ce4d in operator new(unsigned long) () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#7 0x000000000044165d in std::vector<DynamicGraphEdgeBasedGraphFactory::_NodeBasedEdgeData::Edge, std::allocator<DynamicGraphEdgeBasedGraphFactory::_NodeBasedEdgeData::Edge> >::reserve(unsigned long) ()
#8 0x0000000000443582 in DynamicGraphEdgeBasedGraphFactory::_NodeBasedEdgeData::DynamicGraph<DeallocatingVector<DynamicGraphEdgeBasedGraphFactory::_NodeBasedEdgeData::InputEdge, 374491ul> >(int, DeallocatingVector<DynamicGraphEdgeBasedGraphFactory::_NodeBasedEdgeData::InputEdge, 374491ul> const&) ()
#9 0x0000000000443847 in boost::shared_ptr<DynamicGraphEdgeBasedGraphFactory::_NodeBasedEdgeData > boost::make_shared<DynamicGraphEdgeBasedGraphFactory::_NodeBasedEdgeData, int, DeallocatingVector<DynamicGraphEdgeBasedGraphFactory::_NodeBasedEdgeData::InputEdge, 374491ul> >(int const&, DeallocatingVector<DynamicGraphEdgeBasedGraphFactory::_NodeBasedEdgeData::InputEdge, 374491ul> const&) ()
#10 0x000000000043fd3a in EdgeBasedGraphFactory::EdgeBasedGraphFactory(int, std::vector<NodeBasedEdge, std::allocator >&, std::vector<unsigned int, std::allocator >&, std::vector<unsigned int, std::allocator >&, std::vector<_Restriction, std::allocator<_Restriction> >&, std::vector<NodeCoords, std::allocator<NodeCoords > >&, EdgeBasedGraphFactory::SpeedProfileProperties) ()
#11 0x000000000040a434 in main ()
(gdb)

@banek13
Copy link
Author

banek13 commented Sep 27, 2012

The server has 14Gb memory. That process eats it almost all

@DennisOSRM
Copy link
Collaborator

You probably dont have RAM.

@banek13
Copy link
Author

banek13 commented Sep 28, 2012

increased memory till 20Gb

planner@plannerubuntu:~/Project-OSRM$ gdb ./osrm-prepare
GNU gdb (Ubuntu/Linaro 7.4-2012.04-0ubuntu2) 7.4-2012.04
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
http://bugs.launchpad.net/gdb-linaro/...
Reading symbols from /home/planner/Project-OSRM/osrm-prepare...(no debugging symbols found)...done.
(gdb) r europe.osrm europe.osrm.restrictions
Starting program: /home/planner/Project-OSRM/osrm-prepare europe.osrm europe.osrm.restrictions
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[info createHierarchy.cpp:86] Loading SRTM from/to /opt/storage/srtm/Eurasia
[info createHierarchy.cpp:89] Using restrictions from file: europe.osrm.restrictions
[info Util/GraphLoader.h:190] Graph loaded ok and has 124206952 edges
[info createHierarchy.cpp:117] 95591 restrictions, 528 bollard nodes, 185165 traffic lights
[info createHierarchy.cpp:153] Generating edge-expanded graph representation
[info Contractor/EdgeBasedGraphFactory.cpp:173] Identifying small components
. 10% . 20% . 30% . 40% . 50% . 60% . 70% . 80% . 90% . 100%
[info Contractor/EdgeBasedGraphFactory.cpp:227] identified: 250973 many components
. 10% . 20% . 30% . 40% . 50% . 60% . 70% . 80% .
Program terminated with signal SIGKILL, Killed.
The program no longer exists.
(gdb) bt
No stack.
(gdb)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants