yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #03776
[Bug 1190026] Re: xenapi network info injection is racey
** Changed in: nova
Status: Fix Committed => Fix Released
** Changed in: nova
Milestone: None => havana-2
--
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/1190026
Title:
xenapi network info injection is racey
Status in OpenStack Compute (Nova):
Fix Released
Bug description:
Xenapi's vmops.py:inject_network_info() is racey. If 2 network
updates are happening at the same time, this can be raised:
['MAP_DUPLICATE_KEY', 'VM', 'xenstore_data', 'OpaqueRef:<REF>', 'vm-data/networking/<MACADDR>']
File "/opt/nova/lib/python2.6/site-packages/nova/compute/manager.py", line 234, in decorated_function
return function(self, context, *args, **kwargs)
File "/opt/nova/lib/python2.6/site-packages/nova/compute/manager.py", line 2755, in add_fixed_ip_to_instance
network_info = self._inject_network_info(context, instance=instance)
File "/opt/nova/lib/python2.6/site-packages/nova/compute/manager.py", line 2916, in _inject_network_info
self._legacy_nw_info(network_info))
File "/opt/nova/lib/python2.6/site-packages/nova/virt/xenapi/driver.py", line 290, in inject_network_info
self._vmops.inject_network_info(instance, network_info)
File "/opt/nova/lib/python2.6/site-packages/nova/virt/xenapi/vmops.py", line 1641, in inject_network_info
jsonutils.dumps(xs_data))
File "/opt/nova/lib/python2.6/site-packages/nova/virt/xenapi/vmops.py", line 1813, in _add_to_param_xenstore
self._session.call_xenapi('VM.add_to_xenstore_data', vm_ref, key, val)
File "/opt/nova/lib/python2.6/site-packages/nova/virt/xenapi/driver.py", line 723, in call_xenapi
return session.xenapi_request(method, args)
File "/opt/nova/lib/python2.6/site-packages/XenAPI.py", line 133, in xenapi_request
result = _parse_result(getattr(self, methodname)(*full_params))
File "/opt/nova/lib/python2.6/site-packages/XenAPI.py", line 203, in _parse_result
raise Failure(result['ErrorDescription'])
There's a 'remove' and then a 'add' in _add_to_param_xenstore. This
is racey.
To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1190026/+subscriptions