| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2019-02-14 | |||
| 16:18:56 | bauzas | above is the fact that when we create a new instance, we use a random mdev which is unrelated to the pgpu which was allocated by placement | |
| 16:18:56 | efried | (to both) | |
| 16:19:25 | mriedem | i don't have a strong feeling either way | |
| 16:19:46 | mriedem | ProviderTree is convenient albeit heavy weight and hopefully someone doesn't abuse it somehow, but doing our own mapping dict is redundant | |
| 16:19:49 | mriedem | so shrug | |
| 16:20:07 | bauzas | yeah me too, but I'm opinionated enough to make it the smoothiest | |
| 16:20:30 | bauzas | and caching the value in the libvirt driver object seems the smoothiest approach | |
| 16:20:45 | mriedem | so the provider tree would just get reset on every upt call? | |
| 16:20:47 | mriedem | if so, then sure | |
| 16:20:51 | bauzas | yeah | |
| 16:20:54 | mriedem | wfm | |
| 16:21:02 | bauzas | i'm done with complex cache invalidation mechanisms | |
| 16:21:13 | mriedem | are you SO done with them? | |
| 16:25:21 | bauzas | mriedem: /me tries to not think hard of AZs | |
| 16:25:34 | bauzas | or server groups | |
| 16:25:47 | mriedem | hey if you like azs i have some good news for you | |
| 16:25:48 | mriedem | https://review.openstack.org/#/c/509206/ | |
| 16:25:51 | mriedem | finally fixing that shitty old bug | |
| 16:26:35 | bauzas | \o/ | |
| 16:26:46 | bauzas | mriedem: straight adding it into my queue | |
| 16:27:39 | bauzas | gibi: you'll be happy to hear that functests work now, btw. :) | |
| 16:28:07 | gibi | bauzas: awesome | |
| 16:29:24 | gibi | every time I start kicking https://review.openstack.org/#/c/635859/ I got depressed after 15 minutes about I capabilities to understand what happening | |
| 16:29:38 | melwitt | o/ | |
| 16:30:14 | melwitt | gibi: me too. I tried for awhile and gave up | |
| 16:31:31 | gibi | melwitt: but I feel something deep is behind that so I cannot gave up :) | |
| 16:32:09 | melwitt | gibi: that's good, I think you will get to the bottom of it :) | |
| 16:32:20 | mriedem | well if you want to get really depressed http://logs.openstack.org/47/635147/11/check/nova-tox-functional-py35/5c3c2a9/job-output.txt.gz#_2019-02-13_13_33_41_103932 | |
| 16:32:34 | mriedem | that traceback wins the grand prize | |
| 16:32:41 | mriedem | and i don't know what to do about it | |
| 16:32:48 | mriedem | looks like the db dropped in the middle of the test | |
| 16:33:32 | gibi | mriedem: nice :) | |
| 16:33:56 | mriedem | the dumping of os-traits contents to the logs on each functional test run with the PlacementFixture isn't helping either | |
| 16:34:08 | mriedem | http://logs.openstack.org/47/635147/11/check/nova-tox-functional-py35/5c3c2a9/job-output.txt.gz#_2019-02-13_13_33_41_193979 | |
| 16:34:24 | gibi | mriedem: I think we can move that to DEBUG | |
| 16:35:18 | mriedem | yeah probably http://logs.openstack.org/59/636459/2/check/tempest-full/3226eb1/controller/logs/screen-placement-api.txt.gz#_Feb_13_13_54_30_464250 | |
| 16:35:23 | gibi | I'm affraid that the drop of the databease could be another interfering test case. Did you managed to reproduce that locally? | |
| 16:35:31 | mriedem | nope | |
| 16:35:35 | bauzas | gibi: efried: what's the best way to copy a providertree object ? copy.deepcopy() ? | |
| 16:35:54 | openstackgerrit | Elod Illes proposed openstack/nova master: DNM: test pip 19 - pip freeze with git editable https://review.openstack.org/636980 | |
| 16:35:56 | bauzas | or do we have other built-in mechanism ? | |
| 16:36:18 | bauzas | tbc, I want to have a separate reference to be stored on the libvirt object | |
| 16:36:54 | gibi | bauzas: I would be affraid of copying the self.lock = lockutils.internal_lock(_LOCK_NAME) inside the ProviderTree | |
| 16:37:25 | efried | bauzas: upt is already operating on a copy... but I'm actually not positive that ufpt doesn't dork with it. So yeah, copy.deepcopy is probably the best bet. | |
| 16:37:58 | gibi | bauzas: besides the self.lock the rest of the internals seems copiable | |
| 16:38:18 | bauzas | gibi: so, ideally we should provide a copy method | |
| 16:38:19 | efried | gibi: hm, interesting point about the lock. This impl that bauzas is doing should be read-only. But that still wouldn't stop you from bouncing off the lock if the other instance is using it. | |
| 16:38:38 | bauzas | efried: what I want is purely read-only | |
| 16:38:45 | efried | However, I would be surprised if the lockutils lock doesn't override __copy__ to *not* copy itself. | |
| 16:38:49 | bauzas | actually, you know what ? I'm gonna make it explicit | |
| 16:38:55 | bauzas | by using a propertgy | |
| 16:39:11 | bauzas | we're not intended to manipulate this copy | |
| 16:39:12 | gibi | mriedem: I think I will stick to the remove-the-assert-that-blow-the-world issue, that I can reproduce locally at least | |
| 16:39:59 | efried | bauzas: There are methods to get a read-only copy of the data out of ProviderTree, but I'm pretty sure they only get one provider at a time. | |
| 16:40:22 | efried | Yeah, ProviderTree.data() | |
| 16:40:27 | mriedem | gibi: efried: fwiw i'm also holding off on the bw provider series until https://review.openstack.org/#/c/616239/ makes progress | |
| 16:40:40 | mriedem | and we've got 3 weeks from FF today | |
| 16:40:52 | efried | I guess that's my action | |
| 16:41:16 | mriedem | i'm just waiting for efried to +2 so i can nit pick a few things and make it look like i get it | |
| 16:41:17 | gibi | efried: thanks | |
| 16:41:21 | bauzas | efried: anyway, I'm rushing to propose a new rev | |
| 16:41:35 | bauzas | efried: you will be able to comment on the best approach by reviewing | |
| 16:41:41 | bauzas | not a big deal | |
| 16:41:50 | gibi | efried: to your surprise there is no copy overried in https://github.com/openstack/oslo.concurrency/blob/master/oslo_concurrency/lockutils.py ;) | |
| 16:41:57 | efried | gibi: d'oh! | |
| 16:44:11 | efried | uh, wtf. gibi, bauzas, when I try to deepcopy an object with a lockutils.internal_lock in it, I get an error. | |
| 16:44:35 | efried | so how tf would that be working in the rt? /me looks... | |
| 16:51:02 | efried | gibi, bauzas: http://paste.openstack.org/show/745111/ <== so how tf is https://github.com/openstack/nova/blob/master/nova/scheduler/client/report.py#L885 working?? | |
| 16:51:37 | bauzas | heh | |
| 16:51:47 | bauzas | sorcery ! | |
| 16:54:03 | bauzas | gibi: looking at the func test | |
| 16:54:05 | bauzas | gibi: you lost me | |
| 16:54:47 | bauzas | gibi: in theory, if you request a VGPU but we don't have inventories because the conf option is unset, you should end up with a beautiful NoValidHost | |
| 16:54:56 | bauzas | so I wonder why it works | |
| 16:55:08 | bauzas | oh wait | |
| 16:55:22 | bauzas | I missed the point you're creating the inventory manually | |
| 16:55:44 | bauzas | oki doki | |
| 16:55:58 | bauzas | so you do this to fake the fact you were running an old version | |
| 16:56:22 | gibi | bauzas: yeah, you are correct | |
| 16:56:51 | bauzas | ok, the good news is that I saw this when I looked at the provider_tree for the allocation RP UUID | |
| 16:57:02 | bauzas | and I was wondering why I was getting a root RP | |
| 16:57:10 | bauzas | gotcha | |
| 16:57:15 | bauzas | perfect, it works then | |
| 17:00:40 | efried | jaypipes: maybe you have some insight? | |
| 17:00:59 | efried | jaypipes: on: http://paste.openstack.org/show/745111/ <== so how tf is https://github.com/openstack/nova/blob/master/nova/scheduler/client/report.py#L885 working?? | |
| 17:01:54 | jaypipes | looking... | |
| 17:04:09 | gibi | efried: sorry I'm expired for today | |
| 17:04:39 | efried | gibi: I think you've done enough, don't you? :P | |
| 17:05:06 | efried | "Ohh, I'm gibi, I notice things like lock copies, nya nya nya" | |
| 17:05:20 | gibi | :P | |
| 17:05:23 | openstackgerrit | Merged openstack/nova master: Use math.gcd starting with python 3.5 https://review.openstack.org/636669 | |
| 17:05:35 | openstackgerrit | Merged openstack/nova master: doc: specify --os-compute-api-version when setting flavor description https://review.openstack.org/635508 | |
| 17:05:46 | openstackgerrit | Merged openstack/nova master: Remove PLACEMENT_DB_ENABLED from nova-next job config https://review.openstack.org/634953 | |
| 17:10:29 | jaypipes | efried: I have no idea how that works. | |
| 17:11:48 | efried | jaypipes: I figured we must be monkey-patching lockutils somewhere. Couldn't find it at a glance, but haven't finished looking. | |
| 17:12:02 | jaypipes | no idea. :( | |
| 17:13:16 | openstackgerrit | Stephen Finucane proposed openstack/os-vif master: WIP: Add API docs for various VIF types https://review.openstack.org/637009 | |
| 17:15:01 | openstackgerrit | melanie witt proposed openstack/nova master: WIP Remove project_only=True from database queries https://review.openstack.org/637010 | |
| 17:15:45 | cdent | efried: if you simply want to fix it, you can implement __deepcopy__ on the ProviderTree class | |
| 17:15:55 | cdent | but it's confusing that it hasn't come up before | |