| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2018-11-19 | |||
| 19:50:26 | sean-k-mooney | larsks: not that im aware of but most people dont know they exist and we just dont activly publicise that fact to new users | |
| 19:50:36 | larsks | Got it. Okay, thanks! | |
| 19:56:32 | cdent | Is anyone else seeing HackingTestCase.test_check_doubled_words fail on py36 on ubuntu 18.04? It's not failing on macos | |
| 19:58:11 | efried | cdent: I just ran it locally on trusty and it ran okay. | |
| 19:59:00 | efried | I noticed it breaking here: https://review.openstack.org/#/c/618786/ <== is that where you were seeing it, or somewhere else? | |
| 19:59:43 | cdent | first on my placement removal patches, and then on master | |
| 20:12:04 | cdent | weird, it's a problem in 3.6 but not 3.7 | |
| 20:18:53 | cdent | oh rich, it passes in stestr in 3.7, but not with testtools.run or unittest | |
| 20:33:05 | larsks | sean-k-mooney: Looks like there is already a bug, from 2016 :). https://bugs.launchpad.net/nova/+bug/1445637 | |
| 20:33:05 | openstack | Launchpad bug 1445637 in OpenStack Compute (nova) "Instance resource quota not observed for non-ephemeral storage" [Wishlist,Opinion] | |
| 20:35:31 | sean-k-mooney | larsks: ah ok let me repriorise it for you | |
| 20:36:14 | larsks | I don't know, maybe at this point it's just a doc bug and the docs should say "use cinder and neutron resource controls". | |
| 20:37:53 | sean-k-mooney | i have set it to confirmed and low. we can propse a docs update as a resolution to the but if we like | |
| 21:01:34 | larsks | sean-k-mooney: ...but flavor quotas *are* still the correct mechanism for controlling cpu and memory limits? | |
| 21:03:40 | sean-k-mooney | larsks: cpu and memory limits? | |
| 21:03:53 | cdent | efried: it's because of this https://bugs.python.org/issue33899 which gets python 3.6.7 and newer versions of python 3.7. I'll make a bug and a patch | |
| 21:04:18 | larsks | sean-k-mooney: right, like quota:cpu_quota. | |
| 21:04:22 | larsks | sean-k-mooney: so really just cpu. | |
| 21:04:35 | sean-k-mooney | larsks: that is also something that in general is not used | |
| 21:05:13 | larsks | Okay. Is there an alternative for that, or is that just something that was considered less useful? | |
| 21:05:18 | sean-k-mooney | larsks: most of those values are from lxc | |
| 21:05:24 | sean-k-mooney | or vm ware | |
| 21:06:08 | sean-k-mooney | many of them never work with libvirt/kvm cpu_shares did but not the rest | |
| 21:06:35 | sean-k-mooney | the same is true fo the memory limits | |
| 21:06:40 | sean-k-mooney | https://docs.openstack.org/nova/latest/user/flavors.html | |
| 21:07:15 | sean-k-mooney | all of the flavor quota atibute came form the vmware driver originally | |
| 21:09:30 | larsks | Okay. So effectively the best practice is not to use instance resource limits for anything, and rely on the per-service limits (e.g., cinder, neutron) where available. Is that accurate? | |
| 21:10:02 | sean-k-mooney | if you want to have interop between different public cloud then you could not rely on that feature existing | |
| 21:10:39 | sean-k-mooney | as an operator you can set them but it may cause issues for your users if you also expose the service qos apis | |
| 21:10:44 | cdent | efried: https://bugs.launchpad.net/nova/+bug/1804062 the thing that I thought would fix it does not | |
| 21:10:45 | openstack | Launchpad bug 1804062 in OpenStack Compute (nova) "test_hacking fails for python 3.6.7 and newer" [Undecided,New] | |
| 21:10:47 | cdent | so still thinking | |
| 21:10:59 | larsks | sean-k-mooney: fair enough. Are there any plans to deprecate the feature in the near future? | |
| 21:11:18 | cdent | mriedem: to distract you, that bug ^ is real fun | |
| 21:11:36 | sean-k-mooney | larsks: again it kind of a if its not broken dont fix it or delete it situation | |
| 21:11:55 | sean-k-mooney | larsks: i dont think so but it has been mentioned in the past | |
| 21:12:36 | sean-k-mooney | larsks: a better way to look at it is it unlikely that we would add more quota: extraspec in the future | |
| 21:13:05 | larsks | Okay, that makes sense. Thanks for spending some time on this! | |
| 21:14:29 | cfriesen | is it just me or is it not intuitive that the way to get a vnc session to a server using the "openstack" command is "openstack console url show" rather than an "openstack server console show" or similar? | |
| 21:15:00 | sean-k-mooney | cfriesen: i did fine it weird too | |
| 21:15:19 | sean-k-mooney | its there to differenceate between the url or the log | |
| 21:15:45 | sean-k-mooney | but i would have gon with opesntack server console show and openstack server log show | |
| 21:16:48 | sean-k-mooney | cfriesen: sorry tehy are console log show and console url show | |
| 21:17:19 | sean-k-mooney | but yes openstack server console show and openstack server log show would have made more sense to me | |
| 21:19:21 | mriedem | cfriesen: likely a question for dtroyer in #openstack-sdks | |
| 21:20:27 | mriedem | cdent: so we're intermittently hitting that in py36 jobs? | |
| 21:20:34 | cdent | yes | |
| 21:21:02 | cdent | seems to depend on whether the node has a recently updated python. 3.6.7 was released to ubuntu not long ago | |
| 21:21:13 | sean-k-mooney | cdent: is that happening in nova or in the hacking repo? | |
| 21:21:18 | cdent | nova | |
| 21:21:44 | cdent | it's just the one test | |
| 21:22:02 | cdent | the root is that having a newline token being added on the end is causing pep8 to think it needs to do a "logical check" | |
| 21:22:11 | sean-k-mooney | can you past the test name again ill try and run it on python 3.6 on centos | |
| 21:22:18 | cdent | which means it bypasses the physical checks that happen otherwise | |
| 21:22:29 | cdent | sean-k-mooney: nova.tests.unit.test_hacking.HackingTestCase.test_check_doubled_words | |
| 21:22:40 | cdent | it ought to pass fine in <3.6.7 | |
| 21:22:46 | mriedem | http://logstash.openstack.org/#dashboard/file/logstash.json?query=message%3A%5C%22testtools.matchers._impl.MismatchError%3A%20%5B(1%2C%200%2C%20'N343')%5D%20!%3D%20%5B%5D%5C%22%20AND%20tags%3A%5C%22console%5C%22%20AND%20build_name%3A%5C%22openstack-tox-py36%5C%22&from=7d | |
| 21:23:31 | cdent | yeah, so always bionic | |
| 21:23:36 | mriedem | yup | |
| 21:23:41 | mriedem | do we want to skip the test for now? | |
| 21:23:58 | cdent | if you're happy with that, that's probably the easiest way to go | |
| 21:24:47 | mriedem | or at least skip on py36 | |
| 21:25:09 | sean-k-mooney | python 3.6 will be the defult on rhel8 also as per doug hellmann's mail earilier today | |
| 21:26:02 | cdent | yeah, I'll do a skipIf | |
| 21:26:09 | cdent | one moment please | |
| 21:26:42 | sean-k-mooney | im testing with Python 3.6.5 on centos 7 and it passed | |
| 21:27:56 | cdent | yeah, that's expected | |
| 21:28:31 | sean-k-mooney | oh it needs to be 3.6.7+ to fail | |
| 21:43:14 | openstackgerrit | Chris Dent proposed openstack/nova master: Skip double word hacking test https://review.openstack.org/618843 | |
| 21:43:21 | cdent | mriedem, efried, sean-k-mooney ^ | |
| 21:44:24 | sean-k-mooney | is that really a nova bug or a hacking bug? | |
| 21:45:06 | cdent | the failing test is because of changes to the tokenize stdlib. The hacking check is in nova itself, not in hacking | |
| 21:45:20 | sean-k-mooney | i guess we shoudl make the test support both the old and new api | |
| 21:45:24 | cdent | at least the way nova is experiencing the problem | |
| 21:45:46 | cdent | sean-k-mooney: I tried and failed to do that because it is in the guts of pep8 where the problem happens | |
| 21:45:50 | cdent | all hacking has is a regex | |
| 21:46:24 | cdent | the presence of the added NEWLINE token causes pep8 to believe it needs to make a logical instead of physical check | |
| 21:47:16 | sean-k-mooney | not sure i follow but then again i have not looked at the python bug yet | |
| 21:47:24 | cdent | there's little we can do from our side of the world to make it not add the NEWLINE | |
| 21:47:41 | cdent | looking at the python bug (and the related tracker for api breakages it causes) will make things much more clear | |
| 21:49:13 | sean-k-mooney | so just to be clear on what line in test_chesck_double_words is it addint the new line | |
| 21:49:17 | sean-k-mooney | the + operator | |
| 21:49:34 | cdent | at the end of the entire string | |
| 21:49:37 | cdent | and it isn't adding a new line | |
| 21:49:45 | cdent | it is adding a NEWLINE token when tokenizing | |
| 21:49:55 | sean-k-mooney | oh | |
| 21:50:13 | sean-k-mooney | that seams like a think it should not be doing... but ok | |
| 21:50:21 | sean-k-mooney | anyway you temp fix makes sense | |
| 21:50:33 | cdent | yeah, you'd think so, but someone decided that the method should behave more like C | |
| 21:50:48 | cdent | the comments on the python bug are amusing | |
| 21:50:49 | sean-k-mooney | c ends with \0 | |
| 21:50:56 | sean-k-mooney | e.g. a 0 byte | |
| 21:50:58 | sean-k-mooney | not a new line | |
| 21:51:20 | cdent | right, but it tokenizes a NEWLINE | |
| 21:51:21 | cdent | apparently | |
| 21:51:25 | sean-k-mooney | so it does not match c either in terms of string termination of const char* s | |
| 21:51:30 | cdent | it's not about string termination | |
| 21:51:34 | cdent | it is about code tokenizing | |
| 21:51:59 | cdent | please, read the bug | |
| 21:52:05 | cdent | it will all become clear | |