[Yahoo-eng-team] [Bug 1569937] [NEW] TypeError: Incorrect padding when setting metadata_encryption_key
Public bug reported: We are on liberty. We have show_multiple_locations set, to allow swift locations for images. But when setting metadata_encryption_key to a random 32 char string, glance throws an internal server error, e.g. on image-list: 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi [req-fad0e0cb-1094-40ee-a314-ac189c660329 ed12c3c9e4144827bc2b041da22c94b8 7f0b5f95e9f24cf3924e5aba39fddeca - - -] Caught error: Incorrect padding 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi Traceback (most recent call last): 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi File "/usr/lib/python2.7/site-packages/glance/common/wsgi.py", line 879, in __call__ 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi request, **action_args) 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi File "/usr/lib/python2.7/site-packages/glance/common/wsgi.py", line 907, in dispatch 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi return method(*args, **kwargs) 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi File "/usr/lib/python2.7/site-packages/glance/api/v2/images.py", line 116, in index 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi member_status=member_status) 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi File "/usr/lib/python2.7/site-packages/glance/api/authorization.py", line 113, in list 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi images = self.image_repo.list(*args, **kwargs) 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi File "/usr/lib/python2.7/site-packages/glance/domain/proxy.py", line 89, in list 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi items = self.base.list(*args, **kwargs) 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi File "/usr/lib/python2.7/site-packages/glance/api/policy.py", line 123, in list 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi return super(ImageRepoProxy, self).list(*args, **kwargs) 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi File "/usr/lib/python2.7/site-packages/glance/domain/proxy.py", line 89, in list 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi items = self.base.list(*args, **kwargs) 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi File "/usr/lib/python2.7/site-packages/glance/domain/proxy.py", line 89, in list 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi items = self.base.list(*args, **kwargs) 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi File "/usr/lib/python2.7/site-packages/glance/domain/proxy.py", line 89, in list 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi items = self.base.list(*args, **kwargs) 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi File "/usr/lib/python2.7/site-packages/glance/db/__init__.py", line 185, in list 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi image = self._format_image_from_db(db_image, db_image['tags']) 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi File "/usr/lib/python2.7/site-packages/glance/db/__init__.py", line 201, in _format_image_from_db 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi l['url'] = crypt.urlsafe_decrypt(key, l['url']) 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi File "/usr/lib/python2.7/site-packages/glance/common/crypt.py", line 74, in urlsafe_decrypt 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi ciphertext = base64.urlsafe_b64decode(six.binary_type(ciphertext)) 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi File "/usr/lib64/python2.7/base64.py", line 112, in urlsafe_b64decode 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi return b64decode(s, '-_') 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi File "/usr/lib64/python2.7/base64.py", line 76, in b64decode 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi raise TypeError(msg) 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi TypeError: Incorrect padding ** Affects: glance Importance: Undecided Status: New -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to Glance. https://bugs.launchpad.net/bugs/1569937 Title: TypeError: Incorrect padding when setting metadata_encryption_key Status in Glance: New Bug description: We are on liberty. We have show_multiple_locations set, to allow swift locations for images. But when setting metadata_encryption_key to a random 32 char string, glance throws an internal server error, e.g. on image-list: 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi [req-fad0e0cb-1094-40ee-a314-ac189c660329 ed12c3c9e4144827bc2b041da22c94b8 7f0b5f95e9f24cf3924e5aba39fddeca - - -] Caught error: Incorrect padding 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi Traceback (most recent call last): 2016-04-13 11:11:00.461 1592 ERROR glance.common.wsgi File "/usr/lib/python2.7/site-packages/glance/common/wsgi.py", line 879, in __call__
[Yahoo-eng-team] [Bug 1539444] [NEW] router-interface-add on external network brings up external gateway ip
Public bug reported: Having external provider/floating networks (router:external True), you normally attach them to you're router via: router-gateway-set. Which will add an ip address from the subnet allocation pool to the router namespace. But instead, when users do router-interface-add on that external network, the defined gateway_ip from the subnet is brought up in the namespace. Your floating network is instantly unavailable, because your networks gateway IP is running twice. The expected behavior for external networks, when (accidentally or because not known) using router-interface-add on them, is to behave like router-gateway-set, or at least to deny that operation and definitely not bring up the gateway_ip defined in the subnet. Reproduce: neutron net-create --router:external [...] neutron subnet-create --gateway [...] neutron router-interface-add ** Affects: neutron Importance: Undecided Status: New -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to neutron. https://bugs.launchpad.net/bugs/1539444 Title: router-interface-add on external network brings up external gateway ip Status in neutron: New Bug description: Having external provider/floating networks (router:external True), you normally attach them to you're router via: router-gateway-set. Which will add an ip address from the subnet allocation pool to the router namespace. But instead, when users do router-interface-add on that external network, the defined gateway_ip from the subnet is brought up in the namespace. Your floating network is instantly unavailable, because your networks gateway IP is running twice. The expected behavior for external networks, when (accidentally or because not known) using router-interface-add on them, is to behave like router-gateway-set, or at least to deny that operation and definitely not bring up the gateway_ip defined in the subnet. Reproduce: neutron net-create --router:external [...] neutron subnet-create --gateway [...] neutron router-interface-add To manage notifications about this bug go to: https://bugs.launchpad.net/neutron/+bug/1539444/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : yahoo-eng-team@lists.launchpad.net Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp
[Yahoo-eng-team] [Bug 1516671] [NEW] LiveMigration DBError: ProgrammingError: can't adapt type 'Instance'
Public bug reported: Postgres as Database + latest stable Kilo; When doing live migrate with attached volume (rally test boot_server_attach_created_volume_and_live_migrate): 8< ERROR oslo_db.sqlalchemy.exc_filters [req-76f003ad-8b12-4e85-902a-a52581fd5611 c2190adfee124fefb139254ce3df27dc 0b707847d6254b5b9e956e40ae16deca - - -] DBAPIError exception wrapped from (ProgrammingError) can't adapt type 'Instance' 'SELECT block_device_mapping.created_at AS block_device_mapping_created_at, block_device_mapping.updated_at AS block_device_mapping_updated_at, block_device_mapping.deleted_at AS block_device_mapping_deleted_at, block_device_mapping.deleted AS block_device_mapping_deleted, block_device_mapping.id AS block_device_mapping_id, block_device_mapping.instance_uuid AS block_device_mapping_instance_uuid, block_device_mapping.source_type AS block_device_mapping_source_type, block_device_mapping.destination_type AS block_device_mapping_destination_type, block_device_mapping.guest_format AS block_device_mapping_guest_format, block_device_mapping.device_type AS block_device_mapping_device_type, block_device_mapping.disk_bus AS block_device_mapping_disk_bus, block_dev ice_mapping.boot_index AS block_device_mapping_boot_index, block_device_mapping.device_name AS block_device_mapping_device_name, block_device_mapping.delete_on_termination AS block_device_mapping_delete_on_termination, block_device_mapping.snapshot_id AS block_device_mapping_snapshot_id, block_device_mapping.volume_id AS block_device_mapping_volume_id, block_device_mapping.volume_size AS block_device_mapping_volume_size, block_device_mapping.image_id AS block_device_mapping_image_id, block_device_mapping.no_device AS block_device_mapping_no_device, block_device_mapping.connection_info AS block_device_mapping_connection_info \nFROM block_device_mapping \nWHERE block_device_mapping.deleted = %(deleted_1)s AND block_device_mapping.volume_id = %(volume_id_1)s \n LIMIT %(param_1)s' {'param_1': 1, 'volume_id_1': [...] TRACE oslo_db.sqlalchemy.exc_filters Traceback (most recent call last): TRACE oslo_db.sqlalchemy.exc_filters File "/usr/lib64/python2.7/site-packages/sqlalchemy/engine/base.py", line 1063, in _execute_context TRACE oslo_db.sqlalchemy.exc_filters context) TRACE oslo_db.sqlalchemy.exc_filters File "/usr/lib64/python2.7/site-packages/sqlalchemy/engine/default.py", line 442, in do_execute TRACE oslo_db.sqlalchemy.exc_filters cursor.execute(statement, parameters) TRACE oslo_db.sqlalchemy.exc_filters ProgrammingError: can't adapt type 'Instance' >8 In nova-compute.log you find the corresponding error: -8< TRACE nova.virt.libvirt.driver [instance: 70d591fe-cdd8-46c2-bc7c-35ef733c2e1b] Traceback (most recent call last): TRACE nova.virt.libvirt.driver [instance: 70d591fe-cdd8-46c2-bc7c-35ef733c2e1b] File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py", line 5714, in _live_migration TRACE nova.virt.libvirt.driver [instance: 70d591fe-cdd8-46c2-bc7c-35ef733c2e1b] dom, finish_event) TRACE nova.virt.libvirt.driver [instance: 70d591fe-cdd8-46c2-bc7c-35ef733c2e1b] File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py", line 5651, in _live_migration_monitor TRACE nova.virt.libvirt.driver [instance: 70d591fe-cdd8-46c2-bc7c-35ef733c2e1b] migrate_data) TRACE nova.virt.libvirt.driver [instance: 70d591fe-cdd8-46c2-bc7c-35ef733c2e1b] File "/usr/lib/python2.7/site-packages/nova/exception.py", line 88, in wrapped TRACE nova.virt.libvirt.driver [instance: 70d591fe-cdd8-46c2-bc7c-35ef733c2e1b] payload) TRACE nova.virt.libvirt.driver [instance: 70d591fe-cdd8-46c2-bc7c-35ef733c2e1b] File "/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 85, in __exit__ TRACE nova.virt.libvirt.driver [instance: 70d591fe-cdd8-46c2-bc7c-35ef733c2e1b] six.reraise(self.type_, self.value, self.tb) TRACE nova.virt.libvirt.driver [instance: 70d591fe-cdd8-46c2-bc7c-35ef733c2e1b] File "/usr/lib/python2.7/site-packages/nova/exception.py", line 71, in wrapped TRACE nova.virt.libvirt.driver [instance: 70d591fe-cdd8-46c2-bc7c-35ef733c2e1b] return f(self, context, *args, **kw) TRACE nova.virt.libvirt.driver [instance: 70d591fe-cdd8-46c2-bc7c-35ef733c2e1b] File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 361, in decorated_function TRACE nova.virt.libvirt.driver [instance: 70d591fe-cdd8-46c2-bc7c-35ef733c2e1b] kwargs['instance'], e, sys.exc_info()) TRACE nova.virt.libvirt.driver [instance: 70d591fe-cdd8-46c2-bc7c-35ef733c2e1b] File "/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 85, in __exit__ TRACE nova.virt.libvirt.driver [instance: 70d591fe-cdd8-46c2-bc7c-35ef733c2e1b] six.reraise(self.type_, self.value, self.tb) TRACE nova.virt.libvirt.driver [instance: 70d591fe-cdd8-46c2-bc7c-35ef733c2e1b] File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 349, in
[Yahoo-eng-team] [Bug 1504033] [NEW] Insecure option missing in nova.conf section ironic
Public bug reported: For the ironic section in nova.conf the insecure option is not available. Mostly all other sections support that. Seen in stable Kilo. ** Affects: nova Importance: Undecided Assignee: Tom Patzig (tom-patzig) Status: In Progress ** Changed in: nova Assignee: (unassigned) => Tom Patzig (tom-patzig) ** Changed in: nova Status: New => In Progress -- 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/1504033 Title: Insecure option missing in nova.conf section ironic Status in OpenStack Compute (nova): In Progress Bug description: For the ironic section in nova.conf the insecure option is not available. Mostly all other sections support that. Seen in stable Kilo. To manage notifications about this bug go to: https://bugs.launchpad.net/nova/+bug/1504033/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : yahoo-eng-team@lists.launchpad.net Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp
[Yahoo-eng-team] [Bug 1428542] [NEW] Live Migration (block_migrate): Disk of instance is too large, with cinder LVM based volume
Public bug reported: When live migrating (block_migrate), an instance, cinder volumes based on LVM, that are attached via iscsi to the compute node, are included within the MigrationPreCheck disk-size calculation. Because the cinder iscsi volume is just attached to the migration target node, these devices need to be skipped. In the past only devices with type 'file' got included in that disk_size calculation; But with commit 5fa74bc0b2ab6fe5149a9b684b4beadb67877622 (Adds ephemeral storage encryption for LVM back-end images ), disks with type 'block' got included as well, which also includes iscsi devices. I experienced that with stable juno. I worked around that with this additional check: diff --git a/nova/virt/libvirt/driver.py b/nova/virt/libvirt/driver.py index 0809f09..566b2b2 100644 --- a/nova/virt/libvirt/driver.py +++ b/nova/virt/libvirt/driver.py @@ -6000,6 +6000,10 @@ class LibvirtDriver(driver.ComputeDriver): 'volume', {'path': path, 'target': target}) continue +if disk_type == 'block' and path.find('iqn.2010-10.org.openstack') 0: +LOG.debug('skipping disk because it looks like an iscsi volume', path) +continue + # get the real disk size or # raise a localized error if image is unavailable if disk_type == 'file': If this is the right place to exclude that disks, I can submit that little patch for review. Or you can point me to the right location for that and I'll give it a try. What do you think? ** Affects: nova Importance: Undecided Status: New -- 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/1428542 Title: Live Migration (block_migrate): Disk of instance is too large, with cinder LVM based volume Status in OpenStack Compute (Nova): New Bug description: When live migrating (block_migrate), an instance, cinder volumes based on LVM, that are attached via iscsi to the compute node, are included within the MigrationPreCheck disk-size calculation. Because the cinder iscsi volume is just attached to the migration target node, these devices need to be skipped. In the past only devices with type 'file' got included in that disk_size calculation; But with commit 5fa74bc0b2ab6fe5149a9b684b4beadb67877622 (Adds ephemeral storage encryption for LVM back-end images ), disks with type 'block' got included as well, which also includes iscsi devices. I experienced that with stable juno. I worked around that with this additional check: diff --git a/nova/virt/libvirt/driver.py b/nova/virt/libvirt/driver.py index 0809f09..566b2b2 100644 --- a/nova/virt/libvirt/driver.py +++ b/nova/virt/libvirt/driver.py @@ -6000,6 +6000,10 @@ class LibvirtDriver(driver.ComputeDriver): 'volume', {'path': path, 'target': target}) continue +if disk_type == 'block' and path.find('iqn.2010-10.org.openstack') 0: +LOG.debug('skipping disk because it looks like an iscsi volume', path) +continue + # get the real disk size or # raise a localized error if image is unavailable if disk_type == 'file': If this is the right place to exclude that disks, I can submit that little patch for review. Or you can point me to the right location for that and I'll give it a try. What do you think? To manage notifications about this bug go to: https://bugs.launchpad.net/nova/+bug/1428542/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : yahoo-eng-team@lists.launchpad.net Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp