Enhanced the implementation of OSM views GeoTIFF import functionality

This commit is contained in:
Tareq Al-Ahdal
2022-07-24 19:04:23 +08:00
committed by Sarah Hoffmann
parent c85b74497b
commit ac467c7a2d
11 changed files with 69 additions and 61 deletions

View File

@@ -115,6 +115,7 @@ class NominatimArgs:
address_levels: bool
functions: bool
wiki_data: bool
osm_views: bool
importance: bool
website: bool
diffs: bool

View File

@@ -85,7 +85,7 @@ class UpdateRefresh:
help='Enable debug warning statements in functions')
def run(self, args: NominatimArgs) -> int: #pylint: disable=too-many-branches
def run(self, args: NominatimArgs) -> int: #pylint: disable=too-many-branches, too-many-statements
from ..tools import refresh, postcodes
from ..indexer.indexer import Indexer
@@ -132,15 +132,17 @@ class UpdateRefresh:
data_path) > 0:
LOG.fatal('FATAL: Wikipedia importance dump file not found')
return 1
if args.osm_views:
data_path = Path(args.config.OSM_VIEWS_DATA_PATH
or args.project_dir)
data_path = Path(args.project_dir)
LOG.warning('Import OSM views GeoTIFF data from %s', data_path)
if refresh.import_osm_views_geotiff(args.config.get_libpq_dsn(),
data_path) > 0:
LOG.fatal('FATAL: OSM views GeoTIFF file not found')
return 1
with connect(args.config.get_libpq_dsn()) as conn:
if refresh.import_osm_views_geotiff(conn, data_path) == 1:
LOG.fatal('FATAL: OSM views GeoTIFF file not found')
return 1
if refresh.import_osm_views_geotiff(conn, data_path) == 2:
LOG.fatal('FATAL: PostGIS version number is less than 3')
return 1
# Attention: importance MUST come after wiki data import.
if args.importance:

View File

@@ -105,14 +105,17 @@ class SetupAll:
if refresh.import_wikipedia_articles(args.config.get_libpq_dsn(),
data_path) > 0:
LOG.error('Wikipedia importance dump file not found. '
'Calculating importance values of locations will not use Wikipedia importance data.')
'Calculating importance values of locations will not \
use Wikipedia importance data.')
LOG.warning('Importing OSM views GeoTIFF data')
database_import.import_osm_views_geotiff()
data_path = Path(args.config.OSM_VIEWS_DATA_PATH or args.project_dir)
if refresh.import_osm_views_geotiff(args.config.get_libpq_dsn(),
data_path) > 0:
LOG.error('OSM views GeoTIFF file not found. '
data_path = Path(args.project_dir)
with connect(args.config.get_libpq_dsn()) as conn:
if refresh.import_osm_views_geotiff(conn, data_path) == 1:
LOG.error('OSM views GeoTIFF file not found. '
'Calculating importance values of locations will not use OSM views data.')
elif refresh.import_osm_views_geotiff(conn, data_path) == 2:
LOG.error('PostGIS version number is less than 3. '
'Calculating importance values of locations will not use OSM views data.')
if args.continue_at is None or args.continue_at == 'load-data':