** Changed in: tacker Status: Fix Committed => Fix Released -- 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/1515768
Title: Instance creation fails with libvirtError: Unable to create tap device: Device or resource busy Status in OpenStack Compute (nova): Fix Released Status in tacker: Fix Released Status in nova package in Ubuntu: Fix Released Status in nova source package in Xenial: Fix Released Bug description: Summary: This issue is observed frequently on Jenkins gate and has been reproducible in local setup too. Steps: Initiate 3 stack create requests at once in a script: heat stack-create -f /home/stack/template_file stack1 heat stack-create -f /home/stack/template_file stack2 heat stack-create -f /home/stack/template_file stack3 using the following HOT file: http://paste.openstack.org/show/479920/ One of the stack creations fails with CreateFailed: Resource Create Failed: Conflict: Resources. vdu3: Port Is Still In Use. From the nova logs, there are duplicate bridges created for one of the servers. The qemu xml fails with libvirtError: Unable to create tap device tapd3a3d9e9-5d: Device or resource busy. See timestamp 2015-11-25 23:03:14.940 in n-cpu.log Attaching the relevant n-cpu.log, q-svc.log and h-eng.log Observation: The 1st network interface for the nova instance is a Neutron Port resource provided in HOT template. Nova sends a PUT request to update the port information. It also sends 2 POST requests for the 2nd and 3rd network interfaces. Neutron receives the PUT request and sends network-event changed event while nova is still waiting for the POST response for the 2 ports. If the network-changed event is received before the 3rd port POST response is received, refresh_cache is acquired by nova_service Nova sends a query for port information, updates the cache and release the lock. By then, POST requests are completed which acquires the cache lock again and sends request for network info. refresh_cache is updated twice and contains duplicate set of ports Network vifs are built for all 6 ports and qemu xml is build based on that. Duplicate bridges in xml is complained by libvirt as device or resource busy. Version and environment: Devstack Master To manage notifications about this bug go to: https://bugs.launchpad.net/nova/+bug/1515768/+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