Earlier  
Posted Nick Remark
#openstack-nova - 2017-05-17
23:58:23 cfriesen _nw_info_get_ips and _nw_info_get_subnets both take noticeable time
23:58:32 cfriesen for each port
23:59:28 mriedem the first is going to iterate over all fixed_ips for a port and get floating IPs for each fixed_ip
#openstack-nova - 2017-05-18
00:01:32 mriedem i wonder if we could bulk query the floating IPs by the list of fixed IPs and the port_id
00:01:46 openstackgerrit melanie witt proposed openstack/nova master: Cache database and message queue connection objects https://review.openstack.org/465042
00:02:07 mriedem "When you specify multiple filters, the Networking API v2.0 returns only objects that meet all filtering criteria. The operation applies an AND condition among the filters."
00:02:17 mriedem so that wouldn't really work,
00:02:27 mriedem because fixed_ip1 AND fixed_ip2 wouldn't resolve to a floating IP
00:02:45 cfriesen mriedem: we get an event for each vif, and we have to get info for all vifs on each event, so when we have N vifs, the live-migration overhead goes up as N^2
00:02:47 mriedem we could trim the fat on the fields we actually need to get back
00:03:07 cfriesen mriedem: it'd be better to have the vif specified in the network-changed event
00:03:24 cfriesen mriedem: and avoid having to scan all the vifs
00:03:37 mriedem cfriesen: yeah i'm not sure how feasible that is from the neutron side
00:03:46 mriedem i guess it would depend on how they calculate the network-changed event
00:03:52 cfriesen mriedem: gotta run, family is calling for supper
00:03:52 edleafe I've written a post to the dev list about continuing the discussion on claims in the scheduler: http://lists.openstack.org/pipermail/openstack-dev/2017-May/116949.html
00:04:00 edleafe ^^ cdent jaypipes dansmith bauzas johnthetubaguy
00:04:27 edleafe It has a link to my blog post and the patch series
00:04:36 mriedem edleafe: ack
00:04:37 edleafe And with that, I'm off to PyCon
00:04:42 mriedem have fun
00:04:46 edleafe See you all next week!
00:04:53 edleafe mriedem: oh, it's all work work work
00:15:21 mriedem cfriesen: here is something to look into later - the network-changed event in neutron does have a port in scope, it just doesn't put it in the external event request https://github.com/openstack/neutron/blob/master/neutron/notifiers/nova.py#L161
00:15:30 mriedem but we should be able to scope that event to the single vif
00:16:03 mriedem cfriesen: it would be helpful if we had a bug to track some of this
00:41:08 mriedem cfriesen: https://bugs.launchpad.net/neutron/+bug/1691602 for tracking
00:41:08 openstack Launchpad bug 1691602 in OpenStack Compute (nova) "live migration generates several network-changed events which lock up refreshing the nw info cache" [Undecided,New]
00:59:53 openstackgerrit Ghanshyam Mann proposed openstack/nova master: Add policy description for os-host https://review.openstack.org/465458
01:18:23 openstackgerrit Alex Xu proposed openstack/nova master: Limit the min length of string for integer JSON-Schema https://review.openstack.org/415103
01:21:53 openstackgerrit Zhenyu Zheng proposed openstack/nova master: Catch exception.OverQuota when create image for volume backed instance https://review.openstack.org/464548
01:24:45 openstackgerrit Alex Xu proposed openstack/nova master: Limit the min length of string for integer JSON-Schema https://review.openstack.org/415103
01:36:36 dikonoor pumaranikar: Hi
01:39:37 dikonoor pumaranikar: I am trying to understand if this new support added is still experimental > https://github.com/openstack/nova/blob/master/nova/conf/service_token.py#L43
01:39:48 dikonoor Can it be turned on ?
01:40:47 mriedem dikonoor: yes it can be turned on for testing, we test with it on in the nova-next CI job
01:41:08 mriedem dikonoor: would actually appreciate someone to run with it in rally or longer-running operation scenarios like with live migration
01:41:18 mriedem and report back if it's helping
02:16:41 openstackgerrit Jay Pipes proposed openstack/nova master: Ensure image metadata when unshelving BFV instance https://review.openstack.org/347063
02:22:55 jaypipes alex_xu: looks sensible to me: https://review.openstack.org/#/c/353862/23
02:23:02 jaypipes alex_xu: XenAPI resource tracking fix.
02:34:46 openstackgerrit Alex Xu proposed openstack/nova master: Correct the error message for query parameter validation https://review.openstack.org/465785
02:35:28 openstackgerrit Tao Li proposed openstack/nova master: Fix the display of updated_at time when using memcache driver. https://review.openstack.org/414463
02:38:22 mriedem oh bug smashing glory
02:43:29 mriedem kevinbenton: looking at this https://github.com/openstack/nova/blob/master/nova/network/neutronv2/api.py#L331
02:43:38 mriedem it looks like you can list resources by a list of ids
02:44:13 kevinbenton mriedem: yeah, i was actually just looking through the code that builds the filters
02:44:18 kevinbenton because i do remember that being a list somewhere
02:44:34 kevinbenton mriedem: i don't remember if it's just for IDs or for everything
02:44:50 mriedem ok, because i was wondering if this could be optimized https://github.com/openstack/nova/blob/master/nova/network/neutronv2/api.py#L2017
02:45:09 mriedem that's called from a for loop https://github.com/openstack/nova/blob/master/nova/network/neutronv2/api.py#L2097
02:45:54 mriedem if i could just do something like GET /floatingips?fixed_ip_address=['fixedip1', 'fixedip2', ...]&port_id=port_id
02:45:58 mriedem that would be the bulk query i'd need
02:46:10 kevinbenton mriedem: https://github.com/openstack/neutron/blob/master/neutron/db/_model_query.py#L191-L194
02:46:10 mriedem but,
02:46:16 kevinbenton mriedem: yeah, it's an OR list
02:47:18 mriedem hmm, but the API ref says "OpenStack Networking does not offer an OR mechanism for filters."
02:47:45 kevinbenton mriedem: it wouldn't be the first time the docs were wrong :)
02:47:45 mriedem i figured the client would unpack the list and turn that into fixed_ip_address=1&fixed_ip_address=2&port_id=port_id
02:47:47 mriedem and AND them all
02:50:49 mriedem ok i can post a wip for that too and see what happens,
02:50:56 mriedem i don't know if there are any tests in tempest which would tickle that
02:52:50 openstackgerrit Matt Riedemann proposed openstack/nova master: WIP: Handle network-changed event for a specific port https://review.openstack.org/465787
02:52:51 mriedem kevinbenton: ^ is the kind of awful i was talking about earlier
02:53:12 kevinbenton mriedem: yeah, repeats turn into the list which becomes the OR in that first query link i sent
02:53:17 kevinbenton mriedem: here is the request parse https://github.com/openstack/neutron/blob/master/neutron/api/api_common.py#L46-L47
02:53:40 mriedem cool
02:54:11 kevinbenton mriedem: yeah, not exactly a trivial change :)
02:54:23 mriedem it would really be split into 2 changes, the first being a refactor
02:54:25 mriedem but yeah
02:54:31 mriedem i'm not going for pretty at 10pm
02:55:01 kevinbenton mriedem: move to hawaii
02:55:10 kevinbenton more time in the day that way
02:55:12 kevinbenton :)
02:55:15 mriedem heh
02:55:27 mriedem you are a proven thought leader
03:00:32 mriedem apparently we handle GET /floatingips results as a list when we filter on fixed IP and port,
03:00:37 mriedem but wouldn't that really be 1:1?
03:00:49 mriedem can you have more than one floating IP associated to the same fixed ip and port?
03:00:56 mriedem i'd think not
03:01:26 kevinbenton no
03:01:34 mriedem ok good, this is just confusing nova code then
03:01:53 kevinbenton well let me confirm
03:04:59 kevinbenton mriedem: there actually may be a way to get there
03:05:06 mriedem ew
03:05:14 kevinbenton mriedem: two different routers
03:05:20 mriedem ok
03:05:21 kevinbenton mriedem: attached to two different ext nets
03:05:29 kevinbenton mriedem: both attached to same internal
03:05:37 kevinbenton mriedem: and both with a floating IP associated to the instance
03:06:09 kevinbenton mriedem: and it would actually work okay if you setup some routing rules on the instance
03:06:18 kevinbenton mriedem: so i think you'll have to preserve that use case :)
03:06:24 mriedem damn
03:06:24 mriedem ok
03:07:19 kevinbenton mriedem: the constraint for floating IP is external_network + IP + port_id https://github.com/openstack/neutron/blob/master/neutron/db/models/l3.py#L101
03:09:42 mriedem i'll bake that into a comment in here
03:16:17 mriedem if we only have one fixed ip per port then this doesn't buy us much
03:16:19 openstackgerrit Matt Riedemann proposed openstack/nova master: WIP: Bulk query floating IPs in _nw_info_get_ips https://review.openstack.org/465792
03:16:24 mriedem but here is the thing ^
03:17:15 openstackgerrit Matt Riedemann proposed openstack/nova master: WIP: Bulk query floating IPs in _nw_info_get_ips https://review.openstack.org/465792

Earlier   Later