Skip to content

Commit

Permalink
use autocommit when creating tables and indexes
Browse files Browse the repository at this point in the history
Might avoid some deadlock situations with autovacuum.
  • Loading branch information
lonvia committed Jan 9, 2025
1 parent f8337be commit c2cb672
Showing 1 changed file with 4 additions and 0 deletions.
4 changes: 4 additions & 0 deletions src/nominatim_db/clicmd/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -122,13 +122,16 @@ async def async_run(self, args: NominatimArgs) -> int:

LOG.warning('Post-process tables')
with connect(args.config.get_libpq_dsn()) as conn:
conn.autocommit = True
await database_import.create_search_indices(conn, args.config,
drop=args.no_updates,
threads=num_threads)
LOG.warning('Create search index for default country names.')
conn.autocommit = False
country_info.create_country_names(conn, tokenizer,
args.config.get_str_list('LANGUAGES'))
if args.no_updates:
conn.autocommit = True
freeze.drop_update_tables(conn)
tokenizer.finalize_import(args.config)

Expand Down Expand Up @@ -183,6 +186,7 @@ def _setup_tables(self, config: Configuration, reverse_only: bool) -> None:
from ..tools import database_import, refresh

with connect(config.get_libpq_dsn()) as conn:
conn.autocommit = True
LOG.warning('Create functions (1st pass)')
refresh.create_functions(conn, config, False, False)
LOG.warning('Create tables')
Expand Down

0 comments on commit c2cb672

Please sign in to comment.