]> git.openstreetmap.org Git - nominatim.git/blobdiff - src/nominatim_db/clicmd/add_data.py
add-data: warn and exit if database is frozen
[nominatim.git] / src / nominatim_db / clicmd / add_data.py
index a690435c52ccf1ff8b51f9fc30d3b2e41ca0cb5a..e2058b74099e4ad69a26945341c6eb35815eeded 100644 (file)
@@ -15,6 +15,8 @@ import asyncio
 import psutil
 
 from .args import NominatimArgs
 import psutil
 
 from .args import NominatimArgs
+from ..db.connection import connect
+from ..tools.freeze import is_frozen
 
 # Do not repeat documentation of subcommand classes.
 # pylint: disable=C0111
 
 # Do not repeat documentation of subcommand classes.
 # pylint: disable=C0111
@@ -36,7 +38,7 @@ class UpdateAddData:
     The command can also be used to add external non-OSM data to the
     database. At the moment the only supported format is TIGER housenumber
     data. See the online documentation at
     The command can also be used to add external non-OSM data to the
     database. At the moment the only supported format is TIGER housenumber
     data. See the online documentation at
-    https://nominatim.org/release-docs/latest/admin/Import/#installing-tiger-housenumber-data-for-the-us
+    https://nominatim.org/release-docs/latest/customize/Tiger/
     for more information.
     """
 
     for more information.
     """
 
@@ -67,6 +69,11 @@ class UpdateAddData:
     def run(self, args: NominatimArgs) -> int:
         from ..tools import add_osm_data
 
     def run(self, args: NominatimArgs) -> int:
         from ..tools import add_osm_data
 
+        with connect(args.config.get_libpq_dsn()) as conn:
+            if is_frozen(conn):
+                print('Database is marked frozen. New data can\'t be added.')
+                return 1
+
         if args.tiger_data:
             return asyncio.run(self._add_tiger_data(args))
 
         if args.tiger_data:
             return asyncio.run(self._add_tiger_data(args))