6db48dd688
The unit tests were previously consuming an excessive amount of memory (4GB+) due to plugin instances persisting in memory. Deallocation was not possible where a combination of circular references and mocking was involved. This patch ensures that only NeutronManager holds a plugin reference and that all other references are instances of weakref.proxy. Residual memory footprint for tox executed on a 12-core machine has been reduced to ~1.3GB. Plugin deallocation is validated at the end of each test to prevent regressions. This change also includes fixes to unit tests that depended on plugin instances persisting across tests. Partial-Bug: #1234857 Change-Id: Ia1f868c2d206eb72ef77d290d054f3c48ab58c94 |
||
---|---|---|
.. | ||
agent | ||
api | ||
cmd | ||
common | ||
db | ||
debug | ||
extensions | ||
locale | ||
notifiers | ||
openstack | ||
plugins | ||
scheduler | ||
server | ||
services | ||
tests | ||
__init__.py | ||
auth.py | ||
context.py | ||
hooks.py | ||
manager.py | ||
neutron_plugin_base_v2.py | ||
policy.py | ||
quota.py | ||
service.py | ||
version.py | ||
wsgi.py |