| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2018-08-31 | |||
| 14:54:42 | bauzas | I mean, both fixing the RT *and* changing the default values | |
| 14:55:06 | bauzas | I need to go out but I'll think about it | |
| 14:57:42 | dansmith | man zuul is backed up real bad | |
| 14:58:52 | mriedem | dansmith: yeah https://bugs.launchpad.net/openstack-gate/+bug/1790152 | |
| 14:58:52 | openstack | Launchpad bug 1790152 in OpenStack-Gate "jobs failing with ansible "ImportError: No module named manager" since 8/30" [Undecided,Fix released] | |
| 14:58:57 | mriedem | already fixed but broke everything last night | |
| 15:00:04 | dansmith | yeah, but are we still on that backlog? | |
| 15:00:19 | dansmith | at 2am this morning they said "go ahead and recheck" -- maybe it's just the influx of everyone doing that/ | |
| 15:02:25 | mriedem | i assume so yes - everyone woke up and started rechecking the world | |
| 15:02:51 | openstackgerrit | Merged openstack/nova master: Remove old check_attach version check in API https://review.openstack.org/588348 | |
| 15:04:36 | mriedem | ^ feels good to have that gone | |
| 15:14:53 | openstackgerrit | Matt Riedemann proposed openstack/nova master: Don't persist zero allocation ratios in ResourceTracker https://review.openstack.org/598365 | |
| 15:22:49 | cdent | sean-k-mooney: in case you're following along at home my car failed its mot rather spectacularly | |
| 15:25:56 | sean-k-mooney | cdent: i was actully wondering about that | |
| 15:26:32 | cdent | i'll find out the details in a few minutes when I go to pick it up. the parts it needs may be impossible to get. | |
| 15:26:50 | sean-k-mooney | cdent: fixable or not viable | |
| 15:27:26 | cdent | well, fixable with a) much money, b) access to parts. Both require some effort to resolve. | |
| 15:27:49 | sean-k-mooney | ya what is it by the way. you mentioned it was 21 years old but not the make or modle | |
| 16:34:03 | sean-k-mooney | melwitt: finucannot since sahid was fine https://review.openstack.org/#/q/topic:bug/1759420+(status:open+OR+status:merged) and melwitt mentioned to not squash unless i respin are they good to go? | |
| 16:35:15 | melwitt | sean-k-mooney: probably. I'd ask mriedem_away if he thinks squashing is important but he's away for atm | |
| 16:35:58 | finucannot | sean-k-mooney: Sure. I've +2d the bottom one but, in hindsight, I might leave both to melwitt seeing as she got there first (assuming that's alright with her) | |
| 16:37:18 | melwitt | finucannot: I'm fine with you taking them, I can +1 them anyway. I want to ask mriedem_away about squashing since it's related to the backport | |
| 16:37:50 | finucannot | melwitt: Yeah, it can wait until next week, in that case | |
| 16:38:03 | melwitt | we routinely backport 2-change deals for functional regression tests, but this is a unit regression test, just want to make sure with him since I'm not sure it matters | |
| 16:38:12 | sean-k-mooney | sure just comment or ping me if you want it squashed. its like 30 seconds to do but the gate is busy at the moment so did not want to push a change for no reason | |
| 16:38:42 | melwitt | ok, I'll let you know | |
| 17:43:00 | hamzy | hey y'all, my ethernet connections in instances installed via TripleO doesn't work. I seem to see all the bridges and connections setup, but some final qemu hardware connection is broken or missing http://paste.openstack.org/show/729241/ | |
| 17:44:02 | sean-k-mooney | hamzy: that all seams fine at first glance | |
| 17:44:14 | sean-k-mooney | hamzy: how did you determihn that the connectivity did not work | |
| 17:45:58 | hamzy | sean-k-mooney, on lines 78+ I can't get the IP via DHCP, or when I set it manually, ping the router | |
| 17:48:11 | sean-k-mooney | hamzy: is dhcp enable on the neutron subnet | |
| 17:48:15 | cfriesen | who's a good person to talk to about performance issues? | |
| 17:48:25 | cfriesen | I mean process startup times | |
| 17:49:35 | sean-k-mooney | cfriesen: as in makeing them better or debuging a problem | |
| 17:50:47 | sean-k-mooney | cfriesen: if your debugging a proablem i proably cant help but if you have a proposal on how to make it faster then im happy to be a sound board to bounce ideas off | |
| 17:50:49 | cfriesen | sean-k-mooney: in nova/compute/flavors.py we call "from nova.api.validation import parameter_types". This appears to be really expensive (~6 seconds in a recent test) due to the regex stuff, which makes a controller node startup fairly expensive | |
| 17:50:55 | hamzy | sean-k-mooney, yes I believe that it is... all ports on 'openstack port list' are active | |
| 17:51:48 | sean-k-mooney | cfriesen: ocuch 6 seconds for a singel function call for paramater validation is nuts | |
| 17:52:23 | sean-k-mooney | hamzy: yes they will be active regardless of if dhcp is enable on the subnet | |
| 17:52:28 | cfriesen | sean-k-mooney: that was in vbox, but it's still multiple seconds on bare metal. internally we moved the import down into the actual code so it's only done if we actually do the flavor creation | |
| 17:52:31 | sean-k-mooney | they also will have ips assigned | |
| 17:53:15 | sean-k-mooney | cfriesen: wait the import is executing code? is it building the regex on import or something if so that is terible | |
| 17:53:38 | hamzy | sean-k-mooney, http://paste.openstack.org/show/729253/ | |
| 17:54:02 | hamzy | is the DHCP agent only run on the controller? | |
| 17:54:56 | sean-k-mooney | cfriesen: sigh... https://github.com/openstack/nova/blob/master/nova/api/validation/parameter_types.py#L144-L492 its all at file scope we do this on every import | |
| 17:55:08 | cfriesen | sean-k-mooney: precisely | |
| 17:56:24 | sean-k-mooney | cfriesen: can you open a bug for that. i would have to check what this actully used for but personally i think we should lazy initallies the values or replace them with caching factoryFunctions | |
| 17:56:44 | cfriesen | sean-k-mooney: sure | |
| 17:57:06 | sean-k-mooney | the simplest thing to do is proably make them all properties but not sure that is leagal at file/module scope | |
| 17:57:38 | sean-k-mooney | hamzy: yes it should only be running on the contoller/networking nodes | |
| 17:58:33 | hamzy | sean-k-mooney, I would think that "sudo ip addr add ..." and ping .254 (router) should work as a test for network connectivity, right? | |
| 17:58:51 | sean-k-mooney | hamzy: can you do an "openstack subnet list" and then "openstack subnet show" for the subnet the vm is connected too | |
| 17:58:56 | leakypipes | cfriesen, sean-k-mooney: I'm actually only seeing a single re.compile() in that module... | |
| 17:59:22 | leakypipes | cfriesen, sean-k-mooney: It would seem like it would be more efficient to be re.compile()'ing all the regexes that are in module scope in that module. | |
| 18:00:28 | sean-k-mooney | leakypipes: actully i had assumed the ValidationRegex object was compiling them but i see now its not | |
| 18:01:10 | leakypipes | sean-k-mooney: no it is not... | |
| 18:01:33 | leakypipes | sean-k-mooney: or at least, it isn't AFAICT | |
| 18:02:02 | sean-k-mooney | ya looking over the file level stuff its not really doing anything expecive | |
| 18:02:16 | cfriesen | try running python and then doing "from nova.api.validation import parameter_types" | |
| 18:02:45 | sean-k-mooney | https://github.com/openstack/nova/blob/master/nova/api/validation/__init__.py however might be | |
| 18:03:28 | sean-k-mooney | also not really be i hate when people hide stuff in __init__.py files | |
| 18:04:54 | cfriesen | just retested and it's 3 secs on pretty beefy hardware | |
| 18:05:25 | sean-k-mooney | cfriesen: and if you move the import to the fuction where its used what happens? | |
| 18:05:45 | cfriesen | sean-k-mooney: then you don't hit the delay at process startup, only when you actually run the function | |
| 18:06:11 | sean-k-mooney | cfriesen: yes but what is the delta in start up | |
| 18:06:22 | sean-k-mooney | if its 3 second to 2.9 then do we care | |
| 18:06:43 | cfriesen | no, it's 3 secs just for "from nova.api.validation import parameter_types" | |
| 18:06:56 | sean-k-mooney | oh that is different | |
| 18:07:25 | leakypipes | sean-k-mooney: well, there's no state in the dunderinit file at least... just functions. | |
| 18:07:44 | sean-k-mooney | cfriesen: can you temporally comment out the file level suff just to see if it changes | |
| 18:09:07 | leakypipes | holy fucksticks, Batman. | |
| 18:09:08 | leakypipes | [jaypipes@uberbox nova]$ source .tox/py27/bin/activate | |
| 18:09:09 | leakypipes | (py27) [jaypipes@uberbox nova]$ time python -m nova.api.validation.parameter_types | |
| 18:09:09 | leakypipes | real0m5.653s | |
| 18:09:09 | leakypipes | user0m3.331s | |
| 18:09:09 | leakypipes | sys0m0.201s | |
| 18:09:34 | sean-k-mooney | cfriesen: the only thin that looks even remotely expensive is maybe _build_regex_range and even then the most expecive thing i see there is re.escape | |
| 18:10:08 | sean-k-mooney | i dont really like this https://github.com/openstack/nova/blob/master/nova/api/validation/parameter_types.py#L128-L142 | |
| 18:11:08 | sean-k-mooney | def _get_all_chars(): | |
| 18:11:10 | sean-k-mooney | for i in range(0xFFFF): | |
| 18:11:12 | sean-k-mooney | yield six.unichr(i) | |
| 18:11:50 | sean-k-mooney | so that is got to loop 65535 times | |
| 18:12:01 | sean-k-mooney | *going too | |
| 18:12:44 | sean-k-mooney | and we call the function 17 times | |
| 18:14:08 | sean-k-mooney | so that 1.1 million callse to re.escape every time we load that module | |
| 18:14:45 | sean-k-mooney | leakypipes: cfriesen shall i fix this or do one of ye wnat to do it | |
| 18:15:23 | openstackgerrit | Matt Riedemann proposed openstack/nova master: Default AZ for instance if cross_az_attach=False and checking from API https://review.openstack.org/469675 | |
| 18:15:40 | cfriesen | sean-k-mooney: go for it. :) | |
| 18:16:00 | sean-k-mooney | cfriesen: good find by the way that is nuts | |
| 18:17:25 | cfriesen | sean-k-mooney: https://bugs.launchpad.net/nova/+bug/1790195 | |
| 18:17:25 | openstack | Launchpad bug 1790195 in OpenStack Compute (nova) "performance problems starting up nova process due to regex code" [Undecided,New] | |
| 18:18:17 | leakypipes | cfriesen: ++ | |
| 18:21:06 | cfriesen | sean-k-mooney: I think that's likely the culprit. Changing it to "for i in range(0x1):" made "python -m nova.api.validation.parameter_types" take 1.5 sec instead of 7. | |
| 18:21:19 | mriedem | hmm, so https://review.openstack.org/#/c/598366/ passed with https://review.openstack.org/#/c/598365/ but i'm not sure if that tells us much | |
| 18:21:48 | sean-k-mooney | cfriesen: ill fix this two ways. first ill cache te result of _build_regex_range wit a decorator and second ill probably convert the file level vars to propertys so they are lazy evaulted | |
| 18:22:04 | cfriesen | sean-k-mooney: sounds good | |
| 18:48:52 | openstackgerrit | Adam Harwell proposed openstack/nova stable/pike: Add apply_cells to nova-manage https://review.openstack.org/599050 | |
| 18:51:48 | openstackgerrit | Merged openstack/nova master: Report client: update_from_provider_tree w/reshape https://review.openstack.org/585049 | |
| 18:51:57 | openstackgerrit | Merged openstack/nova master: Compute: Handle reshaped provider trees https://review.openstack.org/576236 | |
| 18:52:07 | openstackgerrit | Merged openstack/nova master: Do test_reshape with an actual startup https://review.openstack.org/597218 | |