yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #21937
[Bug 1240905] Re: libvirtd restart can sometimes cause multiple nova-compute connections
** Also affects: nova/havana
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/1240905
Title:
libvirtd restart can sometimes cause multiple nova-compute connections
Status in OpenStack Compute (Nova):
Fix Released
Status in OpenStack Compute (nova) havana series:
New
Bug description:
libvirt driver's get_connection() is not thread safe in the
presence of a libvirtd restart during concurrent incoming
requests.
With existing code, each request will in turn call get_connection,
find the connection is broken, try to create new one, block
for a while and yield to the next thread to do the same.
You get as many connections as there are incoming requests
and only the last one is used finally. If enough are incoming
these connections can exhaust the client pool configured
for libvirtd.
One fix is to hold a lock while creating the connection.
Note that has_min_version calls _conn which calls get_connection
so the lock may not be held over the call to has_min_version()
To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1240905/+subscriptions