-
Notifications
You must be signed in to change notification settings - Fork 3.4k
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
FindPhantomNodeForCoordinate Segmentation fault #660
Comments
Can be a duplicate of #653 |
I'll look into it. |
This does indeed seem very similar to issue #653 that I raised - we're both using EC2 instances, Ubuntu 12.04, the same OSRM version from the master branch and large maps from Geofabrik. The only real difference between our setups is that I compiled with 'scons --no-march' rather than using 'make'. I would note that the same requests appear to consistently make the server crash i.e. one can restart the server, repeat the request and see the same segmentation fault. |
@thomaswilkins Scons has been replaced by cmake with the last release. Please switch to latest master |
Any news on the latest develop branch? Perhaps you only have to redo data files |
To be honest I haven't tested it. If I do I'll be sure to post my results here. It does appear that @drieks is using the latest master. |
Hi, i will check this now. Which osrm version is used by router.project-osrm.org? Is this an Ubuntu 11.04 64 bit system? |
The router is using the latest develop branch, i.e. it is dog-fooding. |
Hi, I switchted to the latest develop branch (no incomming changes at this writing), removed all CMake tmp and build files and tryed to compiled osrm.
I used master for this: There are still crashes in osrm-routed. There is enough free memory after osrm-routed was started in gdb:
Is there anything I can do to help with this bug? I can repeat all this steps on another ubuntu version. Which version is used for the demo Server? At the end of this post: there are many errors when osrm-routed is started as debug build. Can this be the problem? (I killed the process after more then 500.000 error messages) Thank you very much
(until here there are no problems)
Also with debug build:
|
The cmake error is about to be fixed in the coming hours |
Please could you also add include_directories(${BZIP2_INCLUDE_DIR}), include_directories(${ZLIB_INCLUDE_DIRS}) |
develop does build on older cmake versions again and also the above things have been added to the CMakeLists.txt with commit c3dab15 |
Closing here in favor of issue #653 |
Hello,
I always get an segmentation fault when trying to use osrm-routed with latest planet database. When I use the map of germany everything works fine.
I build osrm from master ("Merging develop branch into master for v0.3.4 release" was the last commit). The Build System was an Amazon EC2 (m2.4xlarge) default Ubuntu 12.04 System with all Updates and Packages needed for compilation installed. I just called "cmake ." and "make"
Then I downloaded this File:
wget http://ftp5.gwdg.de/pub/misc/openstreetmap/planet.openstreetmap.org/pbf/planet-latest.osm.pbf
.stxxl:
disk=/mnt/stxxl,500000,syscall
And called:
./osrm-extract /home/osrm/data/planet-latest.osm.pbf
./osrm-prepare /home/osrm/data/planet-latest.osrm /home/osrm/data/planet-latest.osrm.restrictions
I also created a timestamp:
date +%s > /home/osrm/data/planet-latest.osrm.timestamp
server.ini:
Threads = 8
IP = 0.0.0.0
Port = 5000
hsgrData=/home/osrm/data/planet-latest.osrm.hsgr
nodesData=/home/osrm/data/planet-latest.osrm.nodes
edgesData=/home/osrm/data/planet-latest.osrm.edges
ramIndex=/home/osrm/data/planet-latest.osrm.ramIndex
fileIndex=/home/osrm/data/planet-latest.osrm.fileIndex
namesData=/home/osrm/data/planet-latest.osrm.names
timestamp=/home/osrm/data/planet-latest.osrm.timestamp
Then, when i start osrm-routed:
gdb ./osrm-routed
GNU gdb (Ubuntu/Linaro 7.4-2012.04-0ubuntu2.1) 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/osrm/osrm/osrm-routed...(no debugging symbols found)...done.
(gdb) r
Starting program: /home/osrm/osrm/osrm-routed
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[server] starting up engines, saved at Mon Jul 1 10:45:08 2013
[server] http 1.1 compression handled by zlib version 1.2.3.4
[i /home/osrm/osrm/Server/DataStructures/QueryObjectsStorage.cpp:34] loading graph data
[i /home/osrm/osrm/Server/DataStructures/QueryObjectsStorage.cpp:47] Data checksum is 2559258416
[i /home/osrm/osrm/Server/DataStructures/QueryObjectsStorage.cpp:53] Loading Timestamp
[i /home/osrm/osrm/Server/DataStructures/QueryObjectsStorage.cpp:65] Loading auxiliary information
[i /home/osrm/osrm/Server/DataStructures/QueryObjectsStorage.cpp:75] Loading names index
[i /home/osrm/osrm/Server/DataStructures/QueryObjectsStorage.cpp:93] All query data structures loaded
[handler] registering plugin hello
[handler] registering plugin locate
[handler] registering plugin nearest
[handler] registering plugin timestamp
[handler] registering plugin viaroute
[New Thread 0x7fff27548700 (LWP 2482)]
[server] running and waiting for requests
[New Thread 0x7ffb4bfff700 (LWP 2483)]
[New Thread 0x7ffb4b7fe700 (LWP 2484)]
[New Thread 0x7ffb4affd700 (LWP 2485)]
[New Thread 0x7ffb4a7fc700 (LWP 2486)]
[New Thread 0x7ffb49ffb700 (LWP 2487)]
[New Thread 0x7ffb497fa700 (LWP 2488)]
[New Thread 0x7ffb48ff9700 (LWP 2489)]
[New Thread 0x7ffb33fff700 (LWP 2490)]
Until here, everything seems to be working fine.
This viaroute api call works fine:
curl "http://router.project-osrm.org/viaroute?loc=51.477450,7.429540&loc=51.481902,7.430014"
But when I execute:
curl "http://localhost:5000/viaroute?loc=51.477450,7.429540&loc=51.481902,7.430014"
osrm-routed receives an Segmentation fault:
[i /home/osrm/osrm/Server/RequestHandler.h:65] 02-07-2013 20:58:51 127.0.0.1 - curl/7.22.0 (x86_64-pc-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1 zlib/1.2.3.4 libidn/1.23 librtmp/2.3 /viaroute?loc=51.477450,7.429540&loc=51.481902,7.430014
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7ffb33fff700 (LWP 2490)]
0x0000000000447ab1 in StaticRTreeEdgeBasedGraphFactory::EdgeBasedNode::FindPhantomNodeForCoordinate(_Coordinate const&, PhantomNode&, unsigned int) ()
(gdb) bt
#0 0x0000000000447ab1 in StaticRTreeEdgeBasedGraphFactory::EdgeBasedNode::FindPhantomNodeForCoordinate(_Coordinate const&, PhantomNode&, unsigned int) ()
#1 0x00000000004623b8 in ViaRoutePlugin::HandleRequest(RouteParameters const&, http::Reply&) ()
#2 0x000000000044cd71 in http::RequestHandler::handle_request(http::Request const&, http::Reply&) ()
#3 0x0000000000459178 in http::Connection::handleRead(boost::system::error_code const&, unsigned long) ()
#4 0x0000000000464ab3 in void boost::asio::detail::strand_service::dispatch<boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned long>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> >, boost::system::error_code, unsigned long> >(boost::asio::detail::strand_service::strand_impl&, boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned long>, boost::_bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> >, boost::system::error_code, unsigned long>) ()
#5 0x00000000004655cb in void boost::asio::detail::strand_service::dispatch<boost::asio::detail::rewrapped_handler<boost::asio::detail::binder2<boost::asio::detail::wrapped_handler<boost::asio::io_service::strand, boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned long>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> > >, boost::system::error_code, unsigned long>, boost::_bi::bind_t<void, boost::mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned long>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> > > >(boost::asio::detail::strand_service::strand_impl&, boost::asio::detail::rewrapped_handler<boost::asio::detail::binder2<boost::asio::detail::wrapped_handler<boost::asio::io_service::strand, boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned long>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> > >, boost::system::error_code, unsigned long>, boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned long>, boost::_bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> > >) ()
#6 0x0000000000465a35 in void boost::asio::detail::asio_handler_invoke<boost::asio::detail::binder2<boost::asio::detail::wrapped_handler<boost::asio::io_service::strand, boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned long>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> > >, boost::system::error_code, unsigned long>, boost::asio::io_service::strand, boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned long>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> > >(boost::asio::detail::binder2<boost::asio::detail::wrapped_handler<boost::asio::io_service::strand, boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned long>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> > >, boost::system::error_code, unsigned long> const&, boost::asio::detail::wrapped_handler<boost::asio::io_service::strand, boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned long>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> > >*) ()
#7 0x0000000000465bbe in boost::asio::detail::reactive_socket_recv_op<boost::asio::mutable_buffers_1, boost::asio::detail::wrapped_handler<boost::asio::io_service::strand, boost::bi::bind_t<void, boost::mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned long>, boost::bi::list3boost::bi::value<boost::shared_ptr<http::Connection >, boost::arg<1> ()(), boost::arg<2> ()()> > > >::do_complete(boost::asio::detail::task_io_service, boost::asio::detail::task_io_service_operation, boost::system::error_code, unsigned long) ()
#8 0x0000000000440190 in boost::asio::detail::task_io_service::run(boost::system::error_code&) ()
#9 0x0000000000440415 in boost::asio::io_service::run() ()
#10 0x00007ffff77abce9 in thread_proxy () from /usr/lib/libboost_thread.so.1.46.1
#11 0x00007ffff7589e9a in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#12 0x00007ffff667fccd in clone () from /lib/x86_64-linux-gnu/libc.so.6
#13 0x0000000000000000 in ?? ()
There should also be enough free space:
free -m
total used free shared buffers cached
Mem: 68551 23607 44944 0 147 22259
-/+ buffers/cache: 1200 67351
Swap: 65535 0 65535
I repeated this steps on another server (internal company server with ubuntu 12.04) with the same results.
When I only use the map data of germany everything seems to be working. Could anyone give a hint what is going wrong?
Thank you very much!
Best Regards
Dennis Rieks
The text was updated successfully, but these errors were encountered: