Comment 14 for bug 1812672

Revision history for this message
Corey Bryant (corey.bryant) wrote :

There's a big difference in the base classes of _MemcacheClient that are resolved at run-time when comparing Junien's testcase in comment #1 vs the code being executed via nova-api-os-compute in the failure case. Also showing arguments here for the failing case since I have them handy:

Successful testcase:
--------------------
CCB inspect.getmro(_MemcacheClient)=(<class 'oslo_cache._memcache_pool._MemcacheClient'>, <class 'memcache.Client'>, <class '_thread._local'>, <class 'object'>)
<oslo_cache._memcache_pool._MemcacheClient object at 0x7f984ddd04c8>

Failure via nova-api-os-compute:
--------------------------------
self._arguments={'dead_retry': 300, 'socket_timeout': 3.0}
self.urls=['10.5.0.117:11211']
inspect.getmro(_MemcacheClient)=(<class 'oslo_cache._memcache_pool._MemcacheClient'>, <class 'memcache.Client'>, <class 'eventlet.corolocal.local'>, <class 'eventlet.corolocal._localbase'>, <class 'object'>)