Reviewed: https://review.opendev.org/c/openstack/nova/+/805663 Committed: https://opendev.org/openstack/nova/commit/6c5dd864c24bc8cec89dccbff68b63c3bc23ef70 Submitter: "Zuul (22348)" Branch: master
commit 6c5dd864c24bc8cec89dccbff68b63c3bc23ef70 Author: Stephen Finucane <[email protected]> Date: Mon Aug 23 17:42:08 2021 +0100 db: Handle parameters in DB strings As part of 'nova.db.migration', it is necessary to override the 'sqlalchemy.url' config option used by alembic. We were doing this but we weren't handling the fact that we could receive encoded URL strings. This causes issues for the ConfigParser instead used under the hood, as noted in the alembic docs [1]: value – the value. Note that this value is passed to ConfigParser.set, which supports variable interpolation using pyformat (e.g. %(some_value)s). A raw percent sign not part of an interpolation symbol must therefore be escaped, e.g. %%. The given value may refer to another value already in the file using the interpolation format. Resolve the issue by escaping % with %%. The engine.url is always encoded therefore this can be done unconditionally. [1] https://alembic.sqlalchemy.org/en/latest/api/config.html#alembic.config.Config.set_main_option Closes-Bug: #1940555 Change-Id: I74de55107a80af13df348f2bce49415b08028746 Signed-off-by: Stephen Finucane <[email protected]> Co-Authored-By: Sean Mooney <[email protected]> ** Changed in: nova Status: In Progress => Fix Released -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to OpenStack Compute (nova). https://bugs.launchpad.net/bugs/1940555 Title: Compute Component: Error: (pymysql.err.ProgrammingError) (1146, "Table 'nova_api.cell_mappings' doesn't exist") Status in OpenStack Compute (nova): Fix Released Status in tripleo: Triaged Bug description: https://logserver.rdoproject.org/openstack-component- compute/opendev.org/openstack/tripleo-ci/master/periodic-tripleo-ci- centos-8-standalone-compute- master/7dac4e0/logs/undercloud/var/log/extra/podman/containers/nova_db_sync/stdout.log.txt.gz Is [api_database]/connection set in nova.conf? Is the cell0 database connection URL correct? Error: (pymysql.err.ProgrammingError) (1146, "Table 'nova_api.cell_mappings' doesn't exist") [SQL: SELECT cell_mappings.created_at AS cell_mappings_created_at, cell_mappings.updated_at AS cell_mappings_updated_at, cell_mappings.id AS cell_mappings_id, cell_mappings.uuid AS cell_mappings_uuid, cell_mappings.name AS cell_mappings_name, cell_mappings.transport_url AS cell_mappings_transport_url, cell_mappings.database_connection AS cell_mappings_database_connection, cell_mappings.disabled AS cell_mappings_disabled FROM cell_mappings WHERE cell_mappings.uuid = %(uuid_1)s LIMIT %(param_1)s] [parameters: {'uuid_1': '00000000-0000-0000-0000-000000000000', 'param_1': 1}] (Background on this error at: http://sqlalche.me/e/14/f405) https://logserver.rdoproject.org/openstack-component-compute/opendev.org/openstack/tripleo-ci/master/periodic-tripleo-ci-centos-8-standalone-compute-master/7dac4e0/logs/undercloud/home/zuul/standalone_deploy.log.txt.gz + echo 'Running command: '\''/usr/bin/bootstrap_host_exec nova_conductor su nova -s /bin/bash -c '\''/usr/bin/nova-manage db sync '\'''\''' + exec /usr/bin/bootstrap_host_exec nova_conductor su nova -s /bin/bash -c ''\''/usr/bin/nova-manage' db sync \' 2021-08-19 08:17:33.982762 | fa163e06-c6d2-5dfd-0459-00000000197e | FATAL | Create containers managed by Podman for /var/lib/tripleo-config/container-startup-config/step_3 | standalone | error={"changed": false, "msg": "Failed containers: nova_api_db_sync, nova_api_map_cell0, nova_api_ensure_default_cell, nova_db_sync"} 2021-08-19 08:17:33.983320 | fa163e06-c6d2-5dfd-0459-00000000197e | TIMING | tripleo_container_manage : Create containers managed by Podman for /var/lib/tripleo-config/container-startup-config/step_3 | standalone | 0:19:23.159835 | 41.20s To manage notifications about this bug go to: https://bugs.launchpad.net/nova/+bug/1940555/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : [email protected] Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp

