yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #40769
[Bug 1513140] [NEW] block_device_mapping.connection_info is updated from None to 'null'
Public bug reported:
While debugging bug 1489581 we were tracking some BDM updates in the
cells API code:
http://logs.openstack.org/66/241366/1/check/gate-tempest-dsvm-
cells/1d7551e/logs/screen-n-cell-region.txt.gz#_2015-11-03_21_44_58_273
http://logs.openstack.org/66/241366/1/check/gate-tempest-dsvm-
cells/1d7551e/logs/screen-n-cell-region.txt.gz#_2015-11-03_21_44_58_332
Which is a diff off:
https://www.diffchecker.com/pqclw8j3
mriedem@ubuntu:~/git$ diff bdm1.txt bdm2.txt
1c1
< {u'guest_format': None, u'boot_index': 0, u'connection_info': None, u'snapshot_id': None, u'updated_at': u'2015-11-03T21:44:58.000000', u'image_id': None, u'device_type': None, u'volume_id': u'35909d21-81b8-4fda-82b6-d3d75be61238', u'deleted_at': None, u'instance_uuid': u'2c9cecc1-c3db-4057-81bd-98e488c45ac2', u'no_device': False, u'created_at': u'2015-11-03T21:44:57.000000', u'volume_size': 1, u'device_name': u'/dev/vda', u'disk_bus': None, u'deleted': False, u'source_type': u'volume', u'destination_type': u'volume', u'delete_on_termination': True}
---
> {u'guest_format': None, u'boot_index': 0, u'connection_info': u'null', u'snapshot_id': None, u'updated_at': u'2015-11-03T21:44:58.000000', u'image_id': None, u'device_type': u'disk', u'volume_id': u'35909d21-81b8-4fda-82b6-d3d75be61238', u'deleted_at': None, u'instance_uuid': u'2c9cecc1-c3db-4057-81bd-98e488c45ac2', u'no_device': False, u'created_at': u'2015-11-03T21:44:57.000000', u'volume_size': 1, u'device_name': u'/dev/vda', u'disk_bus': u'virtio', u'deleted': False, u'source_type': u'volume', u'destination_type': u'volume', u'delete_on_termination': True}
Note that the connection_info is updated from None to 'null' because of
this code:
https://github.com/openstack/nova/blob/master/nova/virt/block_device.py#L357
connection_info_string = jsonutils.dumps(
self.get('connection_info'))
if connection_info_string != self._bdm_obj.connection_info:
self._bdm_obj.connection_info = connection_info_string
We shouldn't update the connection_info from None to 'null' since there
are places in the code that expect None or a serialized dict for
bdm.connection_info. A string value of 'null' messes that up.
** Affects: nova
Importance: Medium
Assignee: Matt Riedemann (mriedem)
Status: Triaged
** Tags: volumes
** Changed in: nova
Assignee: (unassigned) => Matt Riedemann (mriedem)
--
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/1513140
Title:
block_device_mapping.connection_info is updated from None to 'null'
Status in OpenStack Compute (nova):
Triaged
Bug description:
While debugging bug 1489581 we were tracking some BDM updates in the
cells API code:
http://logs.openstack.org/66/241366/1/check/gate-tempest-dsvm-
cells/1d7551e/logs/screen-n-cell-
region.txt.gz#_2015-11-03_21_44_58_273
http://logs.openstack.org/66/241366/1/check/gate-tempest-dsvm-
cells/1d7551e/logs/screen-n-cell-
region.txt.gz#_2015-11-03_21_44_58_332
Which is a diff off:
https://www.diffchecker.com/pqclw8j3
mriedem@ubuntu:~/git$ diff bdm1.txt bdm2.txt
1c1
< {u'guest_format': None, u'boot_index': 0, u'connection_info': None, u'snapshot_id': None, u'updated_at': u'2015-11-03T21:44:58.000000', u'image_id': None, u'device_type': None, u'volume_id': u'35909d21-81b8-4fda-82b6-d3d75be61238', u'deleted_at': None, u'instance_uuid': u'2c9cecc1-c3db-4057-81bd-98e488c45ac2', u'no_device': False, u'created_at': u'2015-11-03T21:44:57.000000', u'volume_size': 1, u'device_name': u'/dev/vda', u'disk_bus': None, u'deleted': False, u'source_type': u'volume', u'destination_type': u'volume', u'delete_on_termination': True}
---
> {u'guest_format': None, u'boot_index': 0, u'connection_info': u'null', u'snapshot_id': None, u'updated_at': u'2015-11-03T21:44:58.000000', u'image_id': None, u'device_type': u'disk', u'volume_id': u'35909d21-81b8-4fda-82b6-d3d75be61238', u'deleted_at': None, u'instance_uuid': u'2c9cecc1-c3db-4057-81bd-98e488c45ac2', u'no_device': False, u'created_at': u'2015-11-03T21:44:57.000000', u'volume_size': 1, u'device_name': u'/dev/vda', u'disk_bus': u'virtio', u'deleted': False, u'source_type': u'volume', u'destination_type': u'volume', u'delete_on_termination': True}
Note that the connection_info is updated from None to 'null' because
of this code:
https://github.com/openstack/nova/blob/master/nova/virt/block_device.py#L357
connection_info_string = jsonutils.dumps(
self.get('connection_info'))
if connection_info_string != self._bdm_obj.connection_info:
self._bdm_obj.connection_info = connection_info_string
We shouldn't update the connection_info from None to 'null' since
there are places in the code that expect None or a serialized dict for
bdm.connection_info. A string value of 'null' messes that up.
To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1513140/+subscriptions
Follow ups