]> git.openstreetmap.org Git - nominatim.git/commitdiff
add time display for nominatim.py
authorSarah Hoffmann <lonvia@denofr.de>
Mon, 20 Jan 2020 22:17:52 +0000 (23:17 +0100)
committerSarah Hoffmann <lonvia@denofr.de>
Fri, 24 Jan 2020 21:06:30 +0000 (22:06 +0100)
nominatim/nominatim.py

index 75ddef2fc85cabdc423f5d82beb83e494820cc80..49e2716685860c0beec62845461e15bca42c5c25 100644 (file)
@@ -200,6 +200,9 @@ class Indexer(object):
         sector_sql = obj.sql_sector_places()
         index_sql = obj.sql_index_place()
         min_grouped_tuples = total_tuples - len(self.threads) * 1000
+
+        next_info = 100
+
         for r in cur:
             sector = r[0]
 
@@ -221,6 +224,16 @@ class Indexer(object):
                 thread.perform(index_sql, (place_id,))
                 done_tuples += 1
 
+                if done_tuples >= next_info:
+                    now = datetime.now()
+                    done_time = (now - rank_start_time).total_seconds()
+                    tuples_per_sec = done_tuples / done_time
+                    print("Done {} in {} @ {:.3f} per second - {} ETA (seconds): {:.2f}"
+                           .format(done_tuples, int(done_time),
+                                   tuples_per_sec, obj.name(),
+                                   (total_tuples - done_tuples)/tuples_per_sec))
+                    next_info += int(tuples_per_sec)
+
             pcur.close()
 
             if do_all:
@@ -234,7 +247,7 @@ class Indexer(object):
         rank_end_time = datetime.now()
         diff_seconds = (rank_end_time-rank_start_time).total_seconds()
 
-        log.info("Done {}/{} in {} @ {} per second - FINISHED {}\n".format(
+        log.info("Done {}/{} in {} @ {:.3f} per second - FINISHED {}\n".format(
                  done_tuples, total_tuples, int(diff_seconds),
                  done_tuples/diff_seconds, obj.name()))