]> git.openstreetmap.org Git - nominatim.git/blobdiff - nominatim/indexer/indexer.py
move postcode normalization into tokenizer
[nominatim.git] / nominatim / indexer / indexer.py
index 2dd8220b1da16723b14a00b3b77301e1c8060815..d0c6ea0ca66c8c0927cbfb718e6cd7518bbe8238 100644 (file)
@@ -4,6 +4,8 @@ Main work horse for indexing (computing addresses) the database.
 import logging
 import select
 
+import psycopg2.extras
+
 from nominatim.indexer.progress import ProgressLogger
 from nominatim.indexer import runners
 from nominatim.db.async_connection import DBConnection
@@ -145,7 +147,7 @@ class Indexer:
 
             if maxrank == 30:
                 self._index(runners.RankRunner(0, analyzer))
-                self._index(runners.InterpolationRunner(), 20)
+                self._index(runners.InterpolationRunner(analyzer), 20)
                 self._index(runners.RankRunner(30, analyzer), 20)
             else:
                 self._index(runners.RankRunner(maxrank, analyzer))
@@ -176,6 +178,7 @@ class Indexer:
         LOG.warning("Starting %s (using batch size %s)", runner.name(), batch)
 
         with connect(self.dsn) as conn:
+            psycopg2.extras.register_hstore(conn)
             with conn.cursor() as cur:
                 total_tuples = cur.scalar(runner.sql_count_objects())
                 LOG.debug("Total number of rows: %i", total_tuples)
@@ -190,7 +193,7 @@ class Indexer:
 
                     with WorkerPool(self.dsn, self.num_threads) as pool:
                         while True:
-                            places = [p for p in cur.fetchmany(batch)]
+                            places = cur.fetchmany(batch)
                             if not places:
                                 break