Earlier  
Posted Nick Remark
#openstack-nova - 2019-09-04
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 aspiers: Yeah, I see what you mean; what I found was that in my venv:
10:14:19 kashyap >>> import os_traits
10:14:19 kashyap >>> print os_traits.HW_CPU_X86_AVX512VNNI
10:14:19 kashyap HW_CPU_X86_AVX512VNNI
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
11:33:08 brinzhang sean-k-mooney, artom: I checked to the master and run the test, also report the error
11:33:27 sean-k-mooney what os are you running on?
11:33:34 brinzhang Centos7
11:33:48 sean-k-mooney brinzhang: you might want to clone a clean copy of nova and try it again
11:34:11 sean-k-mooney brinzhang: ok i tested on popos and it worked fine
11:34:19 sean-k-mooney i can check on rhel8
11:34:31 brinzhang On Monday, It runs ok, but today I git pull
11:35:00 sean-k-mooney i know some test fail in rhel8 but i think that is due to the version of python it uses
11:35:53 brinzhang Emm, in my env, I was installed py27 and py37,the default is py27
11:37:01 sean-k-mooney no i mean that using py36 on rhel8 some things fail that pass on py36 on pop_os/ubunutu
11:37:09 brinzhang Clone the clean code is so slowly, sometimes maybe disconnect, I don’t want to do that.
11:37:45 sean-k-mooney brinzhang: well i was only suggesting that since it might be related to unclean files in your working directory
11:38:02 sean-k-mooney have you checked there are no tempory files created by your ide/editor
11:38:13 sean-k-mooney im checking master on rhel8 now
11:38:51 sean-k-mooney i guess i can check with a centos container too
11:39:33 brinzhang I will check again in my working directory too, and try to clone it in another directory

Earlier   Later