On Fri, Jun 26, 2015 at 07:31:39PM +0200, Florian Lohoff wrote:
> Hi,
> 
> i am regularly (every 4 hours or so) generating a new germany file with 
> osmosis from planet diff (updating + cutting) and then convert it
> with the default car profile.
> 
> Now i switched from 0.3.9 to git current and
> osrm-extract now hangs, or takes infinite time.
> 
> For testing i used a germany file from download.geofabrik.de which 
> worked. Convert took 663.46s.
> 
> Now i used my file again and it is running for >2 hours at the same
> file size.

> [extractor] Sorting edges by renumbered start ... ok, after 16.5565s
> 

I found the live-lock of the osrm-extract - Its caused by commit


commit 2777d53a12ca6753880f1dc025d8a7cc34377bcb
Author: Patrick Niklaus <patrick.nikl...@student.kit.edu>
Date:   Sun May 24 17:25:38 2015 +0200

    Direct edges in contractor correctly and add better graph validation.


[...]
@@ -303,13 +308,18 @@ void ExtractionContainers::PrepareEdges()
     std::cout << "ok, after " << TIMER_SEC(sort_edges_by_renumbered_start) << 
"s" << std::endl;
 
     BOOST_ASSERT(all_edges_list.size() > 0);
-    for (unsigned i = 1; i < all_edges_list.size();)
+    for (unsigned i = 0; i < all_edges_list.size();)
     {
         // only invalid edges left
         if (all_edges_list[i].result.source == SPECIAL_NODEID)
         {
             break;
         }
+        // skip invalid edges
+        if (all_edges_list[i].result.target == SPECIAL_NODEID)
+        {
+            continue;
+        }


The later continue can lead to be stuck in this for loop as "i" does not
get incremented.

https://github.com/Project-OSRM/osrm-backend/issues/1553

Flo
-- 
Florian Lohoff                                                 f...@zz.de
     We need to self-defense - GnuPG/PGP enable your email today!

Attachment: signature.asc
Description: Digital signature

_______________________________________________
OSRM-talk mailing list
OSRM-talk@openstreetmap.org
https://lists.openstreetmap.org/listinfo/osrm-talk

Reply via email to