X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/c7d80a2cc8cacb7dba95f023c2f480d25f7bf6b1..57598a048e9124b905572ed8dc4fa9465b5d38a6:/src/nominatim_db/tools/replication.py diff --git a/src/nominatim_db/tools/replication.py b/src/nominatim_db/tools/replication.py index eb031f39..e50eedee 100644 --- a/src/nominatim_db/tools/replication.py +++ b/src/nominatim_db/tools/replication.py @@ -18,7 +18,7 @@ import urllib.request as urlrequest from ..errors import UsageError from ..db import status -from ..db.connection import Connection, connect, server_version_tuple +from ..db.connection import Connection, connect from .exec_utils import run_osm2pgsql try: @@ -33,6 +33,7 @@ except ModuleNotFoundError as exc: LOG = logging.getLogger() + def init_replication(conn: Connection, base_url: str, socket_timeout: int = 60) -> None: """ Set up replication for the server at the given base URL. @@ -83,6 +84,7 @@ def check_for_updates(conn: Connection, base_url: str, LOG.warning("New data available (%i => %i).", seq, state.sequence) return 0 + class UpdateState(Enum): """ Possible states after an update has run. """ @@ -154,7 +156,7 @@ def run_osm2pgsql_updates(conn: Connection, options: MutableMapping[str, Any]) - # Consume updates with osm2pgsql. options['append'] = True - options['disable_jit'] = server_version_tuple(conn) >= (11, 0) + options['disable_jit'] = True run_osm2pgsql(options) # Handle deletions @@ -176,12 +178,12 @@ def _make_replication_server(url: str, timeout: int) -> ContextManager[Replicati """ Download a resource from the given URL and return a byte sequence of the content. """ - headers = {"User-Agent" : f"Nominatim (pyosmium/{pyo_version.pyosmium_release})"} + headers = {"User-Agent": f"Nominatim (pyosmium/{pyo_version.pyosmium_release})"} if self.session is not None: return self.session.get(url.get_full_url(), - headers=headers, timeout=timeout or None, - stream=True) + headers=headers, timeout=timeout or None, + stream=True) @contextmanager def _get_url_with_session() -> Iterator[requests.Response]: