Reviewed: https://review.opendev.org/c/openstack/ovn-octavia-provider/+/787460 Committed: https://opendev.org/openstack/ovn-octavia-provider/commit/69b392de9c6d753262342b726c407abbb8b6b6bb Submitter: "Zuul (22348)" Branch: master
commit 69b392de9c6d753262342b726c407abbb8b6b6bb Author: Brian Haley <[email protected]> Date: Wed Apr 21 19:43:51 2021 -0400 Fix python 3.9 unit test failures Running the python 3.9 unit tests locally results in failures like: TypeError: cannot pickle '_thread.RLock' object Because we are inheriting some of the neutron code, and this is fixed in that repository, just bump the minimum requirement to 18.0.0 (Wallaby) now that it is released. This does not happen in the gate since it is always using master. Raised minimum of other libraries as necessary. Change-Id: I820c924189d2973aefcb1452331c904f1ee7051f Closes-bug: #1923083 ** Changed in: neutron Status: In Progress => Fix Released -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to neutron. https://bugs.launchpad.net/bugs/1923083 Title: python 3.9 failures Status in neutron: Fix Released Bug description: It looks like all of the unit tests fail on the same error "TypeError: cannot pickle '_thread.RLock' object": tox -e py39 ... ovn_octavia_provider.tests.unit.test_helper.TestOvnProviderHelper.test_vip_port_update_handler_lb_not_found ----------------------------------------------------------------------------------------------------------- Captured traceback: ~~~~~~~~~~~~~~~~~~~ Traceback (most recent call last): File "/home/corey/pkg/wallaby/upstream/ovn-octavia-provider/ovn_octavia_provider/tests/unit/test_helper.py", line 34, in setUp super().setUp() File "/home/corey/pkg/wallaby/upstream/ovn-octavia-provider/ovn_octavia_provider/tests/unit/base.py", line 24, in setUp super().setUp() File "/home/corey/pkg/wallaby/upstream/ovn-octavia-provider/.tox/py39/lib/python3.9/site-packages/neutron/tests/base.py", line 397, in setUp policy.init() File "/home/corey/pkg/wallaby/upstream/ovn-octavia-provider/.tox/py39/lib/python3.9/site-packages/neutron/policy.py", line 77, in init register_rules(_ENFORCER) File "/home/corey/pkg/wallaby/upstream/ovn-octavia-provider/.tox/py39/lib/python3.9/site-packages/neutron/policy.py", line 68, in register_rules enforcer.register_defaults(itertools.chain(*policies)) File "/home/corey/pkg/wallaby/upstream/ovn-octavia-provider/.tox/py39/lib/python3.9/site-packages/oslo_policy/policy.py", line 1120, in register_defaults self.register_default(default) File "/home/corey/pkg/wallaby/upstream/ovn-octavia-provider/.tox/py39/lib/python3.9/site-packages/oslo_policy/policy.py", line 1109, in register_default self.registered_rules[default.name] = copy.deepcopy(default) File "/usr/lib/python3.9/copy.py", line 172, in deepcopy y = _reconstruct(x, memo, *rv) File "/usr/lib/python3.9/copy.py", line 270, in _reconstruct state = deepcopy(state, memo) File "/usr/lib/python3.9/copy.py", line 146, in deepcopy y = copier(x, memo) File "/usr/lib/python3.9/copy.py", line 230, in _deepcopy_dict y[deepcopy(key, memo)] = deepcopy(value, memo) File "/usr/lib/python3.9/copy.py", line 172, in deepcopy y = _reconstruct(x, memo, *rv) File "/usr/lib/python3.9/copy.py", line 270, in _reconstruct state = deepcopy(state, memo) File "/usr/lib/python3.9/copy.py", line 146, in deepcopy y = copier(x, memo) File "/usr/lib/python3.9/copy.py", line 230, in _deepcopy_dict y[deepcopy(key, memo)] = deepcopy(value, memo) File "/usr/lib/python3.9/copy.py", line 172, in deepcopy y = _reconstruct(x, memo, *rv) File "/usr/lib/python3.9/copy.py", line 270, in _reconstruct state = deepcopy(state, memo) File "/usr/lib/python3.9/copy.py", line 146, in deepcopy y = copier(x, memo) File "/usr/lib/python3.9/copy.py", line 230, in _deepcopy_dict y[deepcopy(key, memo)] = deepcopy(value, memo) File "/usr/lib/python3.9/copy.py", line 172, in deepcopy y = _reconstruct(x, memo, *rv) File "/usr/lib/python3.9/copy.py", line 270, in _reconstruct state = deepcopy(state, memo) File "/usr/lib/python3.9/copy.py", line 146, in deepcopy y = copier(x, memo) File "/usr/lib/python3.9/copy.py", line 230, in _deepcopy_dict y[deepcopy(key, memo)] = deepcopy(value, memo) File "/usr/lib/python3.9/copy.py", line 161, in deepcopy rv = reductor(4) TypeError: cannot pickle '_thread.RLock' object ====== Totals ====== Ran: 211 tests in 3.9547 sec. - Passed: 111 - Skipped: 0 - Expected Fail: 0 - Unexpected Success: 0 - Failed: 100 Sum of execute time for each test: 11.8598 sec. ============== Worker Balance ============== - Worker 0 (54 tests) => 0:00:03.251029 - Worker 1 (50 tests) => 0:00:02.942199 - Worker 2 (53 tests) => 0:00:03.094253 - Worker 3 (54 tests) => 0:00:03.180170 To recreate: lxc launch ubuntu-daily:hirsute h1 lxc exec h1 /bin/bash git clone https://opendev.org/openstack/ovn-octavia-provider cd ovn-octavia-provider tox -e py39 To manage notifications about this bug go to: https://bugs.launchpad.net/neutron/+bug/1923083/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : [email protected] Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp

