-
-
Notifications
You must be signed in to change notification settings - Fork 3.9k
osrm-routed hangs #247
Description
many of the tests (i would say about 50%) currently fail because osrm-routed hangs. i've investigated one specific case, checking wether it really hangs when you run things manually. it does, as shown below. all examples uses latest master (a394973...), build on Mac in release version.
i've looked at the "Two ways connected in a straight line" scenario in feature/feature.basic:
Scenario: Two ways connected in a straight line
Given the node map
| a | b | c |
And the ways
| nodes |
| ab |
| bc |
When I route I should get
| from | to | route |
| a | c | ab,bc |
the .osm file generated contain:
<?xml version="1.0" encoding="UTF-8"?>
<osm generator="osrm-test" version="0.6">
<node id="1" version="1" uid="1" user="osrm" timestamp="2000-00-00T00:00:00Z" lon="1.0" lat="1.0">
<tag k="name" v="a"/>
</node>
<node id="2" version="1" uid="1" user="osrm" timestamp="2000-00-00T00:00:00Z" lon="1.000899199712256" lat="1.0">
<tag k="name" v="b"/>
</node>
<node id="3" version="1" uid="1" user="osrm" timestamp="2000-00-00T00:00:00Z" lon="1.001798399424512" lat="1.0">
<tag k="name" v="c"/>
</node>
<way id="4" version="1" uid="1" user="osrm" timestamp="2000-00-00T00:00:00Z">
<nd ref="1"/>
<nd ref="2"/>
<tag k="highway" v="primary"/>
<tag k="name" v="ab"/>
</way>
<way id="5" version="1" uid="1" user="osrm" timestamp="2000-00-00T00:00:00Z">
<nd ref="2"/>
<nd ref="3"/>
<tag k="highway" v="primary"/>
<tag k="name" v="bc"/>
</way>
</osm>the speedprofile used is:
[Scenario: Two ways connected in a straight line]
accessTag = bicycle
defaultSpeed = 17
obeyOneways = yes
useRestrictions = yes
obeyBollards = no
cycleway = 19
primary = 19
primary_link = 19
secondary = 17
secondary_link = 17
tertiary = 15
residential = 15
unclassified = 15
living_street = 13
road = 13
service = 12
track = 12
path = 12
footway = 10
pedestrian = 5
pier = 5
steps = 3
ferry = 5
excludeFromGrid = ferry
first i process the osm file:
~/code/Project-OSRM$ ((a394973...) *) cd test
~/code/Project-OSRM/test$ ((a394973...) *) ../osrm-extract cache/a801d2fb5453c1483dd5eb259145f9950182091c.osm
[STXXL-MSG] STXXL v1.3.1 (release)
[STXXL-MSG] 1 disks are allocated, total space: 1 MiB
[info extractor.cpp:86] extracting data from input file cache/a801d2fb5453c1483dd5eb259145f9950182091c.osm
[info extractor.cpp:115] Loading speed profiles
[info extractor.cpp:117] Found the following speed profiles:
[0]Scenario: Two ways connected in a straight line
[info extractor.cpp:125] Using profile "Scenario: Two ways connected in a straight line"
[info extractor.cpp:184] Using 1 GB of RAM for buffers
[warn DataStructures/XMLParser.h:35] Parsing plain .osm/.osm.bz2 is deprecated. Switch to .pbf
[extractor] parsing finished after 0.00058198 seconds
[extractor] Sorting used nodes ... ok, after 0.529756s
[extractor] Erasing duplicate nodes ... ok, after 0.00135398s
[extractor] Sorting all nodes ... ok, after 0.135473s
[extractor] Sorting used ways ... ok, after 0.0829151s
[extractor] Sorting restrctns. by from... ok, after 0.0829859s
[extractor] Fixing restriction starts ... ok, after 0.0829999s
[extractor] Sorting restrctns. by to ... ok, after 1.90735e-05s
[extractor] Fixing restriction ends ... ok, after 7.86781e-06s
[info extractor.cpp:310] usable restrictions: 0
[extractor] Confirming/Writing used nodes ... ok, after 0.000975847s
[extractor] setting number of nodes ... ok
[extractor] Sorting edges by start ... ok, after 0.104585s
[extractor] Setting start coords ... ok, after 0.000550985s
[extractor] Sorting edges by target ... ok, after 0.0987132s
[extractor] Setting target coords ... ok, after 0.000793934s
[extractor] setting number of edges ... ok
[extractor] writing street name index ... ok, after 0.000264883s
[info extractor.cpp:498] Processed 2.37006 nodes/sec and 1.58004 edges/sec
[extractor] finished.
~/code/Project-OSRM/test$ ((a394973...) *) ../osrm-prepare cache/a801d2fb5453c1483dd5eb259145f9950182091c.osrm cache/a801d2fb5453c1483dd5eb259145f9950182091c.osrm.restrictions
[info createHierarchy.cpp:85] Using restrictions from file: cache/a801d2fb5453c1483dd5eb259145f9950182091c.osrm.restrictions
[info Util/GraphLoader.h:166] Graph loaded ok and has 2 edges
[info createHierarchy.cpp:113] 0 restrictions, 0 bollard nodes, 0 traffic lights
[info createHierarchy.cpp:125] Generating edge-expanded graph representation
. 10% . 20% . 30% . 40% . 50% . 60% . 100%
70% . 80% . 90% . 100% [info Contractor/EdgeBasedGraphFactory.cpp:288] Sorting edge-based Nodes
[info Contractor/EdgeBasedGraphFactory.cpp:290] Removing duplicate nodes (if any)
[info Contractor/EdgeBasedGraphFactory.cpp:292] Applying vector self-swap trick to free up memory
[info Contractor/EdgeBasedGraphFactory.cpp:294] Node-based graph contains 8 edges
[info Contractor/EdgeBasedGraphFactory.cpp:295] Edge-based graph contains 4 edges, blowup is 0.5
[info Contractor/EdgeBasedGraphFactory.cpp:296] Edge-based graph skipped 0 turns, defined by 0 restrictions.
[info Contractor/EdgeBasedGraphFactory.cpp:297] Generated 4 edge based nodes
[info createHierarchy.cpp:147] writing node map ...
[info createHierarchy.cpp:156] writing info on original edges
[info createHierarchy.cpp:176] building grid ...
[STXXL-MSG] STXXL v1.3.1 (release)
[STXXL-MSG] 1 disks are allocated, total space: 1 MiB
. 10% . 20% . 30% . 40% . 50% . 60% . 70% . 100%
80% . 90% . 100% [info DataStructures/NNGrid.h:119] sorting grid data consisting of 4 edges...
[info DataStructures/NNGrid.h:122] finished sorting after 0.0535879s
writing data .... 10% . 20% . 30% . 40% . 50% . 60% . 70% . 100%
80% . 90% . 100% sse based
[info createHierarchy.cpp:188] initializing contractor
merged 0 edges out of 8
[info Contractor/Contractor.h:175] Finished building dynamic graph
contractor finished initalization
Contractor is using 1 threads
initializing elimination PQ ...ok
preprocessing .... 10% . 20% . 30% . 40% . 50% . 60% . 70% . 100%
80% . 90% . 100% [info createHierarchy.cpp:192] Contraction took 5.88894e-05 sec
[info createHierarchy.cpp:202] Building Node Array
[info createHierarchy.cpp:206] Serializing compacted graph
[info createHierarchy.cpp:258] Expansion : 2574.77 nodes/sec and 3433.03 edges/sec
[info createHierarchy.cpp:259] Contraction: 3433.03 nodes/sec and 0 edges/sec
[info createHierarchy.cpp:264] finished preprocessing
i now have all the expected .osrm.* datafiles in the cache folder:
~/code/Project-OSRM/test$ ((a394973...) *) ls -l cache
total 16464
-rw-r--r-- 1 emil staff 901 May 6 10:06 a801d2fb5453c1483dd5eb259145f9950182091c.osm
-rw-r--r-- 1 emil staff 110 May 6 10:18 a801d2fb5453c1483dd5eb259145f9950182091c.osrm
-rw-r--r-- 1 emil staff 52 May 6 10:18 a801d2fb5453c1483dd5eb259145f9950182091c.osrm.edges
-rw-r--r-- 1 emil staff 8308 May 6 10:18 a801d2fb5453c1483dd5eb259145f9950182091c.osrm.fileIndex
-rw-r--r-- 1 emil staff 20 May 6 10:18 a801d2fb5453c1483dd5eb259145f9950182091c.osrm.hsgr
-rw-r--r-- 1 emil staff 20 May 6 10:18 a801d2fb5453c1483dd5eb259145f9950182091c.osrm.names
-rw-r--r-- 1 emil staff 36 May 6 10:18 a801d2fb5453c1483dd5eb259145f9950182091c.osrm.nodes
-rw-r--r-- 1 emil staff 8388608 May 6 10:18 a801d2fb5453c1483dd5eb259145f9950182091c.osrm.ramIndex
-rw-r--r-- 1 emil staff 4 May 6 10:18 a801d2fb5453c1483dd5eb259145f9950182091c.osrm.restrictions
i check that the server.ini file is correct (manually adding edgesData, since it's missing with master version of cucumber tests):
Threads = 1
IP = 0.0.0.0
Port = 5000
hsgrData=cache/a801d2fb5453c1483dd5eb259145f9950182091c.osrm.hsgr
nodesData=cache/a801d2fb5453c1483dd5eb259145f9950182091c.osrm.nodes
edgesData=cache/a801d2fb5453c1483dd5eb259145f9950182091c.osrm.edges
ramIndex=cache/a801d2fb5453c1483dd5eb259145f9950182091c.osrm.ramIndex
fileIndex=cache/a801d2fb5453c1483dd5eb259145f9950182091c.osrm.fileIndex
namesData=cache/a801d2fb5453c1483dd5eb259145f9950182091c.osrm.names
then i start osrm-routed:
~/code/Project-OSRM/test$ ((a394973...) *) ../osrm-routed
[server] starting up engines, saved at Sat May 5 16:23:03 2012
[server] http 1.1 compression handled by zlib version 1.2.5
[info Server/DataStructures/QueryObjectsStorage.cpp:26] loading graph data
[info Server/DataStructures/QueryObjectsStorage.cpp:33] Data checksum is 1633059332
[info Server/DataStructures/QueryObjectsStorage.cpp:39] Loading auxiliary information
[info Server/DataStructures/QueryObjectsStorage.cpp:47] Loading names index
[info Server/DataStructures/QueryObjectsStorage.cpp:64] All query data structures loaded
[handler] registering plugin hello
[handler] registering plugin locate
[handler] registering plugin nearest
[handler] registering plugin viaroute
[server] running and waiting for requests
i open another terminal window, and request a route:
curl "http://localhost:5000/viaroute?loc=1.0,1.0&loc=1.0,1.001798399424512&output=json&geomformat=cmp"
osrm-routed logs the request, but hangs:
...
[info Server/RequestHandler.h:61] 06-04-2012 10:18:20 127.0.0.1 /viaroute?loc=1.0,1.0&loc=1.0,1.001798399424512&output=json&geomformat=cmp
curl is also hanging, waiting for a reply.
using Activity Monitor (i'm on a Mac) shows that osrm-routed is continusouly using 28% percent of CPU cycles (it's compiled without openMP). inspecting the process seems to show that it's hanging somewhere in SearchEngine::_RoutingStep:
Sampling process 69369 for 1 seconds with 1 millisecond of run time between samples
Sampling completed, processing symbols...
Analysis of sampling osrm-routed (pid 69369) every 1 millisecond
Process: osrm-routed [69369]
Path: /Users/emil/code/Project-OSRM/osrm-routed
Load Address: 0x104e83000
Identifier: osrm-routed
Version: ??? (???)
Code Type: X86-64 (Native)
Parent Process: bash [325]
Date/Time: 2012-05-06 10:19:42.965 +0200
OS Version: Mac OS X 10.7.3 (11D50b)
Report Version: 7
Call graph:
883 Thread_2574913 DispatchQueue_1: com.apple.main-thread (serial)
+ 883 start (in osrm-routed) + 52 [0x104e83f44]
+ 883 main (in osrm-routed) + 879 [0x104e8560f]
+ 883 sigwait (in libsystem_c.dylib) + 68 [0x7fff868f9aab]
+ 883 __sigwait (in libsystem_kernel.dylib) + 10 [0x7fff8a16b036]
883 Thread_2574914
+ 883 thread_start (in libsystem_c.dylib) + 13 [0x7fff86946b75]
+ 883 _pthread_start (in libsystem_c.dylib) + 335 [0x7fff869438bf]
+ 883 thread_proxy (in libboost_thread-mt.dylib) + 160 [0x104f1e460]
+ 883 http::Server::Run() (in osrm-routed) + 328 [0x104e9e980]
+ 883 boost::thread::join() (in libboost_thread-mt.dylib) + 103 [0x104f1fe5b]
+ 883 boost::condition_variable::wait(boost::unique_lock<boost::mutex>&) (in libboost_thread-mt.dylib) + 147 [0x104f26a4f]
+ 883 _pthread_cond_wait (in libsystem_c.dylib) + 840 [0x7fff86947274]
+ 883 __psynch_cvwait (in libsystem_kernel.dylib) + 10 [0x7fff8a16abca]
883 Thread_2574915
883 thread_start (in libsystem_c.dylib) + 13 [0x7fff86946b75]
883 _pthread_start (in libsystem_c.dylib) + 335 [0x7fff869438bf]
883 thread_proxy (in libboost_thread-mt.dylib) + 160 [0x104f1e460]
883 boost::asio::io_service::run() (in osrm-routed) + 41 [0x104e9ddf1]
883 boost::asio::detail::task_io_service::run(boost::system::error_code&) (in osrm-routed) + 399 [0x104e9dc31]
883 boost::asio::detail::task_io_service::do_run_one(boost::asio::detail::scoped_lock<boost::asio::detail::posix_mutex>&, boost::asio::detail::task_io_service::thread_info&, boost::asio::detail::op_queue<boost::asio::detail::task_io_service_operation>&, boost::system::error_code const&) (in osrm-routed) + 369 [0x104e9d76b]
883 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::list3<boost::_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 const&, unsigned long) (in osrm-routed) + 163 [0x104e913b3]
883 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::list3<boost::_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::list3<boost::_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::list3<boost::_bi::value<boost::shared_ptr<http::Connection> >, boost::arg<1> (*)(), boost::arg<2> (*)()> > >, boost::system::error_code, unsigned long>&, 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::list3<boost::_bi::value<boost::shared_ptr<http::Connection> >, boost::arg<1> (*)(), boost::arg<2> (*)()> > >*) (in osrm-routed) + 143 [0x104ea3a9f]
883 void boost::asio::io_service::strand::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::list3<boost::_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::list3<boost::_bi::value<boost::shared_ptr<http::Connection> >, boost::arg<1> (*)(), boost::arg<2> (*)()> > > >(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::list3<boost::_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::list3<boost::_bi::value<boost::shared_ptr<http::Connection> >, boost::arg<1> (*)(), boost::arg<2> (*)()> > > const&) (in osrm-routed) + 150 [0x104ea39e0]
883 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::list3<boost::_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::list3<boost::_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::list3<boost::_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::list3<boost::_bi::value<boost::shared_ptr<http::Connection> >, boost::arg<1> (*)(), boost::arg<2> (*)()> > >) (in osrm-routed) + 415 [0x104ea3893]
883 boost::asio::detail::completion_handler<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::list3<boost::_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::list3<boost::_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 const&, unsigned long) (in osrm-routed) + 214 [0x104e8c246]
883 void boost_asio_handler_invoke_helpers::invoke<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::list3<boost::_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::list3<boost::_bi::value<boost::shared_ptr<http::Connection> >, boost::arg<1> (*)(), boost::arg<2> (*)()> > >, boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned long>, boost::_bi::list3<boost::_bi::value<boost::shared_ptr<http::Connection> >, boost::arg<1> (*)(), boost::arg<2> (*)()> > >(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::list3<boost::_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::list3<boost::_bi::value<boost::shared_ptr<http::Connection> >, boost::arg<1> (*)(), boost::arg<2> (*)()> > >&, boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned long>, boost::_bi::list3<boost::_bi::value<boost::shared_ptr<http::Connection> >, boost::arg<1> (*)(), boost::arg<2> (*)()> >&) (in osrm-routed) + 139 [0x104ea36cb]
883 void boost::asio::asio_handler_invoke<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::list3<boost::_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::list3<boost::_bi::value<boost::shared_ptr<http::Connection> >, boost::arg<1> (*)(), boost::arg<2> (*)()> > > >(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::list3<boost::_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::list3<boost::_bi::value<boost::shared_ptr<http::Connection> >, boost::arg<1> (*)(), boost::arg<2> (*)()> > >, ...) (in osrm-routed) + 102 [0x104ea3636]
883 void 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::list3<boost::_bi::value<boost::shared_ptr<http::Connection> >, boost::arg<1> (*)(), boost::arg<2> (*)()> > >::operator()<boost::system::error_code, unsigned long>(boost::system::error_code const&, unsigned long const&) (in osrm-routed) + 92 [0x104ea34ac]
883 void boost::asio::io_service::strand::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::list3<boost::_bi::value<boost::shared_ptr<http::Connection> >, boost::arg<1> (*)(), boost::arg<2> (*)()> >, boost::system::error_code, unsigned long> >(boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned long>, boost::_bi::list3<boost::_bi::value<boost::shared_ptr<http::Connection> >, boost::arg<1> (*)(), boost::arg<2> (*)()> >, boost::system::error_code, unsigned long> const&) (in osrm-routed) + 95 [0x104ea33b9]
883 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::list3<boost::_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::list3<boost::_bi::value<boost::shared_ptr<http::Connection> >, boost::arg<1> (*)(), boost::arg<2> (*)()> >, boost::system::error_code, unsigned long>) (in osrm-routed) + 328 [0x104ea3284]
883 void boost_asio_handler_invoke_helpers::invoke<boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned long>, boost::_bi::list3<boost::_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::list3<boost::_bi::value<boost::shared_ptr<http::Connection> >, boost::arg<1> (*)(), boost::arg<2> (*)()> > >(boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned long>, boost::_bi::list3<boost::_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::list3<boost::_bi::value<boost::shared_ptr<http::Connection> >, boost::arg<1> (*)(), boost::arg<2> (*)()> >&) (in osrm-routed) + 84 [0x104e8c354]
883 void boost::asio::asio_handler_invoke<boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned long>, boost::_bi::list3<boost::_bi::value<boost::shared_ptr<http::Connection> >, boost::arg<1> (*)(), boost::arg<2> (*)()> >, boost::system::error_code, unsigned long> >(boost::asio::detail::binder2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, http::Connection, boost::system::error_code const&, unsigned long>, boost::_bi::list3<boost::_bi::value<boost::shared_ptr<http::Connection> >, boost::arg<1> (*)(), boost::arg<2> (*)()> >, boost::system::error_code, unsigned long>, ...) (in osrm-routed) + 126 [0x104e89e3e]
883 http::Connection::handleRead(boost::system::error_code const&, unsigned long) (in osrm-routed) + 452 [0x104ea4c28]
883 http::RequestHandler::handle_request(http::Request const&, http::Reply&) (in osrm-routed) + 2222 [0x104eb05f0]
883 ViaRoutePlugin::HandleRequest(RouteParameters const&, http::Reply&) (in osrm-routed) + 3161 [0x104e8e441]
883 SearchEngine<QueryEdge::EdgeData, StaticGraph<QueryEdge::EdgeData> >::ComputeRoute(PhantomNodes&, std::vector<_PathData, std::allocator<_PathData> >&) (in osrm-routed) + 474 [0x104eacf20]
883 void SearchEngine<QueryEdge::EdgeData, StaticGraph<QueryEdge::EdgeData> >::_RoutingStep<false>(boost::thread_specific_ptr<BinaryHeap<unsigned int, unsigned int, int, _HeapData, UnorderedMapStorage<unsigned int, int> > >&, boost::thread_specific_ptr<BinaryHeap<unsigned int, unsigned int, int, _HeapData, UnorderedMapStorage<unsigned int, int> > >&, unsigned int*, int*, int) const (in osrm-routed) + 476 [0x104eaaf7a]
Total number in stack (recursive counted multiple, when >=5):
Sort by top of stack, same collapsed (when >= 5):
__psynch_cvwait (in libsystem_kernel.dylib) 883
__sigwait (in libsystem_kernel.dylib) 883
void SearchEngine<QueryEdge::EdgeData, StaticGraph<QueryEdge::EdgeData> >::_RoutingStep<false>(boost::thread_specific_ptr<BinaryHeap<unsigned int, unsigned int, int, _HeapData, UnorderedMapStorage<unsigned int, int> > >&, boost::thread_specific_ptr<BinaryHeap<unsigned int, unsigned int, int, _HeapData, UnorderedMapStorage<unsigned int, int> > >&, unsigned int*, int*, int) const (in osrm-routed) 883
Binary Images:
0x104e83000 - 0x104ed0ff7 +osrm-routed (??? - ???) <8093F4EE-B025-30A8-B11F-034726CB2096> /Users/emil/code/Project-OSRM/osrm-routed
0x104f1c000 - 0x104f2dff7 +libboost_thread-mt.dylib (??? - ???) <3588FE08-8116-3A38-A4BF-78C5FDF00E2F> /usr/local/lib/libboost_thread-mt.dylib
0x104f52000 - 0x104ffcfef +libboost_regex-mt.dylib (??? - ???) <CD34D843-81E9-31E9-A1F6-984BF732D805> /usr/local/lib/libboost_regex-mt.dylib
0x1050b0000 - 0x1050b4fff +libboost_system-mt.dylib (??? - ???) <A9B0D28D-9217-3E1D-BC09-34A5F9F96345> /usr/local/lib/libboost_system-mt.dylib
0x1050be000 - 0x1050ddfff +libpng15.15.dylib (20.0.0 - compatibility 20.0.0) <48C87023-FB13-393C-8FD4-DE4F1803ECA3> /usr/X11/lib/libpng15.15.dylib
0x1050e8000 - 0x1050effff +libzip.1.dylib (2.0.0 - compatibility 2.0.0) <E72C8F09-95EB-382E-971F-1A96451382C9> /usr/local/lib/libzip.1.dylib
0x1050f3000 - 0x1051b2ff7 +libprotobuf.7.dylib (8.0.0 - compatibility 8.0.0) <23710BC7-5377-3265-8FDE-0A5518CE0645> /usr/local/lib/libprotobuf.7.dylib
0x7fff64a83000 - 0x7fff64ab7baf dyld (195.6 - ???) <0CD1B35B-A28F-32DA-B72E-452EAD609613> /usr/lib/dyld
0x7fff84fce000 - 0x7fff84fd4ff7 libunwind.dylib (30.0.0 - compatibility 1.0.0) <1E9C6C8C-CBE8-3F4B-A5B5-E03E3AB53231> /usr/lib/system/libunwind.dylib
0x7fff85547000 - 0x7fff8554ffff libsystem_dnssd.dylib (??? - ???) <7749128E-D0C5-3832-861C-BC9913F774FA> /usr/lib/system/libsystem_dnssd.dylib
0x7fff8562a000 - 0x7fff85657fe7 libSystem.B.dylib (159.1.0 - compatibility 1.0.0) <7BEBB139-50BB-3112-947A-F4AA168F991C> /usr/lib/libSystem.B.dylib
0x7fff868f5000 - 0x7fff869d2fef libsystem_c.dylib (763.12.0 - compatibility 1.0.0) <FF69F06E-0904-3C08-A5EF-536FAFFFDC22> /usr/lib/system/libsystem_c.dylib
0x7fff8794e000 - 0x7fff87957ff7 libsystem_notify.dylib (80.1.0 - compatibility 1.0.0) <A4D651E3-D1C6-3934-AD49-7A104FD14596> /usr/lib/system/libsystem_notify.dylib
0x7fff87d2f000 - 0x7fff87d4cfff libxpc.dylib (77.18.0 - compatibility 1.0.0) <26C05F31-E809-3B47-AF42-1460971E3AC3> /usr/lib/system/libxpc.dylib
0x7fff88506000 - 0x7fff8850bfff libcache.dylib (47.0.0 - compatibility 1.0.0) <B7757E2E-5A7D-362E-AB71-785FE79E1527> /usr/lib/system/libcache.dylib
0x7fff88973000 - 0x7fff88974ff7 libsystem_sandbox.dylib (??? - ???) <5087ADAD-D34D-3844-9D04-AFF93CED3D92> /usr/lib/system/libsystem_sandbox.dylib
0x7fff88976000 - 0x7fff8897bff7 libsystem_network.dylib (??? - ???) <5DE7024E-1D2D-34A2-80F4-08326331A75B> /usr/lib/system/libsystem_network.dylib
0x7fff89926000 - 0x7fff8992afff libmathCommon.A.dylib (2026.0.0 - compatibility 1.0.0) <FF83AFF7-42B2-306E-90AF-D539C51A4542> /usr/lib/system/libmathCommon.A.dylib
0x7fff89ccc000 - 0x7fff89cccfff libkeymgr.dylib (23.0.0 - compatibility 1.0.0) <61EFED6A-A407-301E-B454-CD18314F0075> /usr/lib/system/libkeymgr.dylib
0x7fff8a154000 - 0x7fff8a174fff libsystem_kernel.dylib (1699.22.73 - compatibility 1.0.0) <69F2F501-72D8-3B3B-8357-F4418B3E1348> /usr/lib/system/libsystem_kernel.dylib
0x7fff8a9d6000 - 0x7fff8aa18ff7 libcommonCrypto.dylib (55010.0.0 - compatibility 1.0.0) <A5B9778E-11C3-3F61-B740-1F2114E967FB> /usr/lib/system/libcommonCrypto.dylib
0x7fff8aa83000 - 0x7fff8aa8dff7 liblaunch.dylib (392.18.0 - compatibility 1.0.0) <39EF04F2-7F0C-3435-B785-BF283727FFBD> /usr/lib/system/liblaunch.dylib
0x7fff8ad59000 - 0x7fff8ad5bfff libquarantine.dylib (36.2.0 - compatibility 1.0.0) <48656562-FF20-3B55-9F93-407ACA7341C0> /usr/lib/system/libquarantine.dylib
0x7fff8adba000 - 0x7fff8adc5ff7 libc++abi.dylib (14.0.0 - compatibility 1.0.0) <8FF3D766-D678-36F6-84AC-423C878E6D14> /usr/lib/libc++abi.dylib
0x7fff8b1fe000 - 0x7fff8b1ffff7 libremovefile.dylib (21.1.0 - compatibility 1.0.0) <739E6C83-AA52-3C6C-A680-B37FE2888A04> /usr/lib/system/libremovefile.dylib
0x7fff8b339000 - 0x7fff8b33aff7 libsystem_blocks.dylib (53.0.0 - compatibility 1.0.0) <8BCA214A-8992-34B2-A8B9-B74DEACA1869> /usr/lib/system/libsystem_blocks.dylib
0x7fff8b721000 - 0x7fff8b725fff libdyld.dylib (195.5.0 - compatibility 1.0.0) <F1903B7A-D3FF-3390-909A-B24E09BAD1A5> /usr/lib/system/libdyld.dylib
0x7fff8b7a8000 - 0x7fff8b7e3fff libsystem_info.dylib (??? - ???) <35F90252-2AE1-32C5-8D34-782C614D9639> /usr/lib/system/libsystem_info.dylib
0x7fff8c5ae000 - 0x7fff8c7b0fff libicucore.A.dylib (46.1.0 - compatibility 1.0.0) <38CD6ED3-C8E4-3CCD-89AC-9C3198803101> /usr/lib/libicucore.A.dylib
0x7fff8ca09000 - 0x7fff8ca1bff7 libz.1.dylib (1.2.5 - compatibility 1.0.0) <30CBEF15-4978-3DED-8629-7109880A19D4> /usr/lib/libz.1.dylib
0x7fff8cb5a000 - 0x7fff8cb60fff libmacho.dylib (800.0.0 - compatibility 1.0.0) <D86F63EC-D2BD-32E0-8955-08B5EAFAD2CC> /usr/lib/system/libmacho.dylib
0x7fff8cbb6000 - 0x7fff8cbc3ff7 libbz2.1.0.dylib (1.0.5 - compatibility 1.0.0) <8EDE3492-D916-37B2-A066-3E0F054411FD> /usr/lib/libbz2.1.0.dylib
0x7fff8e9fe000 - 0x7fff8e9fffff libdnsinfo.dylib (395.6.0 - compatibility 1.0.0) <718A135F-6349-354A-85D5-430B128EFD57> /usr/lib/system/libdnsinfo.dylib
0x7fff90498000 - 0x7fff9049dfff libcompiler_rt.dylib (6.0.0 - compatibility 1.0.0) <98ECD5F6-E85C-32A5-98CD-8911230CB66A> /usr/lib/system/libcompiler_rt.dylib
0x7fff90ae0000 - 0x7fff90be2ff7 libxml2.2.dylib (10.3.0 - compatibility 10.0.0) <D46F371D-6422-31B7-BCE0-D80713069E0E> /usr/lib/libxml2.2.dylib
0x7fff9159f000 - 0x7fff91612fff libstdc++.6.dylib (52.0.0 - compatibility 7.0.0) <6BDD43E4-A4B1-379E-9ED5-8C713653DFF2> /usr/lib/libstdc++.6.dylib
0x7fff91e1c000 - 0x7fff91e1dfff libunc.dylib (24.0.0 - compatibility 1.0.0) <C67B3B14-866C-314F-87FF-8025BEC2CAAC> /usr/lib/system/libunc.dylib
0x7fff91e1e000 - 0x7fff91e25fff libcopyfile.dylib (85.1.0 - compatibility 1.0.0) <172B1985-F24A-34E9-8D8B-A2403C9A0399> /usr/lib/system/libcopyfile.dylib
0x7fff91e52000 - 0x7fff91e60fff libdispatch.dylib (187.7.0 - compatibility 1.0.0) <712AAEAC-AD90-37F7-B71F-293FF8AE8723> /usr/lib/system/libdispatch.dylib
Sample analysis of process 69369 written to file /dev/stdout
hope this helps.