| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2021-02-23 | |||
| 17:08:14 | sean-k-mooney | because mock the lib has some bugs | |
| 17:08:23 | sean-k-mooney | it does not fully work the same as the stanard lib | |
| 17:08:35 | stephenfin | See above | |
| 17:08:41 | prometheanfire | requirements doesn't cap mock | |
| 17:08:48 | sean-k-mooney | and since we are pythoh 3 only now we dont need it any more | |
| 17:08:55 | stephenfin | To the best of my knowledge, it's a carbon copy of unittest.mock from the latest stable python | |
| 17:09:10 | stephenfin | including all the new features and bugfixes found therein | |
| 17:09:18 | prometheanfire | if the mock-4 releases are bad they should be masked so they don't bug me every day when the constraints bot review fails because nova doesn't work with the new mock (but other projects aparently do) | |
| 17:10:03 | stephenfin | prometheanfire: I'm almost certain we're seeing the exact same issues with unittest.mock on either python3.9 or python3.10 | |
| 17:10:07 | sean-k-mooney | stephenfin: there was deffinlty differnt behavor in the past as code in neutorn would not work in nova | |
| 17:10:32 | stephenfin | and there's an open bug against it but it hasn't gone anywhere | |
| 17:11:02 | stephenfin | prometheanfire: Have you link to a failing constraints bot job? | |
| 17:11:05 | stephenfin | *a link | |
| 17:11:07 | prometheanfire | yep | |
| 17:11:17 | prometheanfire | https://review.opendev.org/776967 | |
| 17:11:25 | stephenfin | ta | |
| 17:12:00 | prometheanfire | was the previous work abandoned? switching to unittest.mock iirc | |
| 17:12:26 | stephenfin | it's not abandoned in Gerrit terms, but nobody is looking at it | |
| 17:12:50 | stephenfin | https://review.opendev.org/c/openstack/nova/+/714676 | |
| 17:12:50 | sean-k-mooney | this is becasue of eventlets and py39 | |
| 17:12:55 | prometheanfire | which is why I pinged :P | |
| 17:12:59 | sean-k-mooney | the websocket proxy is broken on py39 | |
| 17:13:06 | sean-k-mooney | because of dnspython | |
| 17:13:13 | prometheanfire | ya, turtles | |
| 17:13:37 | sean-k-mooney | well actull its brok on 36 too | |
| 17:13:52 | sean-k-mooney | eventlest does not supprot dnspython 2.0 | |
| 17:14:09 | stephenfin | prometheanfire: Yes, look https://review.opendev.org/c/openstack/nova/+/714676/9/nova/tests/unit/console/test_websocketproxy.py | |
| 17:14:10 | prometheanfire | only worked by accident on 3.7 and 3.8? | |
| 17:14:12 | sean-k-mooney | that websocket issue look kindo fo like the double wrappign issue | |
| 17:14:46 | prometheanfire | ya, magicmock | |
| 17:14:52 | stephenfin | prometheanfire: To get it working with stdlib mock, we had to remove the same test that's failing there | |
| 17:15:07 | stephenfin | prometheanfire: We can push a patch to master to remove that test and unblock requirements | |
| 17:15:10 | stephenfin | I'll do that now | |
| 17:15:17 | sean-k-mooney | stephenfin: yep this is one of the case i think where there is a delta between standard mock and mock the lib | |
| 17:15:25 | prometheanfire | if you don't mind | |
| 17:15:36 | stephenfin | sean-k-mooney: I'm saying unittest.mock and mock the lib are having the exact same issue :) | |
| 17:15:40 | stephenfin | because they're the same thing | |
| 17:16:13 | prometheanfire | and using mock as a lib is fine, it is one MOVING target for all python versions, vs a locked target per version of supported python | |
| 17:16:24 | prometheanfire | pick your poison kinda | |
| 17:16:38 | sean-k-mooney | maybe now but again on python 2.7 it was not | |
| 17:16:51 | sean-k-mooney | anyway we shoudl proably revie https://review.opendev.org/c/openstack/nova/+/714676 | |
| 17:17:17 | sean-k-mooney | but delete the current test i guess works for now | |
| 17:17:34 | atmark | is there filter can tag a set of computes to a tenant? | |
| 17:17:56 | stephenfin | prometheanfire: Yeah, I was all for dropping it in e.g. oslo projects, but we obviously have way more tests than anything there and when you start looking at the amount of bugs we need to workaround on older stdlib versions it seems less attractive | |
| 17:18:07 | sean-k-mooney | atmark: yes | |
| 17:18:38 | stephenfin | We'll do it _eventually_, but it's dropped down my priority list rn (and melwitt's too, evidently) | |
| 17:18:40 | prometheanfire | stephenfin: yep | |
| 17:18:42 | sean-k-mooney | there is both a post fitler and prefilter https://github.com/openstack/nova/commit/732e202e81142a8ea462a9ebcde9a7226a62a60b | |
| 17:19:37 | atmark | will take a look | |
| 17:19:39 | atmark | thanks | |
| 17:19:49 | prometheanfire | now I have to check on fasteners (which I think needs a mask of 0.16 at least) and virtualenv (which is a whole... thing) | |
| 17:20:32 | sean-k-mooney | atmark: the old way is to use https://docs.openstack.org/nova/latest/admin/configuration/schedulers.html#aggregatemultitenancyisolation but you should use https://docs.openstack.org/nova/latest/admin/aggregates.html#tenant-isolation-with-placement if you can | |
| 17:20:50 | sean-k-mooney | atmark: i think the latter was added around rocky | |
| 17:21:07 | openstackgerrit | Stephen Finucane proposed openstack/nova master: tests: Remove ;test_tcp_rst_no_compute_rpcapi' https://review.opendev.org/c/openstack/nova/+/777168 | |
| 17:21:12 | stephenfin | prometheanfire: ^ | |
| 17:21:33 | prometheanfire | thanks | |
| 17:21:51 | stephenfin | gibi, melwitt, lyarwood, bauzas: That ^ is taken out of https://review.opendev.org/c/openstack/nova/+/714676 and should unblock mock 4.x in requirements. Could you take a look? | |
| 17:23:12 | openstackgerrit | Stephen Finucane proposed openstack/nova master: tests: Remove 'test_tcp_rst_no_compute_rpcapi' https://review.opendev.org/c/openstack/nova/+/777168 | |
| 17:23:42 | stephenfin | aha, melwitt already has a better solution https://review.opendev.org/c/openstack/nova/+/741351/ | |
| 17:25:08 | stephenfin | prometheanfire: https://review.opendev.org/c/openstack/nova/+/741351 is approved, so that should be fixed once it goes through the gate | |
| 17:25:25 | melwitt | stephenfin: I was gonna say, I spent time to rewrite that test proper 🥺 thanks for finding it, I should have pinged you to look but I kept forgetting | |
| 17:25:33 | prometheanfire | awesome, thanks :D | |
| 17:26:08 | prometheanfire | was nova the one having problems with fasteners-0.16? | |
| 17:27:46 | stephenfin | That doesn't ring a bell | |
| 17:27:52 | prometheanfire | k | |
| 17:27:57 | stephenfin | do we use fasteners? | |
| 17:28:03 | stephenfin | I've no idea what that is, tbh | |
| 17:30:40 | sean-k-mooney | stephenfin: we do indrectly | |
| 17:30:44 | sean-k-mooney | its used in oslo | |
| 17:31:09 | stephenfin | Oh I guessed that but I meant directly | |
| 17:31:29 | sean-k-mooney | stephenfin: as far as i aware its only use for the fair lock in oslo.concurancy | |
| 17:31:38 | sean-k-mooney | that is where we use it in nova | |
| 17:31:50 | prometheanfire | must have been a ml thread that mentioned | |
| 17:31:52 | sean-k-mooney | all our locks are eventually provided by fasteners | |
| 17:32:11 | bnemec | Yes, there was an issue with the latest fasteners release and nova: https://github.com/harlowja/fasteners/issues/36 | |
| 17:32:15 | sean-k-mooney | prometheanfire: i mentioned we could use it to backport a patch in nova for an ironic issue | |
| 17:32:33 | sean-k-mooney | e.g. port the lock to nova directly since we could not depned on oslo | |
| 17:33:07 | prometheanfire | bnemec: should we mask 0.16 (and maybe 0.15) | |
| 17:33:22 | prometheanfire | less deps are nice | |
| 17:34:05 | bnemec | I believe it has been capped since the bug was found. | |
| 17:34:46 | bnemec | Note that fasteners is the thing that does our file locking too. The fair lock stuff was added later. | |
| 17:34:50 | prometheanfire | no, I've been holding 0.15 and 0.16 back for too long :P | |
| 17:35:27 | prometheanfire | looks like 0.15 was masked but 0.16 has not been https://github.com/openstack/requirements/blob/master/global-requirements.txt#L308 | |
| 17:39:27 | melwitt | I wonder if dansmith might have some thoughts about the cell func test locking + eventlet issue https://github.com/harlowja/fasteners/issues/36#issuecomment-760402680 | |
| 17:40:24 | dansmith | sounds like something I would have thoughts on but I am like super deep in my current queue right now | |
| 17:41:01 | sean-k-mooney | in the func tests we serials the scater gather right | |
| 17:41:03 | melwitt | ok :( but understandable | |
| 17:41:16 | openstackgerrit | Chris Dent proposed openstack/placement master: Update traits in tests and requirements https://review.opendev.org/c/openstack/placement/+/777174 | |
| 17:41:22 | sean-k-mooney | i belve we have a fixture that alteres its executiton | |
| 17:41:58 | sean-k-mooney | https://github.com/openstack/nova/blob/d10c9de25d7e4885a0ed2e5e31747e44f68359ba/nova/tests/unit/test_fixtures.py#L313-L321 | |
| 17:42:36 | sean-k-mooney | so all the functest should be running in 1 thread of executin serially | |
| 17:42:41 | melwitt | are we using that in all tests though? I hadn't thought so. oh | |
| 17:43:34 | sean-k-mooney | maybe not | |
| 17:43:36 | sean-k-mooney | https://github.com/openstack/nova/blob/d10c9de25d7e4885a0ed2e5e31747e44f68359ba/nova/tests/unit/compute/test_compute.py#L1455 | |
| 17:43:41 | sean-k-mooney | its used in teh compute unit tests | |
| 17:43:57 | sean-k-mooney | i tought we had a similar one in place for functional | |
| 17:44:32 | melwitt | I found this old patch from March 2020 having to do with monkey patching current_thread https://review.opendev.org/c/openstack/nova/+/707474, it's not clear to me when the problem was last reproduced | |
| 17:44:43 | melwitt | that is, I wonder if it's possible that could have fixed things | |
| 17:45:44 | sean-k-mooney | i think that is the same eventlet issue that is linked form teh fasteners one | |
| 17:46:15 | sean-k-mooney | ya it is https://github.com/harlowja/fasteners/issues/36#issuecomment-760402680 | |