mirror of
https://github.com/osm-search/Nominatim.git
synced 2024-11-22 12:06:27 +03:00
remove code that disables processing of forward dependencies
This commit is contained in:
parent
cd861345b7
commit
6f51c1ba33
@ -181,7 +181,6 @@ class NominatimArgs:
|
||||
osm2pgsql_style_path=self.config.config_dir,
|
||||
threads=self.threads or default_threads,
|
||||
dsn=self.config.get_libpq_dsn(),
|
||||
forward_dependencies=self.config.get_bool('UPDATE_FORWARD_DEPENDENCIES'),
|
||||
flatnode_file=str(self.config.get_path('FLATNODE_FILE') or ''),
|
||||
tablespaces=dict(slim_data=self.config.TABLESPACE_OSM_DATA,
|
||||
slim_index=self.config.TABLESPACE_OSM_INDEX,
|
||||
|
@ -136,9 +136,6 @@ def run_osm2pgsql(options: Mapping[str, Any]) -> None:
|
||||
if options['flatnode_file']:
|
||||
cmd.extend(('--flat-nodes', options['flatnode_file']))
|
||||
|
||||
if not options.get('forward_dependencies', False):
|
||||
cmd.extend(('--with-forward-dependencies', 'false'))
|
||||
|
||||
for key, param in (('slim_data', '--tablespace-slim-data'),
|
||||
('slim_index', '--tablespace-slim-index'),
|
||||
('main_data', '--tablespace-main-data'),
|
||||
|
@ -348,3 +348,29 @@ def split_pending_index(conn: Connection, **_: Any) -> None:
|
||||
WHERE class = 'boundary' and type = 'administrative'
|
||||
and indexed_status > 0""")
|
||||
cur.execute("DROP INDEX IF EXISTS idx_placex_pendingsector")
|
||||
|
||||
|
||||
@_migration(4, 2, 99, 0)
|
||||
def enable_forward_dependencies(conn: Connection, **_: Any) -> None:
|
||||
""" Create indexes for updates with forward dependency tracking (long-running).
|
||||
"""
|
||||
if conn.table_exists('planet_osm_ways'):
|
||||
with conn.cursor() as cur:
|
||||
cur.execute("""SELECT * FROM pg_indexes
|
||||
WHERE tablename = 'planet_osm_ways'
|
||||
and indexdef LIKE '%nodes%'""")
|
||||
if cur.rowcount == 0:
|
||||
cur.execute("""CREATE OR REPLACE FUNCTION public.planet_osm_index_bucket(bigint[])
|
||||
RETURNS bigint[]
|
||||
LANGUAGE sql IMMUTABLE
|
||||
AS $function$
|
||||
SELECT ARRAY(SELECT DISTINCT unnest($1) >> 5)
|
||||
$function$""")
|
||||
cur.execute("""CREATE INDEX planet_osm_ways_nodes_bucket_idx
|
||||
ON planet_osm_ways
|
||||
USING gin (planet_osm_index_bucket(nodes))
|
||||
WITH (fastupdate=off)""")
|
||||
cur.execute("""CREATE INDEX planet_osm_rels_parts_idx
|
||||
ON planet_osm_rels USING gin (parts)
|
||||
WITH (fastupdate=off)""")
|
||||
cur.execute("ANALYZE planet_osm_ways")
|
||||
|
@ -25,7 +25,7 @@ from typing import Optional, Tuple
|
||||
# patch level when cherry-picking the commit with the migration.
|
||||
#
|
||||
# Released versions always have a database patch level of 0.
|
||||
NOMINATIM_VERSION = (4, 2, 0, 0)
|
||||
NOMINATIM_VERSION = (4, 2, 99, 0)
|
||||
|
||||
POSTGRESQL_REQUIRED_VERSION = (9, 6)
|
||||
POSTGIS_REQUIRED_VERSION = (2, 2)
|
||||
|
@ -33,15 +33,6 @@ NOMINATIM_MAX_WORD_FREQUENCY=50000
|
||||
# If true, admin level changes on places with many contained children are blocked.
|
||||
NOMINATIM_LIMIT_REINDEXING=yes
|
||||
|
||||
# When set to 'yes' changes to OSM objects will be propagated to dependent
|
||||
# objects. This means that geometries of way/relations are updated when a
|
||||
# node on a way or a way in a relation changes.
|
||||
# EXPERT ONLY: Use with care. Enabling this option might lead to significantly
|
||||
# more load when updates are applied.
|
||||
# Do not enable this option on an existing database.
|
||||
# The default is to not propagate these changes.
|
||||
NOMINATIM_UPDATE_FORWARD_DEPENDENCIES=no
|
||||
|
||||
# Restrict search languages.
|
||||
# Normally Nominatim will include all language variants of name:XX
|
||||
# in the search index. Set this to a comma separated list of language
|
||||
|
Loading…
Reference in New Issue
Block a user