Earlier  
Posted Nick Remark
#openstack-nova - 2018-08-16
09:33:16 mdbooth Yeah, I'd assume so
09:33:33 openstackgerrit Ghanshyam Mann proposed openstack/nova master: Merge config drive extension response into server controller https://review.openstack.org/584223
09:33:58 openstackgerrit Ghanshyam Mann proposed openstack/nova master: Merge extended server attributes extension response https://review.openstack.org/584590
09:35:20 openstackgerrit Ghanshyam Mann proposed openstack/nova master: Merge extended server attributes extension response https://review.openstack.org/584590
09:35:44 mriedem it's not sorted https://github.com/openstack/nova/blob/master/nova/tests/unit/image/fake.py#L164
09:35:45 openstackgerrit Ghanshyam Mann proposed openstack/nova master: Merge keypair extension response into server view builder https://review.openstack.org/584748
09:35:55 openstackgerrit Ghanshyam Mann proposed openstack/nova master: Merge server usage extension response into server view builder https://review.openstack.org/585262
09:36:18 openstackgerrit Ghanshyam Mann proposed openstack/nova master: Merge security groups extension response into server view builder https://review.openstack.org/585475
09:36:20 tssurya mriedem: correct basic flavors (larger flavors users open special request) are available everywhere, special flavors for special projects in special cells where those tenants have access, by default projects are not mapped (when they are normal tenants/personal projects) and they land in a set of default cells. we have around ~4500 projects roughly which depending on where the resources are allocated,
09:36:22 tssurya get mapped to that cell
09:36:55 tssurya sean-k-mooney: we use the pre-filter from dansmith for scheduling based on the same criteria: projects mapped to cells/aggregates
09:37:14 tssurya so that placement returns only those nodes
09:38:02 sean-k-mooney tssurya: cool. i was wondering if ye were still using the oldway with the tenant affinity/isolation filter but that does not work right post palcement
09:38:46 tssurya right
09:39:56 sean-k-mooney tssurya: how have ye found the perfromce with the prefilter + placement vs cellsv1 and no placement. is it working well for ye?
09:41:50 tssurya sean-k-mooney: not really that good, we use the "limits" thing for limiting placement results for getting a decent performance
09:42:09 tssurya we are trying to improve the scheduling part performance wise, mriedem had some patches
09:42:43 tssurya but we have not seen much improvement in production after applying those
09:46:02 sean-k-mooney thats unfortunet. there is still alot of work going into makeing schdulign faster in general. hopefully the performacne is adaquit for now.
09:46:24 mriedem i imagine the big chunk of the per-request scheduling time is taken in the DB queries which iterate all selected compute nodes and then pull all instance UUIDs on each node
09:46:29 mriedem across all cells
09:46:42 mriedem that could be optimized into a single big join per cell probably
09:47:25 mriedem because CERN isn't using the track_instance_changes config option right?
09:47:34 mriedem where the computes report instance per host changes to the scheduler
09:47:35 mriedem ?
09:48:34 mriedem this method https://github.com/openstack/nova/blob/master/nova/scheduler/host_manager.py#L710
09:48:46 mriedem specifically https://github.com/openstack/nova/blob/master/nova/scheduler/host_manager.py#L735
09:49:00 mriedem that queries the cell db per compute host to find the list of instance uuids on that host
09:50:29 sean-k-mooney mriedem: for the cern case you really only need to fine out what cell the project is mapped too right? so if we had placement aggreates per cell we would just need to add a member of to the placement query for the cells assocated with the tenant and let placement do all the work
09:51:13 mriedem sean-k-mooney: CERN already has that
09:51:19 tssurya mriedem: yea the time consumption is in the pulling of all instances info
09:51:22 mriedem they have tenants mapped to host aggregates which are mapped to resource provider aggregates
09:51:26 mriedem and that does the pre-filtering
09:51:46 sean-k-mooney mriedem: oh ok cool
09:52:07 mriedem they use this stuff https://docs.openstack.org/nova/latest/admin/configuration/schedulers.html#aggregates-in-placement
09:52:09 sean-k-mooney mriedem: so why do we ever pull the per host info back?
09:52:34 openstackgerrit jichenjc proposed openstack/nova master: Add zvm admin intro and hypervisor information https://review.openstack.org/533125
09:52:35 openstackgerrit jichenjc proposed openstack/nova master: Add zvm CI information https://review.openstack.org/533512
09:52:51 mriedem sean-k-mooney: for the affinity filters
09:53:18 sean-k-mooney mriedem: ah but that is after the placmenet query right?
09:53:25 mriedem yes
09:53:46 mriedem pre-filter -> GET /allocation_candidates -> get_host_states -> per-host-instance query -> filters/weighers
09:54:11 sean-k-mooney ok i miss understood. i taught you were implying we were doing the db query in the prefilter
09:54:33 mriedem no the only thing we query there is which host aggregates are restricted for the tenant
09:54:52 sean-k-mooney ya that makes sense.
09:55:03 mriedem https://github.com/openstack/nova/blob/master/nova/scheduler/request_filter.py#L26
09:56:58 openstackgerrit Matthew Booth proposed openstack/nova master: Py3 fix in fake image service https://review.openstack.org/592056
09:57:00 openstackgerrit Matthew Booth proposed openstack/nova master: Add regression test for bug 1550919 https://review.openstack.org/591733
09:57:01 openstackgerrit Matthew Booth proposed openstack/nova master: Don't delete disks on shared storage during evacuate https://review.openstack.org/578846
09:57:01 openstack bug 1550919 in OpenStack Compute (nova) "[Libvirt]Evacuate fail may cause disk image be deleted" [Medium,In progress] https://launchpad.net/bugs/1550919 - Assigned to Matthew Booth (mbooth-9)
09:58:15 sean-k-mooney mriedem: right we just get the aggreate uuids and stuff them in the destination object
09:59:41 mdbooth mriedem: ^^^ is my proposed for failed evacuate on shared storage. The functional tests exercise all 4 combinations of shared/nonshared instance directory and share/nonshared block.
10:00:03 mdbooth mriedem: Good call ;)
10:01:39 sean-k-mooney there is no stien spec template ye correct? im going to make one reusing the rocky template.
10:02:05 sean-k-mooney is it stien or stein?
10:02:29 mdbooth sean-k-mooney: The latter
10:03:11 sean-k-mooney damb german words not doing the i before e thing
10:03:35 sean-k-mooney that said more english word dont follow that then do also
10:03:42 mdbooth Our crazy european neighbours
10:04:26 mdbooth Don't understand the weightiness of consistent spelling
10:07:09 sean-k-mooney you have seen my speeling correct ( yes i know i misspelled spelling, however that was kind of a typo). sometimes constency is a good thing but that does not mean i like us spelling more then uk.
10:14:39 openstackgerrit Vlad Gusev proposed openstack/nova stable/pike: Fix service list for disabled compute using MC driver https://review.openstack.org/592337
10:26:00 openstackgerrit Claudiu Belu proposed openstack/nova master: tests: autospecs all the mock.patch usages https://review.openstack.org/470775
10:26:01 openstackgerrit Claudiu Belu proposed openstack/nova master: hyper-v: autospec classes before they are instantiated https://review.openstack.org/342211
10:30:46 openstackgerrit Claudiu Belu proposed openstack/nova master: WIP: replace spec with autospec https://review.openstack.org/557299
10:38:14 openstackgerrit Chen proposed openstack/nova master: Fix soft deleting vm fails after "nova resize" vm https://review.openstack.org/546920
10:41:35 openstackgerrit Claudiu Belu proposed openstack/nova master: hyperv: Cleans up live migration Planned VM https://review.openstack.org/478943
11:59:12 openstackgerrit Matthew Booth proposed openstack/nova master: Move static _get_power_off_values to compute_utils https://review.openstack.org/578822
11:59:27 openstackgerrit Matthew Booth proposed openstack/nova master: Move static _get_power_off_values to compute_utils https://review.openstack.org/578822
12:07:38 mdbooth Any py3-loving cores fancy knocking this on the head: https://review.openstack.org/#/c/592056/ Trivial: change to explicit string type required by py3.
12:15:45 openstackgerrit Yikun Jiang (Kero) proposed openstack/nova master: Make monkey patch work in uWSGI mode https://review.openstack.org/592285
12:15:58 efried mdbooth: I glanced at that yesterday, but I'm not a py2-to-3 expert and the commit message is... sparse. Can you help me understand what's wrong and why it needs to be fixed?
12:16:15 mdbooth efried: Because the argument has to be binary
12:16:31 mdbooth If it's not, it gives an error that the argument has to be binary
12:16:31 efried according to...?
12:16:58 efried what gives an error? data.write or _imagedata.get?
12:17:07 efried presumably the former
12:17:10 mdbooth Yeah
12:17:40 efried and where does the error show up? It must not be in the py35 tox job...?
12:18:02 mdbooth Yeah, it was happening in the functional job
12:18:18 efried oooohhhh
12:18:29 mdbooth Although it was non-deterministic until I twigged why
12:18:29 efried I was blinded by the fact that the fake driver lives in the /unit/ path.
12:18:34 openstackgerrit Yikun Jiang (Kero) proposed openstack/nova master: Make monkey patch work in uWSGI mode https://review.openstack.org/592285
12:18:38 efried but it's used for the func tests too.
12:18:45 mdbooth They're pretty incestuous :)
12:18:54 efried okay, now that I have a way to try to repro locally I can take a better look at it.
12:19:17 efried If you wouldn't mind enhancing the commit message, future me will be grateful.
12:19:36 mdbooth Maybe if you open the file binary it has to have binary data written to it?
12:19:59 efried Well, it makes sense that you would *want* to write binary if you're opening with 'b'.
12:20:24 mdbooth >>> f = open('/tmp/foo', 'wb+')
12:20:24 mdbooth >>> f.write('foo')
12:20:24 mdbooth Traceback (most recent call last):
12:20:24 mdbooth File "<stdin>", line 1, in <module>
12:20:24 mdbooth TypeError: a bytes-like object is required, not 'str'
12:20:32 mdbooth That's the error you get, anyway
12:20:53 mdbooth >>> f.write(b'foo')
12:20:53 mdbooth 3
12:21:04 efried yeah, so they must have tightened that down in py3, eh?
12:21:24 mdbooth py2:

Earlier   Later