The `get_minimum_version_all_cells" function currently checks cell0 too. This will fail on a cell conductor when using templated cell uris as it will attempt to connect to the wrong database server.
For example set cell0 db uri as follows:
[nova@cell1-controller-0 /]$ nova-manage cell_v2 update_cell --cell_uuid 00000000-0000-0000-0000-000000000000 --database_connection='{scheme}://{username}:{password}@{hostname}/?{query}' --transport-url='none:///'
[nova@cell1-controller-0 /]$ nova-manage cell_v2 list_cells
+---------+--------------------------------------+-----------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------+----------+
| Name | UUID | Transport URL | Database Connection | Disabled |
+---------+--------------------------------------+-----------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------+----------+
| cell0 | 00000000-0000-0000-0000-000000000000 | none:/ | mysql+pymysql://nova:****@cell1.internalapi.redhat.local/?read_default_file=/etc/my.cnf.d/tripleo.cnf&read_default_group=tripleo | False |
| cell1 | 9f8cc7bb-08f2-4658-a7e8-ece2b84c5e5c | rabbit://guest:****@cell1-controller-0.internalapi.redhat.local:5672/?ssl=1 | mysql+pymysql://nova:****@cell1.internalapi.redhat.local/nova?read_default_file=/etc/my.cnf.d/tripleo.cnf&read_default_group=tripleo | False |
| default | abb3a2d8-cdee-4e0e-a6c2-1cf3b9c098de | rabbit://guest:****@cell1-controller-0.internalapi.redhat.local:5672/?ssl=1 | mysql+pymysql://nova:****@cell1.internalapi.redhat.local/nova?read_default_file=/etc/my.cnf.d/tripleo.cnf&read_default_group=tripleo | False |
+---------+--------------------------------------+-----------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------+----------+
The resulting cell0 database uri is incorrect as it using the cell1 database hostname from the cell conductor nova.conf. This should be nothing more than a cosmetic issue since the cell conductor should not connect to cell0, however it currently does in the minimum version check.
Can be reproduced by running an upgrade check on a cell specific nova-conductor as this includes a min version check.
Fix proposed to branch: master /review. opendev. org/c/openstack /nova/+ /851440
Review: https:/