Bug 1594265 - [UPGRADES] undercloud upgrade succeeds but `Unexpected API Error. Table 'nova_cell0.instances' doesn't exist` seen in n-api.log
Summary: [UPGRADES] undercloud upgrade succeeds but `Unexpected API Error. Table 'nova...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: instack-undercloud
Version: 11.0 (Ocata)
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: async
: 11.0 (Ocata)
Assignee: Rajesh Tailor
QA Contact: Archit Modi
URL:
Whiteboard:
: 1594262 1615125 (view as bug list)
Depends On:
Blocks: 1541051 1541053 1541054 1541056 1595363
TreeView+ depends on / blocked
 
Reported: 2018-06-22 13:20 UTC by Yurii Prokulevych
Modified: 2019-09-09 14:34 UTC (History)
26 users (show)

Fixed In Version: instack-undercloud-6.1.6-3.el7ost
Doc Type: Bug Fix
Doc Text:
This update corrects the ordering of the nova and nova api database schema updates during an OSP10 to OSP11 upgrade of the undercloud. Prior to this update, updates were not performed in the correct order. As a result, the nova services became unavailable and errors were logged until the next stage of the undercloud upgrade (to OSP12) resolved the issue.
Clone Of:
: 1595363 (view as bug list)
Environment:
Last Closed: 2018-10-15 20:50:27 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Launchpad 1778788 0 None None None 2018-06-26 20:17:31 UTC
OpenStack gerrit 578207 0 None MERGED Fix regression in undercloud upgrade cell_v2 setup 2021-01-08 17:16:05 UTC
Red Hat Product Errata RHBA-2018:2919 0 None None None 2018-10-15 20:50:56 UTC

Description Yurii Prokulevych 2018-06-22 13:20:55 UTC
Description of problem:
-----------------------
Upgrade of compute node failed:

 upgrade-non-controller.sh --upgrade compute-2

Fri Jun 22 01:37:28 EDT 2018 upgrade-non-controller.sh Logging to upgrade-non-controller.sh-compute-2
Unexpected API Error. Please report this at http://bugs.launchpad.net/nova/ and attach the Nova API log if possible.
<class 'sqlalchemy.exc.ProgrammingError'> (HTTP 500) (Request-ID: req-5a93317b-4b67-45d9-b940-4545b50b818d)

From nova-api.log
=================
2018-06-22 01:37:29.868 3362 ERROR nova.api.openstack.extensions ProgrammingError: (pymysql.err.ProgrammingError) (1146, u"Table 'nova_cell0.instances' doesn't exist") [SQL: u'SELECT anon_1.instances_created_at AS anon_1_instances_created_at, anon_1.instances_updated_at AS anon_1_instances_updated_at, anon_1.instances_deleted_at AS anon_1_instances_deleted_at, anon_1.instances_deleted AS anon_1_instances_deleted, anon_1.instances_id AS anon_1_instances_id, anon_1.instances_user_id AS anon_1_instances_user_id, anon_1.instances_project_id AS anon_1_instances_project_id, anon_1.instances_image_ref AS anon_1_instances_image_ref, anon_1.instances_kernel_id AS anon_1_instances_kernel_id, anon_1.instances_ramdisk_id AS anon_1_instances_ramdisk_id, anon_1.instances_hostname AS anon_1_instances_hostname, anon_1.instances_launch_index AS anon_1_instances_launch_index, anon_1.instances_key_name AS anon_1_instances_key_name, anon_1.instances_key_data AS anon_1_instances_key_data, anon_1.instances_power_state AS anon_1_instances_power_state, anon_1.instances_vm_state AS anon_1_instances_vm_state, anon_1.instances_task_state AS anon_1_instances_task_state, anon_1.instances_memory_mb AS anon_1_instances_memory_mb, anon_1.instances_vcpus AS anon_1_instances_vcpus, anon_1.instances_root_gb AS anon_1_instances_root_gb, anon_1.instances_ephemeral_gb AS anon_1_instances_ephemeral_gb, anon_1.instances_ephemeral_key_uuid AS anon_1_instances_ephemeral_key_uuid, anon_1.instances_host AS anon_1_instances_host, anon_1.instances_node AS anon_1_instances_node, anon_1.instances_instance_type_id AS anon_1_instances_instance_type_id, anon_1.instances_user_data AS anon_1_instances_user_data, anon_1.instances_reservation_id AS anon_1_instances_reservation_id, anon_1.instances_launched_at AS anon_1_instances_launched_at, anon_1.instances_terminated_at AS anon_1_instances_terminated_at, anon_1.instances_availability_zone AS anon_1_instances_availability_zone, anon_1.instances_display_name AS anon_1_instances_display_name, anon_1.instances_display_description AS anon_1_instances_display_description, anon_1.instances_launched_on AS anon_1_instances_launched_on, anon_1.instances_locked AS anon_1_instances_locked, anon_1.instances_locked_by AS anon_1_instances_locked_by, anon_1.instances_os_type AS anon_1_instances_os_type, anon_1.instances_architecture AS anon_1_instances_architecture, anon_1.instances_vm_mode AS anon_1_instances_vm_mode, anon_1.instances_uuid AS anon_1_instances_uuid, anon_1.instances_root_device_name AS anon_1_instances_root_device_name, anon_1.instances_default_ephemeral_device AS anon_1_instances_default_ephemeral_device, anon_1.instances_default_swap_device AS anon_1_instances_default_swap_device, anon_1.instances_config_drive AS anon_1_instances_config_drive, anon_1.instances_access_ip_v4 AS anon_1_instances_access_ip_v4, anon_1.instances_access_ip_v6 AS anon_1_instances_access_ip_v6, anon_1.instances_auto_disk_config AS anon_1_instances_auto_disk_config, anon_1.instances_progress AS anon_1_instances_progress, anon_1.instances_shutdown_terminate AS anon_1_instances_shutdown_terminate, anon_1.instances_disable_terminate AS anon_1_instances_disable_terminate, anon_1.instances_cell_name AS anon_1_instances_cell_name, anon_1.instances_cleaned AS anon_1_instances_cleaned, instance_info_caches_1.created_at AS instance_info_caches_1_created_at, instance_info_caches_1.updated_at AS instance_info_caches_1_updated_at, instance_info_caches_1.deleted_at AS instance_info_caches_1_deleted_at, instance_info_caches_1.deleted AS instance_info_caches_1_deleted, instance_info_caches_1.id AS instance_info_caches_1_id, instance_info_caches_1.network_info AS instance_info_caches_1_network_info, instance_info_caches_1.instance_uuid AS instance_info_caches_1_instance_uuid, security_groups_1.created_at AS security_groups_1_created_at, security_groups_1.updated_at AS security_groups_1_updated_at, security_groups_1.deleted_at AS security_groups_1_deleted_at, security_groups_1.deleted AS security_groups_1_deleted, security_groups_1.id AS security_groups_1_id, security_groups_1.name AS security_groups_1_name, security_groups_1.description AS security_groups_1_description, security_groups_1.user_id AS security_groups_1_user_id, security_groups_1.project_id AS security_groups_1_project_id, instance_extra_1.flavor AS instance_extra_1_flavor, instance_extra_1.created_at AS instance_extra_1_created_at, instance_extra_1.updated_at AS instance_extra_1_updated_at, instance_extra_1.deleted_at AS instance_extra_1_deleted_at, instance_extra_1.deleted AS instance_extra_1_deleted, instance_extra_1.id AS instance_extra_1_id, instance_extra_1.instance_uuid AS instance_extra_1_instance_uuid, services_1.created_at AS services_1_created_at, services_1.updated_at AS services_1_updated_at, services_1.deleted_at AS services_1_deleted_at, services_1.deleted AS services_1_deleted, services_1.id AS services_1_id, services_1.host AS services_1_host, services_1.`binary` AS services_1_binary, services_1.topic AS services_1_topic, services_1.report_count AS services_1_report_count, services_1.disabled AS services_1_disabled, services_1.disabled_reason AS services_1_disabled_reason, services_1.last_seen_up AS services_1_last_seen_up, services_1.forced_down AS services_1_forced_down, services_1.version AS services_1_version \nFROM (SELECT instances.created_at AS instances_created_at, instances.updated_at AS instances_updated_at, instances.deleted_at AS instances_deleted_at, instances.deleted AS instances_deleted, instances.id AS instances_id, instances.user_id AS instances_user_id, instances.project_id AS instances_project_id, instances.image_ref AS instances_image_ref, instances.kernel_id AS instances_kernel_id, instances.ramdisk_id AS instances_ramdisk_id, instances.hostname AS instances_hostname, instances.launch_index AS instances_launch_index, instances.key_name AS instances_key_name, instances.key_data AS instances_key_data, instances.power_state AS instances_power_state, instances.vm_state AS instances_vm_state, instances.task_state AS instances_task_state, instances.memory_mb AS instances_memory_mb, instances.vcpus AS instances_vcpus, instances.root_gb AS instances_root_gb, instances.ephemeral_gb AS instances_ephemeral_gb, instances.ephemeral_key_uuid AS instances_ephemeral_key_uuid, instances.host AS instances_host, instances.node AS instances_node, instances.instance_type_id AS instances_instance_type_id, instances.user_data AS instances_user_data, instances.reservation_id AS instances_reservation_id, instances.launched_at AS instances_launched_at, instances.terminated_at AS instances_terminated_at, instances.availability_zone AS instances_availability_zone, instances.display_name AS instances_display_name, instances.display_description AS instances_display_description, instances.launched_on AS instances_launched_on, instances.locked AS instances_locked, instances.locked_by AS instances_locked_by, instances.os_type AS instances_os_type, instances.architecture AS instances_architecture, instances.vm_mode AS instances_vm_mode, instances.uuid AS instances_uuid, instances.root_device_name AS instances_root_device_name, instances.default_ephemeral_device AS instances_default_ephemeral_device, instances.default_swap_device AS instances_default_swap_device, instances.config_drive AS instances_config_drive, instances.access_ip_v4 AS instances_access_ip_v4, instances.access_ip_v6 AS instances_access_ip_v6, instances.auto_disk_config AS instances_auto_disk_config, instances.progress AS instances_progress, instances.shutdown_terminate AS instances_shutdown_terminate, instances.disable_terminate AS instances_disable_terminate, instances.cell_name AS instances_cell_name, instances.cleaned AS instances_cleaned \nFROM instances \nWHERE instances.deleted = %(deleted_1)s AND (instances.vm_state != %(vm_state_1)s OR instances.vm_state IS NULL) AND instances.project_id = %(project_id_1)s ORDER BY instances.created_at DESC, instances.id DESC \n LIMIT %(param_1)s) AS anon_1 LEFT OUTER JOIN instance_info_caches AS instance_info_caches_1 ON instance_info_caches_1.instance_uuid = anon_1.instances_uuid LEFT OUTER JOIN (security_group_instance_association AS security_group_instance_association_1 INNER JOIN security_groups AS security_groups_1 ON security_groups_1.id = security_group_instance_association_1.security_group_id AND security_group_instance_association_1.deleted = %(deleted_2)s AND security_groups_1.deleted = %(deleted_3)s) ON security_group_instance_association_1.instance_uuid = anon_1.instances_uuid AND anon_1.instances_deleted = %(deleted_4)s LEFT OUTER JOIN instance_extra AS instance_extra_1 ON instance_extra_1.instance_uuid = anon_1.instances_uuid LEFT OUTER JOIN services AS services_1 ON services_1.host = anon_1.instances_host AND services_1.`binary` = %(binary_1)s AND anon_1.instances_deleted = %(deleted_5)s ORDER BY anon_1.instances_created_at DESC, anon_1.instances_id DESC'] [parameters: {u'binary_1': 'nova-compute', u'param_1': 1000, u'deleted_5': 0, u'deleted_4': 0, u'deleted_3': 0, u'deleted_2': 0, u'deleted_1': 0, u'vm_state_1': 'soft-delete', u'project_id_1': u'5d76559fc7a24c0dbbf94bb46c49abd8'}]
2018-06-22 01:37:29.868 3362 ERROR nova.api.openstack.extensions
2018-06-22 01:37:29.870 3362 INFO nova.api.openstack.wsgi [req-5a93317b-4b67-45d9-b940-4545b50b818d 0275792e69e54562acc8cbd38d8ad2e1 5d76559fc7a24c0dbbf94bb46c49abd8 - default default] HTTP exception thrown: Unexpected API Error. Please report this at http://bugs.launchpad.net/nova/ and attach the Nova API log if possible

Version-Release number of selected component (if applicable):
-------------------------------------------------------------
openstack-nova-common-15.1.0-3.el7ost.noarch
openstack-nova-conductor-15.1.0-3.el7ost.noarch
openstack-nova-scheduler-15.1.0-3.el7ost.noarch
openstack-nova-cert-15.1.0-3.el7ost.noarch
openstack-nova-compute-15.1.0-3.el7ost.noarch
openstack-nova-api-15.1.0-3.el7ost.noarch
openstack-nova-placement-api-15.1.0-3.el7ost.noarch

openstack-tripleo-heat-templates-6.2.12-2.el7ost.noarch

Steps to Reproduce:
-------------------
1. Perform RHOS-10 to RHOS-11 upgrade according doc

Comment 6 Dan Macpherson 2018-06-26 18:06:59 UTC
Cloning this bug for the OSP13 release notes.

Comment 7 Carlos Camacho 2018-07-02 09:11:51 UTC
*** Bug 1594262 has been marked as a duplicate of this bug. ***

Comment 8 radoslaw.smigielski@alcatel-lucent.com 2018-07-11 10:38:33 UTC
I am seeing the same error but in my case this happens on UC upgrade N->O after I execute: openstack undercloud upgrade

Comment 9 Ollie Walsh 2018-07-11 10:55:55 UTC
(In reply to radoslaw.smigielski from comment #8)
> I am seeing the same error but in my case this happens on UC upgrade N->O
> after I execute: openstack undercloud upgrade

Yes, it's the same issue. The description doesn't make it clear that the nova-api logs are from the UC.

Fixed upstream, see https://bugs.launchpad.net/tripleo/+bug/1778788.

Comment 10 Ollie Walsh 2018-08-29 08:55:49 UTC
*** Bug 1615125 has been marked as a duplicate of this bug. ***

Comment 22 errata-xmlrpc 2018-10-15 20:50:27 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2018:2919


Note You need to log in before you can comment on or make changes to this bug.