Earlier  
Posted Nick Remark
#openstack-nova - 2019-09-04
08:15:14 openstackgerrit Balazs Gibizer proposed openstack/nova master: Support reverting migration / resize with bandwidth https://review.opendev.org/676140
08:18:00 openstackgerrit Balazs Gibizer proposed openstack/nova master: Func test for migrate re-schedule with bandwidth https://review.opendev.org/676972
08:20:50 openstackgerrit Balazs Gibizer proposed openstack/nova master: Support migrating SRIOV port with bandwidth https://review.opendev.org/676980
08:23:39 openstackgerrit Balazs Gibizer proposed openstack/nova master: Allow migrating server with port resource request https://review.opendev.org/671497
08:26:26 openstackgerrit Balazs Gibizer proposed openstack/nova master: Do not query allocations twice in finish_revert_resize https://review.opendev.org/678827
08:27:12 Sundar Hi gibi, hoaw are you doing?
08:29:15 openstackgerrit Balazs Gibizer proposed openstack/nova master: Allow resizing server with port resource request https://review.opendev.org/679019
08:34:22 openstackgerrit Adrian Chiris proposed openstack/nova master: Revert "vif: Resolve a TODO and update another" https://review.opendev.org/675776
08:40:32 Sundar Re. Cyborg notifications, I noticed that, once Nova kicks off the binding of ARQs, the CYborg event comes almost immediately if no programming is involved. The event gets lost because there are no waiters: I am doing the wait in the virt driver during spawn, The logs are here: http://paste.openstack.org/show/770470/
08:42:51 openstackgerrit Liang Fang proposed openstack/nova master: [WIP] Leverage openCAS cache framework for VM disks https://review.opendev.org/663542
08:43:07 Sundar gibi: ^ I am proposing to move the create/bind ARQs from build_and_run_instance (https://review.opendev.org/#/c/631244/37/nova/compute/manager.py@1940) to _build_resources (https://github.com/openstack/nova/blob/master/nova/compute/manager.py#L2392).
08:44:06 Sundar gibi: This has 2 benefits: (a) The instance has th right host and hostname after resource claim, and (b) if VM spawn fails, there is a good place to delete the ARQs in flight.
08:47:34 Sundar The problem I am facing is this: can the logic be like http://paste.openstack.org/show/770481/? If non-ARQ-related stuff is not under the with, then the with statement is going to just kick off the binding and then wait till the resolution happens. Nothing else is going on during the wait.
09:04:29 gibi Sundar: on a call, I have to get back to you in 15 minutes
09:11:39 openstackgerrit Brin Zhang proposed openstack/nova master: Add delete_on_termination to volume-attach API https://review.opendev.org/673133
09:18:46 gibi Sundar: there is already a wait_for_instance_events call in nova.virt.libvirt.driver.LibvirtDriver._create_domain_and_network (called from spawn())
09:20:12 gibi Sundar: or you only want to wait for the cyborg specific event in _build_resources ?
09:27:41 gibi Sundar: but yeah, the goal is that you kick of the binding and while you are waiting for the response let other things progress for the build up until the point where you really need the ARQs to be bound
09:30:17 gibi Sundar: I might try to add the with wait_for_instance_events under with _build_resources call in https://github.com/openstack/nova/blob/cbaea3bd690c683e83a063acfa69919668eaa123/nova/compute/manager.py#L2233
09:32:12 gibi Sundar: I'm not sure how the the two context manager would combine if you put the wait_for_instance call inside the _build_resources without trying
09:36:50 kashyap Huh, this commit added the CPU instruction: https://opendev.org/openstack/nova/commit/866ca1468dfa35f319f520d0f7b93b2d0fe32f62
09:36:56 kashyap (trait, i.e.)
09:37:03 kashyap But it does _not_ exist in os-traits yet :-(
09:37:21 kashyap There's no such trait as HW_CPU_X86_AVX512VNNI in 'os-traits'
09:39:01 kashyap Hmm, never mind ... there _is_ the trait, and it is merged: https://review.opendev.org/#/c/672888/1/os_traits/hw/cpu/x86/__init__.py
09:45:01 aspiers sometimes I have to pip install the latest os-traits in my tox envs
09:45:11 aspiers it's quicker than a --recreate
09:46:23 gibi I guess tox did not pick up the os-traits >= 0.16.0 change in the requirements.txt
09:46:46 gibi the nova master has it, maybe you need to rebase your patch
09:47:17 aspiers tox doesn't seem good at noticing when to update anyway
09:47:24 aspiers IME at least
10:09:50 openstackgerrit Brin Zhang proposed openstack/python-novaclient master: Microversion 2.78: Add delete_on_termination to volume-attach API https://review.opendev.org/673485
10:14:19 kashyap HW_CPU_X86_AVX512VNNI
10:14:19 kashyap >>> print os_traits.HW_CPU_X86_AVX512VNNI
10:14:19 kashyap >>> import os_traits
10:14:19 kashyap aspiers: Yeah, I see what you mean; what I found was that in my venv:
10:14:41 kashyap (I _think_ I manually 'pip'-installed os-traits in there, I guess. I already forget)
10:32:13 brinzhang While run functional test cases, either execute tox or python -m testtools.run command, it will be raise "AssertionError: There is no script for 401 version", details http://paste.openstack.org/show/770633/
10:32:37 brinzhang How can I avoid this issue?
10:35:41 Sundar gibi, Yes, we want to maximize the overlap by kicking off the binding as early as possible and wait for the ARQs as late as possible, but that is not easy without major surgery. So, I'll be content with dong it inside or after _build_resources. However, if we do: "with .... : foo(); bar()", then only foo() and bar() are done concurrently while wai
10:35:42 Sundar ting for the event, right? Also, foo and bar must both be CYborg-related.
10:36:32 sean-k-mooney brinzhang: "tox -e functional-py36 -- nova.tests.functional.api_sample_tests.test_quota_sets.NoopQuotaSetsSampleJsonTests.test_show_quotas" this works for me
10:36:49 sean-k-mooney brinzhang: you might need to add -r to recreate the tox env.
10:36:55 gibi Sundar: yes, only foo and bar will be parallel because when the with wait context manager exits it waits for the events
10:36:59 brinzhang sean-k-mooney: I will have try, thanks
10:37:13 artom brinzhang, did you play with database migrate versions? Because it looks like you bumped the version but didn't provide a migration file
10:37:58 brinzhang artom: I am not update the db
10:39:34 gibi Sundar: I don't see why foo and bar needs to be Cyborg related
10:39:41 artom brinzhang, well, that's where the problem seems to be based on the paste you linked
10:40:01 artom brinzhang, the stuff in nova/db/sqlalchemy/migrate_repo/versions/
10:40:09 brinzhang artom: yeah, that why I am confusing
10:46:40 brinzhang sean-k-monney: http://paste.openstack.org/show/770638/
10:47:32 sean-k-mooney brinzhang: do you have local changes?
10:47:46 sean-k-mooney i ran those tests against master
10:48:12 brinzhang Emm.. I am in https://review.opendev.org/#/c/673133/14 this patch
10:48:28 brinzhang I will test in master now
10:49:08 sean-k-mooney if you have a typo like incorrect indentaion or other syntax errors test discovery will fail
10:49:10 brinzhang http://paste.openstack.org/show/770638/ it's a wrong director
10:50:02 sean-k-mooney it will also fail if you if you have tempory filtes create by some edirtor like emacs where it adds a # to the filename
10:51:07 Sundar gibi, Yes, we want to maximize the overlap by kicking off the binding as early as possible and wait for the ARQs as late as possible, but that is not easy without major surgery. So, I'll be content with dong it inside or after _build_resources. However, if we do: "with .... : foo(); bar()", then only foo() and bar() are done concurrently while wait
10:51:08 Sundar ing for the event, right? Also, foo and bar must both be Cyborg-related.
10:51:29 gibi Sundar: yes, only foo and bar will be parallel because when the with wait context manager exits it waits for the events
10:51:33 gibi Sundar: I don't see why foo and bar needs to be Cyborg related
10:52:27 brinzhang sean-k-mooney: I will delete the edit patch https://review.opendev.org/#/c/673133/14, and then re-fetch it.
10:53:21 Sundar gibi: The timeout in the with will cover both foo and bar. Is it reasonable to impose that Cyborg ARQ bind timeout on non-Cyborg activities? it is 300 seconds by default. If it is ok, it will get us more concurrency.
11:00:13 gibi Sundar: the timeout is not for foo and bar it is for waiting for the events
11:01:17 gibi Sundar: also if the boot process cannot procede without such events then it is OK to wait for the events
11:03:50 Sundar gibi: What do you think of waiting for the events in _build_resources, but actually querying Cyborg for ARQs only in the virt driver's spawn? If we do the query when the event comes, we have to store the ARQs in the instance object (or elsewhere), which will require changes to objects and db.
11:05:16 gibi Sundar: I think it is better to wait earlier than potenitally loosing notifications as we start waiting too late
11:05:46 gibi Sundar: I think you should also ask others, like dansmith about this problem
11:07:27 gibi Sundar: if you start waiting in _build_resources then I would do the query in the virt driver instead of passing the ARQ down
11:07:38 gibi Sundar: to limit the impact
11:07:49 Sundar gibi: Great. That's what I had in mind. :)
11:08:26 Sundar Thank you very much, gibi.
11:08:37 Sundar Have a good day.
11:08:42 gibi Sundar: same to you
11:14:43 sean-k-mooney gibi: would you have time to review https://review.opendev.org/#/q/topic:bp/image-metadata-prefiltering+(status:open+OR+status:merged) today? im aiming to get that merged and free up a runway slot by the end of the week
11:15:05 sean-k-mooney the 3 remaining pataches are relitivly short
11:15:30 gibi sean-k-mooney: I will try...
11:16:48 sean-k-mooney gibi: thanks if you dont get to it its ok i have others to bug too like bauzas
11:17:50 sean-k-mooney bauzas: feel like re reviewing https://review.opendev.org/#/q/topic:bp/image-metadata-prefiltering+(status:open)
11:20:48 kashyap aspiers: gibi: Commented here: https://review.opendev.org/#/c/644565/49/nova/virt/libvirt/utils.py@546
11:21:25 sean-k-mooney artom: i see you currently dont have any ci jobs running using the multi numa job so im going to swap it over too the new lables for FN
11:21:42 artom sean-k-mooney, sure
11:21:45 sean-k-mooney im also going to reduce the concurance to 1
11:22:24 artom sean-k-mooney, unless I'm missing something, the ball's in the reviewers's court
11:22:39 sean-k-mooney assuming you are happy with them for testingin im going to then swap to testing the cpu work stephen has been doinging
11:22:55 gibi kashyap: thanks!
11:23:17 artom Though I need to play with the func test some more - the RPC pinning tests didn't pick up a thing they should have picked up
11:23:39 artom sean-k-mooney, yep, that's fair, again much thanks for all your help
11:24:04 sean-k-mooney thats the last patch in the seriese right e.g. it wont block other patches landing
11:24:16 artom Func tests? Don't think so
11:24:27 artom We can still land tests after FF, right?
11:24:34 sean-k-mooney yes
11:24:41 artom Even assuming the worst and don't get them sorted before then
11:24:48 sean-k-mooney although its better to do it before
11:24:57 artom That's the plan :)
11:32:38 brinzhang sean-k-mooney, artom: I remember the unit test or functional test can run any linux env, depend on the devstack or openstack env is not necessary, is that?
11:32:56 sean-k-mooney brinzhang: correct
11:33:06 sean-k-mooney you do not need openstack or devstack to run them

Earlier   Later