Thursday, 2018-12-13

*** itlinux has joined #openstack-glance00:11
*** itlinux has quit IRC00:11
*** Liang__ has joined #openstack-glance00:16
*** gyee has quit IRC01:08
*** brinzhang has joined #openstack-glance01:08
*** bhagyashris has joined #openstack-glance01:56
*** itlinux has joined #openstack-glance02:18
*** mhen has quit IRC02:27
*** brinzhang has quit IRC03:28
*** abhishekk has joined #openstack-glance04:07
*** itlinux has quit IRC04:11
*** khomesh has joined #openstack-glance04:16
*** khomesh has quit IRC04:16
*** itlinux has joined #openstack-glance04:43
*** udesale has joined #openstack-glance04:49
*** bhagyashris has quit IRC05:01
*** itlinux has quit IRC05:11
*** _alastor_ has joined #openstack-glance05:24
Liang__zuul seems abnormal these days, openstack-tox-functional-py35 always fails05:28
*** Liang__ is now known as LiangFang05:29
*** ratailor has joined #openstack-glance05:40
*** bhagyashris has joined #openstack-glance05:52
*** _alastor_ has quit IRC06:20
*** _alastor_ has joined #openstack-glance06:40
*** mosulica has joined #openstack-glance06:54
*** _alastor_ has quit IRC06:59
*** rcernin has quit IRC07:09
*** pcaruana has joined #openstack-glance07:12
*** Luzi has joined #openstack-glance07:33
*** _alastor_ has joined #openstack-glance07:35
*** _alastor_ has quit IRC07:40
*** mhen has joined #openstack-glance07:53
*** w|zzy has quit IRC07:56
abhishekkLiangFang, yes it is08:04
abhishekkI am trying to analyze but so far no luch08:04
abhishekks/luch/luck08:04
*** _alastor_ has joined #openstack-glance08:08
*** _alastor_ has quit IRC08:12
*** imacdonn has quit IRC08:23
*** imacdonn has joined #openstack-glance08:24
*** brinzhang has joined #openstack-glance08:45
*** brinzh has joined #openstack-glance08:48
*** brinzhang has quit IRC08:50
*** abhishekk is now known as abhishekk|lunch08:53
*** trident has quit IRC09:16
*** trident has joined #openstack-glance09:19
*** belmoreira has quit IRC09:22
*** belmoreira has joined #openstack-glance09:26
*** sayalilunkad has quit IRC09:31
*** markvoelker has joined #openstack-glance09:46
*** bhagyashris has quit IRC09:47
*** trident has quit IRC10:15
*** trident has joined #openstack-glance10:15
*** mvkr has quit IRC10:24
*** abhishekk|lunch has quit IRC10:29
*** w|zzy has joined #openstack-glance10:33
*** sayalilunkad has joined #openstack-glance10:35
*** mvkr has joined #openstack-glance10:56
*** LiangFang has quit IRC11:03
*** mvkr has quit IRC11:16
*** mvkr has joined #openstack-glance11:16
*** _alastor_ has joined #openstack-glance11:25
*** _alastor_ has quit IRC11:30
*** tobias-urdin is now known as tobias-urdin_afk11:41
*** tobias-urdin_afk is now known as tobias-urdin11:42
*** tobias-urdin is now known as tobias-urdin_afk11:43
*** markvoelker has quit IRC12:24
*** udesale has quit IRC12:25
*** udesale has joined #openstack-glance12:26
*** brinzh has quit IRC12:32
*** ratailor has quit IRC12:45
*** tobias-urdin_afk is now known as tobias-urdin12:53
openstackgerritGhanshyam Mann proposed openstack/glance master: Add irrelevant-files for integrated test jobs  https://review.openstack.org/62498313:01
*** MattMan_ has quit IRC13:02
*** MattMan_ has joined #openstack-glance13:02
*** markvoelker has joined #openstack-glance13:10
*** irclogbot_1 has quit IRC13:30
*** zul has quit IRC13:32
*** zul has joined #openstack-glance13:40
*** irclogbot_1 has joined #openstack-glance13:44
*** adam_zhang has joined #openstack-glance13:44
*** abhishekk has joined #openstack-glance13:45
*** irclogbot_1 has quit IRC13:52
*** Liang__ has joined #openstack-glance13:54
Liang__abhishekk: ok, thanks13:58
*** Liang__ is now known as LiangFang13:59
*** markvoelker has quit IRC14:03
*** irclogbot_1 has joined #openstack-glance14:08
*** irclogbot_1 has quit IRC14:27
*** _alastor_ has joined #openstack-glance14:33
*** irclogbot_1 has joined #openstack-glance14:33
*** markvoelker has joined #openstack-glance14:36
*** _alastor_ has quit IRC14:38
*** priteau has joined #openstack-glance14:42
*** abhishekk has quit IRC14:49
*** adam_zhang has quit IRC14:50
*** mosulica has quit IRC15:05
*** dpawlik has quit IRC15:06
*** itlinux has joined #openstack-glance15:06
*** dpawlik has joined #openstack-glance15:07
*** dpawlik has quit IRC15:07
*** markvoelker has quit IRC15:38
*** dpawlik has joined #openstack-glance15:40
*** dpawlik has quit IRC15:44
*** Luzi has quit IRC15:52
jmloweSo, can we talk about show_multiple_locations?16:15
*** LiangFang has quit IRC16:16
jmloweThe whole "This option will be removed in the Pike release or later because the same functionality can be achieved with greater granularity by using policies." doesn't really ring true as there are explicit checks for this config option to be set True in order to update an image location, this is part of the workflow for shelving when using ceph16:18
rosmaitajmlowe: yes, that statement is false16:19
jmlowenot to put too fine of a point on it, but why is my queens glance making false statements in its logs?16:20
rosmaitawe thought it was true at the time it was written16:21
rosmaitaand forgot to go back and patch the deprecation16:21
rosmaitawe still want to get rid of it, but it's going to be pretty complicated16:21
jmloweif you would be so kind, it might save the next person a few hours of troubleshooting16:23
rosmaitaok, do me a favor and check in some time tomorrow to make sure i do it16:24
jmloweok, will do, thanks16:24
rosmaitacool16:24
*** _alastor_ has joined #openstack-glance16:34
*** udesale has quit IRC16:41
*** mriedem has joined #openstack-glance16:42
mriedemsomeone should look at this http://logs.openstack.org/41/617941/31/gate/grenade-py3/7909f30/logs/screen-g-api.txt.gz#_Dec_13_14_43_21_41217216:42
mriedemthere is an infinite loop in the quota code16:42
mriedemFile "/opt/stack/new/glance/glance/quota/__init__.py", line 168 in __getattr__16:42
*** _alastor_ has quit IRC16:43
mriedemis that happening in a thread? if so, why?16:43
*** cdent has joined #openstack-glance16:51
mriedemrosmaita: ^16:54
mriedemlooks like this is probably contributing to gate failures16:54
mriedemhttp://status.openstack.org/elastic-recheck/#180806316:54
mriedemhmm, monotonic import was removed around the time this showed up b/c it wasn't used - does it monkey patch something on import?16:56
jokke_:o16:57
jokke_just trying to look into it. Seemed very odd as by the looks of it that code stuck looping has been pretty much untouched for years16:57
mriedemis that quota code getting hit in a thread? i tried following where that QuotaImageTagsProxy code gets used but got lost fast17:00
cdentsame17:00
*** abhishekk has joined #openstack-glance17:03
mriedemso what sets self.image.tags here? https://github.com/openstack/glance/blob/master/glance/quota/__init__.py#L34817:03
mriedemis that tags attribute itself an QuotaImageTagsProxy?17:03
cdentjokke_: you still looking/around?17:07
jokke_mriedem: I have no idea. Trying to figure it out myself atm. That onion layer model with 382 nested proxies is pain in the dick to debug17:07
cdentt-shirt17:08
mriedemyou might just need some penicilin17:08
jokke_mriedem: no what i need is army of great developers and 2 cycles to refactor all that crap out of glance ;)17:10
jokke_I think that ImageProxy.iamge.tags is coming from the database and is wrapped into the QuotaImageTagsProxy on row 34817:13
cdentthe __getattr__ is not hit by unit tests17:17
cdentoh wait, yes it is, sorry, I can't read17:17
mriedemand the ImageProxy.image is an ImageProxy which wraps a glance.domain.Image object17:18
mriedemwhich contains db sqla objects17:18
mriedemactually tags looks like it'd be a list of strings from image_tag_get_all in the sqlalchemy api code17:18
mriedembut if QuotaImageTagsProxy.tags is a list, how is getattr(self.tags, name) working?17:20
abhishekkjokke_, I am in to get rid of onion :D17:22
cdentmriedem, jokke_ : For the looping behavior that we're seeing to happen, the easy way to trigger it is for the self.tags on QuotaImageTagsProxy to be deleted. if that happens there is a loop17:33
cdentso one option is to inject a hasattr there and guard against that17:35
*** zul has quit IRC17:35
cdentof course why self.tags would ever go awry is unclear17:35
cdentI gotta get dinner17:36
abhishekkjokke_, rosmaita http://lists.openstack.org/pipermail/openstack-discuss/2018-December/000911.html17:40
*** abhishekk has quit IRC17:41
cdentmriedem: re ^ dec 7th is the day the monotonic removal merged17:42
cdentwhich makes little sense, but...17:42
cdenttwo other changes merged as well17:43
cdentwhen did this bug with the bad response in the proxy start showing up?17:43
mriedemaround dec 717:43
mriedemhttp://status.openstack.org/elastic-recheck/#180806317:43
mriedemthe other changes were removing i18n lazy translation (not used) and adding the upgrade status cli17:44
mriedemneither of which should have anything to do with this17:45
cdentthe functional tests do some thread manipulation, so perhaps both problems are caused by the same thing17:46
cdenti haven't got a working py35 env handy, but i'll see if functional-py37 tests fail in the ways abhishekk is describing17:47
cdentand then put monotonic back17:47
* jokke_ is very confused how the monotonic or rather lack of it can cause this17:55
cdentindeed, but we're grasping at straws17:57
cdentin 3.7 there's no difference17:57
cdentI can't repeat abhishekk's issue in 3.7, and don't have a 3.517:58
* cdent is at a loss for the time being17:58
mriedemi can try glance functional on py3517:58
jokke_we do depend on it 'though18:01
jokke_glance/common/timeutils.py:from monotonic import monotonic as now  # noqa18:01
jokke_lower-constraints.txt:monotonic==0.618:01
jokke_requirements.txt:monotonic>=0.6 # Apache-2.018:01
cdentjokke_: sounds like your checkout is out of date?18:01
cdentregardless of the cause of the problem, it is the case that the __getattr__ code in QuotaImageTagsProxy is unsafe, and needs a guard18:02
mriedemjokke_: yeah you need to rebase18:02
cdent__getattr__ always needs a guard18:02
jokke_indeed ... I think I even approved that change18:03
jokke_now thinking of it18:03
*** MattMan has joined #openstack-glance18:03
*** MattMan_ has quit IRC18:03
mriedemso glance functional py35 did fail for me18:05
* cdent holds breath18:05
mriedemfiguring out wtf failed is another matter...18:05
mriedem{5} glance.tests.functional.v2.test_images.TestImagesWithRegistry.test_owning_tenant_can_delete_image [] ... inprogress18:06
mriedemanywho, let me revert monotonic and try again18:06
*** gyee has joined #openstack-glance18:09
jokke_sure interested to see if that was the case really. If so I would really like to understand wtf breaks it18:09
jokke_eventlet added external dependency for monotonic on 0.24.018:15
mriedemwith the monotonic revert the functional py35 run passed18:17
mriedemi'll run it again18:17
jokke_I'm just wondering how that patch got through if it breaks eventlet and our tests18:17
mriedemyeah idk the patch ran the func 35 job18:18
mriedemhttp://logs.openstack.org/64/615664/3/check/openstack-tox-functional-py35/a59717d/tox/18:18
mriedemhmm, monotonic was installed anyway http://logs.openstack.org/64/615664/3/check/openstack-tox-functional-py35/a59717d/tox/functional-py35-2.log18:18
mriedemsomething transitive?18:19
jokke_http://logs.openstack.org/64/615664/3/check/openstack-tox-functional-py35/a59717d/tox/functional-py35-3.log18:20
jokke_yeah just looking the same18:20
jokke_so educated guess, some dependency was still depending on monotonic and it got pulled in even we did not explicitely list it, then that dependency dropped the need as well just after we got rid of it18:21
mriedem2nd local func py35 run failed18:22
mriedemso could just be flaky tests18:22
jokke_did that fail with the same sig as before?18:22
mriedemumm18:22
mriedem{4} glance.tests.functional.v2.test_images.TestImages.test_owning_tenant_can_delete_image [] ... inprogress18:23
mriedemyes?18:23
mriedemhttp://paste.openstack.org/show/737247/18:23
mriedemthat's just part of the noise18:23
mriedemi don't know where the actual failures are18:23
mriedemthe job doesn't dump a summary of what tests failed18:23
cdentmriedem: are you seeing the assertError after fork in _threading?18:24
mriedemdefinitely looks like should be using wsgi_intercept rather than eventlet18:24
mriedemi do see18:26
mriedem{1} subunit.parser [0.000232s] ... FAILED18:26
mriedemi don't see _threading18:26
mriedembut there are a ton of deprecation warnings cluttering up my console18:26
cdentin 3.7 i was seeing many of these: http://paste.openstack.org/show/737248/18:27
mriedemanyway, this is with monotonic imported so i don't think that matters18:27
* cdent nods18:27
mriedemno i don't see those18:27
* mriedem gets lunch18:27
*** _alastor_ has joined #openstack-glance18:31
*** _alastor_ has quit IRC18:39
*** mvkr has quit IRC18:40
*** jmlowe has quit IRC18:47
openstackgerritErno Kuvaja proposed openstack/glance master: DO NOT MERGE  https://review.openstack.org/62508518:55
openstackgerritChris Dent proposed openstack/glance master: Guard __getattr__ on QuotaImageTagsProxy  https://review.openstack.org/62508619:04
cdentjokke_, mriedem : I need to do something other stuff now, but sticking that ^ in somewhere may help at least debug the problem a bit better19:05
*** jmlowe has joined #openstack-glance19:12
jokke_cdent: thanks a million!19:16
*** mvkr has joined #openstack-glance19:21
openstackgerritMatt Riedemann proposed openstack/glance master: Ignore MoxStubout deprecation warnings  https://review.openstack.org/62509219:41
mriedemlet's have some log sanity ^19:41
*** pcaruana has quit IRC19:47
jokke_mriedem: could you do me a favor and try to run the functional-py35 with oslo.policy!=1.43.1?20:02
mriedemsure20:04
jokke_it was released around the same time, knowing our policies and how dodgy that piece of kode looks like and the oslo policy starting to do deepcopy on target, might be just the key here, not the monotonic removal20:06
jokke_s/kode/code/20:06
mriedemjokke_: i still hit this http://paste.openstack.org/show/737259/20:11
mriedemoh wait a minute,20:11
mriedemit looks like my blacklist on oslo.policy didn't work20:11
mriedemweird,20:12
mriedem+oslo.policy>=1.30.0,!=1.43.1 # Apache-2.020:12
mriedemanyway i'll do it from within the venv20:12
*** priteau has quit IRC20:15
jokke_yeah, my test patch didn't do it in the gate either :(20:16
mriedempassed20:16
mriedemrunning again20:16
mriedemnot much in here https://github.com/openstack/oslo.policy/compare/1.43.0...1.43.120:19
mriedemunless https://github.com/openstack/oslo.policy/commit/b9fd10e2612f26c93d49c168a0408aba6d20e5bf20:19
jokke_Well that target deepcopy got me worried with how that nesting works20:20
mriedemyeah so maybe the target is one of these proxy object?20:20
jokke_exactly20:20
mriedemfunc passed again20:20
mriedemi think that's probably it20:20
mriedemcdent: for your pleasure ^20:20
jokke_mriedem: I totally owe you a beverage next time we meet20:21
jokke_thanks for your help20:21
cdenthrmm. are we thinking that's both problems? or just the 3.5 being a dick?20:22
mriedemnot sure about 3.520:23
mriedemor how that plays into it20:23
mriedemi can pull cdent's change down and run that with func py35 with oslo.policy 1.43.1 and see if that fixes it20:23
cdentmy change isn't a fix: it's simply a "make a problem more tractable"20:24
jokke_cdent: I'm gonna follow that up when we get the gate moving again to make sure we catch stuff easier20:25
jokke_the problem is that I have currently no idea how else to fix this than block using 1.43.1 oslo.policy and prevent that deepcopy to be done20:26
cdentis the oslo.policy fix likely to have any impact on https://bugs.launchpad.net/glance/+bug/1808063 ?20:27
openstackLaunchpad bug 1808063 in Glance "glanceclient.exc.HTTPBadGateway: 502 Proxy Error during server snapshot - infinite loop in File "/opt/stack/new/glance/glance/quota/__init__.py", line 168 in __getattr__" [High,Confirmed]20:27
jokke_cdent: yes based on mriedem's couple of manual test runs it fixes that20:29
jokke_or causes that to be correct20:30
cdentI thought we weren't seeing that infinite loop problem localy, just the functional tests failing in the way that abhishekk's described in his email message?20:30
mriedemyes the latter for me20:31
cdentoh, nevermind, I think I get it from the description mriedem has written on the bug20:31
mriedemi pulled cdent's change down and ran func py35 and they passed20:32
mriedemwith oslo.policy 1.43.120:32
cdentor not20:32
* cdent still confused20:32
cdenta deepcopy on the nested object would definitely mess things up if self.tags needed to be copied20:33
cdentuntangling that is going to be challenging20:35
jokke_so if the problem abhishek described is triggered by excessive logging/stdout this would explain why we are constantly hitting it as that infinite loop seems to be hammering the outputs heavily20:35
jokke_cdent: indeed ... that's what I'm mostly afraid of20:36
jokke_and taken that our policy enforcement is down from the API layer there is high likelyhood that these proxy objects are the target before the policy enforcer is called20:37
cdentsigh. and for the integrated gate we have to not use the newer oslo.policy for the entire install.20:39
* cdent must retire for tonight20:42
cdentand the rest of the year, I'm not very present, but will try to keep tabs20:43
jokke_ https://review.openstack.org/625097 that should help ... if that doesn't unblock the gate we have issues likely somewhere else, if it does, we know where we need to look at for solutions20:44
cdentIf that one object is the only place that uses __getattr__ we might be able to hack something in there to use __getattribute__ when 'name' == 'tags'20:46
cdentthere are two other places, but they look like they may not be a problem20:47
* cdent tries it20:49
*** lpetrut has joined #openstack-glance20:53
openstackgerritChris Dent proposed openstack/glance master: Make QuotaImageTagsProxy deep-copyable  https://review.openstack.org/62511420:59
cdentjokke_, mriedem : i reckon that should fix it, with olso.policy 1.43.1, but I can't trigger the error for myself (my 3.5 install on this machine is busted)20:59
cdentalso, I keep trying to step away and getting sucked back in21:00
cdentthe above doesn't include tests because of needing to step away21:00
*** jmlowe has quit IRC21:01
jokke_cdent: Thanks, lets see what zuul says21:01
*** mriedem has quit IRC21:02
*** markvoelker has joined #openstack-glance21:11
*** jmlowe has joined #openstack-glance21:21
openstackgerritChris Dent proposed openstack/glance master: Make QuotaImageTagsProxy deep-copyable  https://review.openstack.org/62511421:25
openstackgerritChris Dent proposed openstack/glance master: Make QuotaImageTagsProxy deep-copyable  https://review.openstack.org/62511421:25
*** jmlowe has quit IRC21:26
cdentfixing commit message ^21:27
*** tobias-urdin has quit IRC21:32
*** jmlowe has joined #openstack-glance21:50
openstackgerritMatt Riedemann proposed openstack/glance master: Fix DeprecationWarnings for RequestContext.tenant/user usage  https://review.openstack.org/62512521:55
*** lpetrut has quit IRC22:00
*** markvoelker has quit IRC22:06
*** rcernin has joined #openstack-glance22:21
*** itlinux has quit IRC22:36
*** _alastor_ has joined #openstack-glance23:30
*** w|zzy has quit IRC23:41
*** w|zzy has joined #openstack-glance23:43
*** w|zzy has quit IRC23:47
*** w|zzy has joined #openstack-glance23:48

Generated by irclog2html.py 2.15.3 by Marius Gedminas - find it at mg.pov.lt!