"Cannot find device" during _create_veth_pair
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Invalid
|
Undecided
|
Unassigned |
Bug Description
While running Kilo in a scale test, my colleague observed a stack trace on a compute host which boils down to:
Cannot find device "qvbcdc5cf8d-ad"
Checking the log, I found:
CMD "sudo nova-rootwrap /opt/stack/
CMD "sudo nova-rootwrap /opt/stack/
There was also a stack trace pointing to line 1357 of nova/network/
So it seems like either `ip link add ...` should have returned nonzero and didn't; or another thread (maybe of another process) managed to delete the devices in between the two commands. Neither seem particularly likely, 'ip' is presumably pretty robust and the device names are randomly generated so a collision seems curious.
Full stack trace:
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
2015-12-13 18:34:58.876 1069 TRACE nova.openstack.
tags: | added: kilo-backport-potential liberty-backport-potential |
Changed in nova: | |
assignee: | Alexis Lee (alexisl) → nobody |
assignee: | nobody → Alexis Lee (alexisl) |
Running this all night yielded no problems:
while true; do
sudo ip link add aaa type veth peer name bbb
sudo ip link set aaa up
sudo ip link delete aaa
sudo ip link delete bbb > /dev/null 2>&1
echo -n "."
done