Earlier  
Posted Nick Remark
#openstack-nova - 2019-08-21
15:11:21 sean-k-mooney does vmware do something similar to ironic
15:11:44 sean-k-mooney they have multiple compute nodes in the same service too right
15:11:51 mriedem http://lists.openstack.org/pipermail/openstack-discuss/2019-June/007135.html
15:12:06 mriedem sean-k-mooney: no, vmware driver does not do that since kilo or liberty
15:13:44 mriedem TheJulia: tl;dr, i think you need https://review.opendev.org/#/q/topic:bug/1839560+branch:stable/stein for your grenade failures,
15:14:01 mriedem and there might be a regression due to https://review.opendev.org/#/c/602481/ where allocations in placement are lost during a re-balance
15:14:06 mriedem but someone needs to test that
15:14:19 TheJulia mriedem: sean-k-mooney: I added a depends-on flag to one of my test patches for the patches above, if I see the issue re-appear on that job, I'll let you all know
15:18:33 mriedem so if the lost allocations on re-balance is a real thing, i might have a solution, which i wrote down in a comment in https://review.opendev.org/#/c/602481/
15:19:01 mriedem b/c the code that deletes the resource provider and it's allocations pre-dates the removal of the RT allocation healing code, and unsurprisingly we lost track of all those random one off moving parts
15:19:29 mriedem especially since we don't have functional testing of that stuff in tree
15:37:40 openstackgerrit Adam Spiers proposed openstack/nova master: libvirt: Parse the 'os' element from domainCapabilities https://review.opendev.org/673790
15:39:26 gibi mriedem: hi! I have no problem moving the small parts of the cross-cell resize series to the front. I can re-apply my +2 if you rebase the series
15:39:57 mriedem gibi: ok thanks
15:46:42 openstackgerrit Matt Riedemann proposed openstack/nova master: FUP for I5576fa2a67d2771614266022428b4a95487ab6d5 https://review.opendev.org/677769
15:55:45 aspiers anyone object to me splitting libvirt/test_driver.py into smaller pieces? at 23k LoC it's almost *double* the size of the next largest file in nova (compute/test_compute.py in case you're curious)
15:55:58 aspiers my editor really hates such a huge file, and so do I
15:56:09 aspiers efried_afk, sean-k-mooney: ^^^
15:56:40 aspiers of course this will probably cause a few merge conflicts so maybe we need to time it right
15:56:55 sean-k-mooney aspiers: you mean it does not like 10s of 1000s or lines
15:57:41 aspiers sean-k-mooney: yes, syntax highlighting something that big is really expensive
15:57:56 aspiers unless your highlighting algorithm cuts corners
15:58:43 sean-k-mooney pycharm does not mind too much
15:58:52 sean-k-mooney once it has built the index
15:59:53 aspiers Yikes this is a huge list https://review.opendev.org/#/q/project:openstack/nova+path:nova/tests/unit/virt/libvirt/test_driver.py+status:open+branch:master
16:00:16 aspiers Still, we could split stuff out in smaller steps to be less disruptive
16:00:34 aspiers I was thinking to move all the capabilities / domcaps tests out for a start
16:01:08 aspiers libvirt/driver.py is 10k LoC, that should also be split up
16:02:24 aspiers anyway I'm done for today
16:02:32 aspiers probably won't do much the rest of this week
16:02:40 aspiers since I've been doing way too much overtime recently
16:12:30 sean-k-mooney aspiers: yes it shoudl but with the rate of change that is hard to do without a dedicated effort
16:12:52 sean-k-mooney aspiers: and ya dont burn out.
16:21:05 mriedem efried_afk: did cern reach out to you about the deepcopy of the ProviderTree? i think it came up last week, but was reminded after reading https://techblog.web.cern.ch/techblog/post/nova-ironic-at-scale/
16:21:56 openstackgerrit Matthew Booth proposed openstack/nova master: libvirt: Fix service-wide pauses caused by un-proxied libvirt calls https://review.opendev.org/677736
16:22:37 mriedem aspiers: you mean moving driver.py tests out of test_driver.py? but leave the code in driver.py? that would be confusing to me, and becomes a mess for git history tracking
16:23:25 mriedem there is probably a ton of copy/paste patterns in libvirt driver tests that could be a simple cleanup to start with, rather than moving things *out* of the test_driver.py module
17:02:49 openstackgerrit Matt Riedemann proposed openstack/nova master: WIP: Get instances outside of update_available_resource lock https://review.opendev.org/677790
17:29:59 openstackgerrit Merged openstack/nova master: Move calls to ovs-vsctl to privsep. https://review.opendev.org/639282
17:32:01 openstackgerrit Merged openstack/nova master: Move setting of device trust to privsep. https://review.opendev.org/639283
17:44:58 efried_afk aspiers: I love the idea of splitting huge files. sean-k-mooney, syntax highlighting isn't the problem so much as the inspection. Every change causes it to reinspect the file, which takes forever on monsters like test_libvirt. If I'm spending any amount of time there, I have to turn inspection off.
17:45:50 dansmith efried_afk: without any other context or target articles,
17:46:01 dansmith that first sentence sounds like it belongs on your online dating profile
17:46:10 dansmith "I like long walks on the beach and splitting huge files"
17:47:03 sean-k-mooney efried_afk: i have not had that problem but it does annoy me that thost files are so large
17:47:06 efried dansmith: It was a straight copy/paste
17:47:14 dansmith efried: I figured
17:47:46 dansmith Male seeking cybernetic female analog capable of introspection of long python files and/or automated splitting thereof
17:47:52 efried mriedem: I don't recall anything specific about a ProviderTree deepcopy...
17:48:25 efried oo, that's good dansmith. Clearly you have a lot of experience here.
17:48:38 dansmith my kink knows no bounds
17:51:23 efried dansmith: are you happy with https://review.opendev.org/#/c/671072/ series at this point?
17:52:11 efried gibi: also ^
17:52:15 dansmith efried: I haven't circled back
17:56:00 openstackgerrit Eric Fried proposed openstack/nova master: Remove deprecated [neutron]/url option https://review.opendev.org/677755
17:56:16 aspiers mriedem: I would happily move the corresponding code out from driver.py at the same time if that was feasible
17:57:03 aspiers I'm not sure why it would become a mess for git history tracking? even git blame has for a long time been able to figure out when stuff gets moved between files
17:57:17 aspiers efried: exactly
17:57:47 mriedem i'm not a fan of the tests for something in one module living in another module
17:57:48 aspiers mriedem: that said, pointers on stuff to deduplicate are welcome
17:58:00 mriedem and like i said, i think you can just refactor the duplication in test_driver.py for lots of tests to probably make it smaller
17:58:34 aspiers I think our messages crossed :) ^^^
17:58:43 mriedem this isn't an exercise i'm the one that's wanting to take on, so that's up to you,
17:58:55 mriedem but i know there is a ton of just copy test foo and tweak 1-2 lines for test bar
17:59:12 mriedem i also have no problem with the thing in pycharm
18:00:00 efried aspiers: git history is an issue, unfortunately - afaik blame will show the new commit on the new file. You would have to back up to see the previous iteration, which is awkward. (I've run into this a number of times already in placement, and it's pretty debilitating.)
18:00:25 mriedem correct, it sucks
18:00:36 mriedem the mox removal series is a prime example
18:00:45 mriedem it also causes issues with merge conflicts for backports
18:00:53 sean-k-mooney well perhaps this is jsut somethin we need to be aware of and think should we be moving things out of the driver into modules used by the driver in the future
18:01:04 aspiers efried: no, blame really can show where it came from
18:01:25 sean-k-mooney aspiers: yes but git blame on github crashes on those files
18:01:29 sean-k-mooney so you have to do it locally
18:01:43 aspiers ?
18:01:49 efried what's the blame trick, without iterating backward across commits?
18:01:58 aspiers mriedem's point about backports is a much more convincing argument against
18:02:19 aspiers however, if our policy is "you can't move stuff around, ever" then we're in for a miserable future
18:02:50 mriedem i'm not against refactoring giant methods in the libvirt driver module, deduplicating test code in test_driver, etc. i just don't want to see random tests moving out of test_driver into some other module when the code being tested is still in driver.py
18:03:20 aspiers mriedem: sure, that's why I said <aspiers> mriedem: I would happily move the corresponding code out from driver.py at the same time if that was feasible
18:03:21 mriedem aspiers: no one said that was the policy
18:03:24 sean-k-mooney aspiers: try opening https://github.com/openstack/nova/blame/master/nova/virt/libvirt/driver.py
18:03:36 aspiers mriedem: ok good :)
18:03:50 aspiers was beginning to sound that way
18:04:19 mriedem as a nova troll i have a reputation to maintain
18:04:26 aspiers :)
18:04:27 mriedem as immovable object
18:04:28 sean-k-mooney i think we just dont want test to be move with out the code also moving and am not sure that patches that only move code are a good idea
18:04:37 aspiers efried: try git gui blame for instance
18:04:55 aspiers some tooltips include "Copied Or Moved Here By:"
18:05:12 aspiers can't remember if github or gitea do the same
18:05:31 sean-k-mooney aspiers: i think i makes sense to consider moving things if you are refacoritn the code already.
18:05:32 aspiers but local is way faster anyway IME
18:05:39 aspiers sean-k-mooney: definitely agree with that
18:06:02 aspiers well, it's an idea to bear in mind anyway
18:06:28 aspiers 23k LoC in one file does not seem sane to me ;-)
18:07:14 sean-k-mooney 23K of code to test 9.75K of code and we still miss things...
18:07:43 sean-k-mooney the driver is not that bad coverage wise but ther are other part that are less awsome...
18:08:17 efried aspiers: git gui appears to be... a GUI :( :( :(
18:08:30 aspiers efried: shocker! who'd have thought?
18:08:33 efried guess it would take some getting used to.

Earlier   Later