Migrating the database fails when upgrading to Caracal:
$ neutron-db-manage upgrade --expand
INFO [alembic.runtime.migration] Context impl MySQLImpl.
INFO [alembic.runtime.migration] Will assume non-transactional DDL.
Running upgrade (expand) for neutron ...
INFO [alembic.runtime.migration] Context impl MySQLImpl.
INFO [alembic.runtime.migration] Will assume non-transactional DDL.
OK
INFO [alembic.runtime.migration] Context impl MySQLImpl.
INFO [alembic.runtime.migration] Will assume non-transactional DDL.
Traceback (most recent call last):
File "/usr/bin/neutron-db-manage", line 10, in <module>
sys.exit(main())
File "/usr/lib/python3/dist-packages/neutron/db/migration/cli.py", line 667, in main
return_val |= bool(CONF.command.func(config, CONF.command.name))
File "/usr/lib/python3/dist-packages/neutron/db/migration/cli.py", line 188, in do_upgrade
run_sanity_checks(config, revision)
File "/usr/lib/python3/dist-packages/neutron/db/migration/cli.py", line 650, in run_sanity_checks
script_dir.run_env()
File "/usr/lib/python3/dist-packages/alembic/script/base.py", line 583, in run_env
util.load_python_file(self.dir, "env.py")
File "/usr/lib/python3/dist-packages/alembic/util/pyfiles.py", line 95, in load_python_file
module = load_module_py(module_id, path)
File "/usr/lib/python3/dist-packages/alembic/util/pyfiles.py", line 113, in load_module_py
spec.loader.exec_module(module) # type: ignore
File "<frozen importlib._bootstrap_external>", line 883, in exec_module
File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
File "/usr/lib/python3/dist-packages/neutron_dynamic_routing/db/migration/alembic_migrations/env.py", line 88, in <module>
run_migrations_online()
File "/usr/lib/python3/dist-packages/neutron_dynamic_routing/db/migration/alembic_migrations/env.py", line 79, in run_migrations_online
context.run_migrations()
File "<string>", line 8, in run_migrations
File "/usr/lib/python3/dist-packages/alembic/runtime/environment.py", line 948, in run_migrations
self.get_context().run_migrations(**kw)
File "/usr/lib/python3/dist-packages/alembic/runtime/migration.py", line 615, in run_migrations
for step in self._migrations_fn(heads, self):
File "/usr/lib/python3/dist-packages/neutron/db/migration/cli.py", line 640, in check_sanity
for script in script_dir.revision_map.iterate_revisions(
File "/usr/lib/python3/dist-packages/alembic/script/revision.py", line 813, in iterate_revisions
revisions, heads = fn(
File "/usr/lib/python3/dist-packages/alembic/script/revision.py", line 1466, in _collect_upgrade_revisions
current_revisions = self.get_revisions(lower)
File "/usr/lib/python3/dist-packages/alembic/script/revision.py", line 543, in get_revisions
return sum([self.get_revisions(id_elem) for id_elem in id_], ())
File "/usr/lib/python3/dist-packages/alembic/script/revision.py", line 543, in <listcomp>
return sum([self.get_revisions(id_elem) for id_elem in id_], ())
File "/usr/lib/python3/dist-packages/alembic/script/revision.py", line 566, in get_revisions
return tuple(
File "/usr/lib/python3/dist-packages/alembic/script/revision.py", line 567, in <genexpr>
self._revision_for_ident(rev_id, branch_label)
File "/usr/lib/python3/dist-packages/alembic/script/revision.py", line 638, in _revision_for_ident
raise ResolutionError(
alembic.script.revision.ResolutionError: No such revision or branch 'f399fa0f5f25'
Currently, we're running 22.04.4 LTS with Canonical cloud archives for caracal.
$ apt-cache policy python3-neutron-dynamic-routing
python3-neutron-dynamic-routing:
Installed: 2:24.0.0-0ubuntu1
Candidate: 2:24.0.0-0ubuntu1
Version table:
*** 2:24.0.0-0ubuntu1 100
100 /var/lib/dpkg/status
2:24.0.0-0ubuntu1~cloud0 500
500 http://... jammy/openstack-caracal amd64 Packages
2:20.0.0-0ubuntu1 500
500 http://archive.ubuntu.com/ubuntu jammy/universe amd64 Packages
Compared to v23, in v24, all migration files are missing from the package:
> diff -r python3- neutron- dynamic- routing_ 23.0.0- 0ubuntu1~ cloud0 python3- neutron- dynamic- routing_ 24.0.0- 0ubuntu1 neutron- dynamic- routing_ 23.0.0- 0ubuntu1~ cloud0/ usr/lib/ python3/ dist-packages/ neutron_ dynamic_ routing/ db/migration/ alembic_ migrations: script.py.mako neutron- dynamic- routing_ 23.0.0- 0ubuntu1~ cloud0/ usr/lib/ python3/ dist-packages/ neutron_ dynamic_ routing/ db/migration/ alembic_ migrations: versions neutron- dynamic- routing_ 23.0.0- 0ubuntu1~ cloud0/ usr/lib/ python3/ dist-packages/ neutron_ dynamic_ routing/ db/migration: README
Only in python3-
Only in python3-
Only in python3-