Avoid running code that uses logging in a thread
Fixes bug 946687 This avoids problems with code that uses logging from running in a thread which isn't necessary for unit tests anyway. Change-Id: I9c296c3c46317c9aaba7f1a92cd565a35682ce23
This commit is contained in:
@@ -18,6 +18,8 @@
|
|||||||
import json
|
import json
|
||||||
import random
|
import random
|
||||||
|
|
||||||
|
from eventlet import tpool
|
||||||
|
|
||||||
from nova.virt import xenapi_conn
|
from nova.virt import xenapi_conn
|
||||||
from nova.virt.xenapi import fake
|
from nova.virt.xenapi import fake
|
||||||
from nova.virt.xenapi import volume_utils
|
from nova.virt.xenapi import volume_utils
|
||||||
@@ -67,6 +69,11 @@ def stubout_session(stubs, cls, product_version=None, **opt_args):
|
|||||||
product_version = (5, 6, 2)
|
product_version = (5, 6, 2)
|
||||||
stubs.Set(xenapi_conn.XenAPISession, 'get_product_version',
|
stubs.Set(xenapi_conn.XenAPISession, 'get_product_version',
|
||||||
lambda s: product_version)
|
lambda s: product_version)
|
||||||
|
# NOTE(johannes): logging can't be used reliably from a thread
|
||||||
|
# since it can deadlock with eventlet. It's safe for our faked
|
||||||
|
# sessions to be called synchronously in the unit tests. (see
|
||||||
|
# bug 946687)
|
||||||
|
stubs.Set(tpool, 'execute', lambda m, *a, **kw: m(*a, **kw))
|
||||||
|
|
||||||
|
|
||||||
def stub_out_get_target(stubs):
|
def stub_out_get_target(stubs):
|
||||||
|
|||||||
Reference in New Issue
Block a user