mirror of
https://github.com/osm-search/Nominatim.git
synced 2026-02-14 18:37:58 +00:00
always run function update on migrations
This means that we can have migrations which require nothing but an update of the functions.
This commit is contained in:
@@ -46,7 +46,6 @@ def migrate(config: Configuration, paths: Any) -> int:
|
||||
db_version = _guess_version(conn)
|
||||
|
||||
|
||||
has_run_migration = False
|
||||
for version, func in _MIGRATION_FUNCTIONS:
|
||||
if db_version < version or \
|
||||
(db_version == (3, 5, 0, 99) and version == (3, 5, 0, 99)):
|
||||
@@ -55,13 +54,11 @@ def migrate(config: Configuration, paths: Any) -> int:
|
||||
kwargs = dict(conn=conn, config=config, paths=paths)
|
||||
func(**kwargs)
|
||||
conn.commit()
|
||||
has_run_migration = True
|
||||
|
||||
if has_run_migration:
|
||||
LOG.warning('Updating SQL functions.')
|
||||
refresh.create_functions(conn, config)
|
||||
tokenizer = tokenizer_factory.get_tokenizer_for_db(config)
|
||||
tokenizer.update_sql_functions(config)
|
||||
LOG.warning('Updating SQL functions.')
|
||||
refresh.create_functions(conn, config)
|
||||
tokenizer = tokenizer_factory.get_tokenizer_for_db(config)
|
||||
tokenizer.update_sql_functions(config)
|
||||
|
||||
properties.set_property(conn, 'database_version', str(NOMINATIM_VERSION))
|
||||
|
||||
|
||||
@@ -71,20 +71,6 @@ def test_already_at_version(def_config, property_table):
|
||||
assert migration.migrate(def_config, {}) == 0
|
||||
|
||||
|
||||
def test_no_migrations_necessary(def_config, temp_db_cursor, property_table,
|
||||
monkeypatch):
|
||||
oldversion = [x for x in nominatim.version.NOMINATIM_VERSION]
|
||||
oldversion[0] -= 1
|
||||
property_table.set('database_version',
|
||||
'{0[0]}.{0[1]}.{0[2]}-{0[3]}'.format(oldversion))
|
||||
|
||||
oldversion[0] = 0
|
||||
monkeypatch.setattr(migration, '_MIGRATION_FUNCTIONS',
|
||||
[(tuple(oldversion), lambda **attr: True)])
|
||||
|
||||
assert migration.migrate(def_config, {}) == 0
|
||||
|
||||
|
||||
def test_run_single_migration(def_config, temp_db_cursor, property_table,
|
||||
monkeypatch, postprocess_mock):
|
||||
oldversion = [x for x in nominatim.version.NOMINATIM_VERSION]
|
||||
|
||||
Reference in New Issue
Block a user