Monday, 2014-02-10

*** rongze has joined #openstack-ironic00:51
*** rongze has quit IRC00:55
*** yongli has joined #openstack-ironic00:57
*** nosnos has joined #openstack-ironic01:12
*** nosnos_ has joined #openstack-ironic01:21
*** nosnos_ has quit IRC01:21
*** nosnos has quit IRC01:22
*** nosnos_ has joined #openstack-ironic01:22
*** dkehn__ has quit IRC01:24
*** dkehn__ has joined #openstack-ironic01:25
*** Haomeng has joined #openstack-ironic01:37
*** derekh has quit IRC01:41
*** rongze has joined #openstack-ironic01:51
*** rongze has quit IRC01:56
*** yongli has quit IRC02:31
*** dkehn__ is now known as dkehn_02:45
openstackgerritJeremy Stanley proposed a change to openstack/ironic: Remove tox locale overrides  https://review.openstack.org/7222203:03
openstackgerritJeremy Stanley proposed a change to openstack/python-ironicclient: Remove tox locale overrides  https://review.openstack.org/7223703:10
*** jbjohnso has quit IRC03:20
*** jbjohnso has joined #openstack-ironic03:20
*** bearhands is now known as comstud03:29
*** harlowja is now known as harlowja_away03:30
*** rongze has joined #openstack-ironic03:41
*** rongze has quit IRC04:50
*** rongze has joined #openstack-ironic04:50
*** rongze has quit IRC04:55
*** rongze has joined #openstack-ironic05:22
*** rongze has quit IRC05:27
*** coolsvap has joined #openstack-ironic05:38
*** shawal has joined #openstack-ironic05:55
*** nosnos has joined #openstack-ironic05:56
*** rongze has joined #openstack-ironic05:56
*** nosnos has quit IRC05:57
*** nosnos has joined #openstack-ironic05:58
*** nosnos has quit IRC05:58
*** nosnos has joined #openstack-ironic05:59
*** nosnos_ has quit IRC05:59
openstackgerritJenkins proposed a change to openstack/ironic: Imported Translations from Transifex  https://review.openstack.org/7119206:06
*** shawal has quit IRC06:37
*** shawal has joined #openstack-ironic06:43
*** shawal has quit IRC06:44
*** shawal has joined #openstack-ironic06:45
*** nosnos has quit IRC06:47
*** nosnos_ has joined #openstack-ironic06:48
*** saju_m has joined #openstack-ironic06:53
*** saju_m has quit IRC07:00
*** killer_prince has quit IRC07:03
*** saju_m has joined #openstack-ironic07:16
*** loki_ has joined #openstack-ironic07:16
*** igor has joined #openstack-ironic07:16
*** igor has quit IRC07:20
*** igor has joined #openstack-ironic07:21
GheRiveromorning all07:33
HaomengGheRivero: morning:)07:37
*** aignatov_ is now known as aignatov07:37
*** ifarkas has joined #openstack-ironic07:44
*** nosnos_ has quit IRC08:02
*** nosnos has joined #openstack-ironic08:02
*** ekarlso has quit IRC08:04
*** lsmola has joined #openstack-ironic08:05
*** ekarlso has joined #openstack-ironic08:05
*** mdurnosvistov_ has joined #openstack-ironic08:09
*** ekarlso has quit IRC08:12
*** coolsvap1 has joined #openstack-ironic08:13
*** ekarlso has joined #openstack-ironic08:13
*** coolsvap has quit IRC08:17
*** pleia2 has quit IRC08:21
*** romcheg1 has joined #openstack-ironic08:22
*** pleia2 has joined #openstack-ironic08:23
*** mdurnosvistov_ has quit IRC08:26
*** coolsvap1 has quit IRC08:33
*** dshulyak has joined #openstack-ironic08:48
*** jistr has joined #openstack-ironic08:49
*** yuriyz has joined #openstack-ironic08:54
*** shawal has quit IRC09:06
*** coolsvap has joined #openstack-ironic09:08
*** derekh has joined #openstack-ironic09:08
*** shawal has joined #openstack-ironic09:09
*** mdurnosvistov has quit IRC09:18
*** mdurnosvistov has joined #openstack-ironic09:18
*** athomas has joined #openstack-ironic09:20
*** lucasagomes has joined #openstack-ironic09:22
*** coolsvap1 has joined #openstack-ironic09:32
*** coolsvap has quit IRC09:35
*** pradipta` has joined #openstack-ironic09:50
*** pradipta has quit IRC09:54
*** mdurnosvistov has quit IRC10:02
*** mdurnosvistov has joined #openstack-ironic10:03
*** rongze has quit IRC10:22
*** aignatov is now known as aignatov_10:22
*** aignatov_ is now known as aignatov10:23
*** jrist has quit IRC10:24
*** ifarkas has quit IRC10:34
*** ifarkas has joined #openstack-ironic10:35
*** jrist has joined #openstack-ironic10:35
*** coolsvap_ has joined #openstack-ironic10:43
*** rongze has joined #openstack-ironic10:46
*** coolsvap1 has quit IRC10:46
*** coolsvap1 has joined #openstack-ironic10:48
*** coolsvap_ has quit IRC10:51
*** coolsvap has joined #openstack-ironic10:52
*** coolsvap1 has quit IRC10:53
openstackgerritGhe Rivero proposed a change to openstack/ironic: Rename and update ironic-deploy-helper rootwrap  https://review.openstack.org/6834010:57
*** loki_ has quit IRC11:31
*** ifarkas_ has joined #openstack-ironic11:47
*** ifarkas has quit IRC11:51
*** pradipta` is now known as pradipta11:55
*** pleia2 has quit IRC12:01
*** pleia2 has joined #openstack-ironic12:02
*** pleia2 has quit IRC12:07
*** pleia2 has joined #openstack-ironic12:08
*** athomas has quit IRC12:37
*** athomas has joined #openstack-ironic12:39
*** coolsvap has quit IRC12:50
*** mgoddard has joined #openstack-ironic12:52
*** dshulyak has quit IRC12:53
*** nosnos_ has joined #openstack-ironic12:58
*** killer_prince has joined #openstack-ironic12:59
*** nosnos has quit IRC13:01
*** romcheg1 has quit IRC13:02
*** lucasagomes is now known as lucas-hungry13:02
*** max_lobur_afk is now known as max_lobur13:03
*** nosnos_ has quit IRC13:03
*** dshulyak has joined #openstack-ironic13:07
*** nosnos has joined #openstack-ironic13:07
*** ndipanov has joined #openstack-ironic13:11
*** saju_m has quit IRC13:12
*** jdob has joined #openstack-ironic13:20
*** Alexei_987 has joined #openstack-ironic13:25
*** romcheg1 has joined #openstack-ironic13:30
openstackgerritAndrey Kurilin proposed a change to openstack/python-ironicclient: Reuse exceptions from common code  https://review.openstack.org/7150013:33
max_loburgood afternoon lucas-hungry13:38
max_loburFYI https://bugs.launchpad.net/ironic/+bug/127844113:38
max_loburRFC says that add op on existing property should silently replace the old value :)13:38
max_loburlooks not very handy to me, but we have to follow RFC :)13:39
*** romcheg has quit IRC13:46
*** max_lobur is now known as max_lobur_afk13:47
*** romcheg has joined #openstack-ironic13:48
*** rongze has quit IRC13:52
*** shawal has quit IRC13:53
*** aignatov is now known as aignatov_13:56
lucas-hungrymax_lobur_afk, afternoon :)14:01
lucas-hungrymax_lobur_afk, +1, we need to change that14:01
*** lucas-hungry is now known as lucasagomes14:01
*** romcheg1 has quit IRC14:07
*** max_lobur_afk is now known as max_lobur14:27
romchegHi folks!14:28
GheRiveromax_lobur: nice! although not very intuitive14:29
*** rongze has joined #openstack-ironic14:29
romchegI tried to run unit tests on the latest master with a fresh venv but some of them fail14:29
romchegDoes anyone have the same problem?14:29
GheRiveroromcheg: not this morning14:29
*** jistr has quit IRC14:29
max_loburmorning/afternoon all14:30
romchegMaybe the problem is that I launch tests using nose14:30
max_loburromcheg, I had problems last friday, tox was not able to rebuild env14:30
max_loburtoday I started it again, didn't finish yet14:31
GheRiverorebuilding again... just in case14:32
*** aignatov_ is now known as aignatov14:33
*** sirushti has left #openstack-ironic14:35
lucasagomesmorning GheRivero romcheg max_lobur :)14:37
lucasagomesor afternoon ^^14:37
romchegMorning lucasagomes14:37
romchegHow are you?14:37
max_loburis jenkins currently starts another round of checking after each comment to the patch?14:37
lucasagomesromcheg, all is well, no more jetlag :D urself?14:38
lucasagomesmax_lobur, yea I kinda noticed that as well, weird isn't it?14:38
romchegLooking forward for my vacation next week :)14:38
lucasagomesidk why it's doing that14:38
lucasagomesromcheg, oh niiice!14:39
lucasagomesromcheg, r u going to travel?14:39
romcheglucasagomes: Yes, this time it will be Poland14:39
*** jistr has joined #openstack-ironic14:39
lucasagomesromcheg, awesome! (only being to krakow but really liked it)14:40
romchegAlthough it's close to Ukraine and we have a lot of common things in culture and language I've never seriously been there14:40
max_loburlucasagomes, yep, looks not very optimal :)14:40
lucasagomesromcheg, heh I was close to ask about the lang heh14:41
romcheglucasagomes: I mostly understand written and spoken Polish but can say nothing :)14:42
lucasagomesthe only thing I remember in polish is piwo (beer)14:42
max_loburlol14:42
lucasagomesromcheg, I see :D14:43
romcheglucasagomes: Just like I do with German. I can only order "two more beers" and then ask where the restroom is :)14:44
max_loburin russian / ukrainian it's pivo, so you can count to have a beer once you're here :)14:44
lucasagomesmax_lobur, hah thanks for that, I think I'm ready to survive in ukraine/russia now :D14:46
*** ndipanov has quit IRC14:47
NobodyCamGood morning Ironic14:47
lucasagomesNobodyCam, morning! how was the weekend? loads of pivo?14:47
max_lobur:D14:47
NobodyCam:-p14:47
romchegMorning NobodyCam14:47
NobodyCamwas noce and slow14:47
NobodyCammorning lucasagomes and romcheg14:48
NobodyCamnice even14:48
GheRiveropivo? Same in crotatian14:48
romchegI think it's the same in the most of Eastern Europe14:49
max_loburlucasagomes, how about to film a series of shows surviving in various counties of the world ?14:49
max_loburBeer Grylls14:49
max_lobur:D14:49
lucasagomeslol14:49
romchegBeer + Grills14:49
*** matsuhashi has joined #openstack-ironic14:49
*** shortstop has joined #openstack-ironic14:49
max_loburhah, indeed :D14:49
max_loburmorning NobodyCam14:50
romchegmax_lobur, lucasagomes: someone has done that already http://www.feorag.com/assets_c/2013/07/Eurobeer-map-919.html14:51
max_loburlol14:51
GheRiveronice! I want the android app for it :)14:52
max_lobur:D14:52
lucasagomescool!14:53
lucasagomesGheRivero, http://ukdataexplorer.com/european-translator/?word=beer14:54
GheRiveroromcheg: just tested with a fresh env and no problem with the tests15:00
*** saju_m has joined #openstack-ironic15:02
*** saju_m has quit IRC15:03
*** saju_m has joined #openstack-ironic15:04
openstackgerritEugeniya Kudryashova proposed a change to openstack/python-ironicclient: Use HTTPClient from common Oslo code  https://review.openstack.org/6428615:06
*** max_lobur is now known as max_lobur_afk15:07
*** rwsu has joined #openstack-ironic15:17
*** max_lobur_afk is now known as max_lobur15:18
romchegGheRivero: I tried it with testr and it worked15:19
romchegnose failed15:19
max_loburyep, my tox -e py26 just passed too15:20
*** matty_dubs|gone is now known as matty_dubs15:23
*** rongze has quit IRC15:25
openstackgerritAndrey Kurilin proposed a change to openstack/python-ironicclient: Sync latest code and reuse exceptions from oslo  https://review.openstack.org/7150015:27
openstackgerritYuriy Zveryanskyy proposed a change to openstack/ironic: Add timeout for waiting callback in PXE driver  https://review.openstack.org/7239515:32
*** rloo has joined #openstack-ironic15:32
*** matsuhashi has quit IRC15:37
*** nosnos has quit IRC15:37
*** nosnos has joined #openstack-ironic15:37
*** matsuhashi has joined #openstack-ironic15:37
*** saju_m has quit IRC15:37
*** saju_m has joined #openstack-ironic15:39
NobodyCamlucasagomes: I failed when I pushed up the new patch for 71026.. I tried to set dependency on 72007 but seems it do what I thought15:51
NobodyCamanyhow have you seen https://review.openstack.org/#/c/72007/15:51
NobodyCam:-p15:51
lucasagomesNobodyCam, lemme take a look :D15:52
lucasagomesnice!15:53
lucasagomesNobodyCam, I can try to set the dependency15:53
NobodyCam:-p15:53
lucasagomesahh15:53
lucasagomesthe problem is, the driver would need to depend on that15:54
NobodyCamnot sure what I did wrong15:54
NobodyCamahh15:54
lucasagomesor not hmm (thinking)15:54
lucasagomesthe driver also should depend on the host manager patch no?15:54
NobodyCamI know there are issues with multi dependencies15:55
lucasagomesyup15:55
NobodyCambrb .. mak'n second cup of joe15:55
*** rsacharya has joined #openstack-ironic15:56
*** rongze has joined #openstack-ironic15:56
openstackgerritRohan Kanade proposed a change to openstack/ironic: Implement the SeaMicro Power driver  https://review.openstack.org/7071915:58
openstackgerritRohan Kanade proposed a change to openstack/ironic: Implements SeaMicro VendorPassThru functionality  https://review.openstack.org/7072015:58
*** aignatov is now known as aignatov_16:02
*** rongze has quit IRC16:06
*** nosnos has quit IRC16:06
*** matsuhashi has quit IRC16:07
*** ifarkas_ has quit IRC16:12
*** aignatov_ is now known as aignatov16:16
*** thedodd has joined #openstack-ironic16:19
*** mrda_away is now known as mrda16:22
NobodyCamwalkies time...bbiafm16:30
*** jdob has quit IRC16:32
*** jdob_ has joined #openstack-ironic16:32
*** ndipanov has joined #openstack-ironic16:33
*** jistr has quit IRC16:33
*** jistr has joined #openstack-ironic16:34
openstackgerritAndrey Kurilin proposed a change to openstack/python-ironicclient: Sync cliutils from oslo  https://review.openstack.org/7241716:44
openstackgerritAndrey Kurilin proposed a change to openstack/python-ironicclient: Reuse cliutils from common code  https://review.openstack.org/7241816:45
*** igor has quit IRC16:47
*** igor has joined #openstack-ironic16:47
lucasagomesNobodyCam, have you seem it? http://paste.openstack.org/show/63930/16:48
* NobodyCam looks16:49
lucasagomestrying to generate a new sample conf for nova16:49
lucasagomesso it won't fail on the gate16:50
NobodyCamlucasagomes: no I have not seen that one16:50
lucasagomesNobodyCam, hmm when you generated ur config file16:50
lucasagomesit just worked?16:50
lucasagomeswondering if I need to be inside a venv somehow16:50
NobodyCamlast time ya..16:50
NobodyCamoh did you try source .tox/blah/blah/actavate16:51
*** igor has quit IRC16:52
lucasagomesI think that's what I'm missing16:53
devanandamorning, all!16:58
* devananda reads scrollback while making second cup of coffee16:58
*** rongze has joined #openstack-ironic16:58
*** saju_m has quit IRC16:59
NobodyCamgood morning devananda :)17:00
lucasagomesmorning devananda17:02
mrdamorning!17:03
NobodyCammorning mrda :)17:03
*** rongze has quit IRC17:04
*** saju_m has joined #openstack-ironic17:04
lucasagomesmorning mrda17:04
max_loburmorning mrda and devananda17:10
*** rsacharya has quit IRC17:11
devanandalucasagomes, max_lobur - did you see my patch to add our API to apache?17:12
devanandai had to do that in order to test mutlithreaded conductor17:12
lucasagomesdevananda, oh haven't seem that yet17:13
lucasagomeswill take a look17:13
devanandaafaict, ironic-api is single-threaded because it's based on wsgiref. i was not able to finda  way to make wsgiref multithread17:13
devanandaand other services' APIs are typicallyd eployed under Apache in production environments anyway17:13
*** coolsvap has joined #openstack-ironic17:14
devanandahttps://review.openstack.org/#/c/72069/17:15
*** ifarkas_ has joined #openstack-ironic17:15
*** matty_dubs is now known as matty_dubs|lunch17:16
max_loburdevananda, I haven't yet too17:18
max_loburwill take a look today17:18
max_lobursingle threaded doesn't mean single-greenthreaded right?17:19
*** saju_m has quit IRC17:19
devanandamax_lobur: in all my testing, the API was serializing requests17:20
devanandaif I put a time.sleep() inside of the ConductorManager, the API will block17:20
devanandathis poses a problem for testing your patch 6913517:21
max_loburin other words - currently it's queues requests instead of serving parallel, right?17:21
devanandayes17:21
devanandaironic-api seems to be queing incoming requests and waiting (blocking) on RPC calls17:21
*** digambar has joined #openstack-ironic17:22
NobodyCamopen question, Anyone have any thing that needs to go on the agenda?17:22
devanandaeven with greenthreads, it probably shouldn't be doing that, but for taking advantage of multi-CPU servers in production, folks will want to use Apache anyway17:22
max_loburyea, looks not good17:22
max_loburdevananda, +17:22
devanandaNobodyCam: I'd like us to talk about I3, feature freeze, what work / reviews we need to prioritize, and what folks think we can realistically land when17:24
*** Alexei_987 has quit IRC17:24
NobodyCamdevananda: ack17:24
*** aignatov is now known as aignatov_17:27
* mrda needs to schedule coming to the meeting17:30
*** martyntaylor has joined #openstack-ironic17:30
NobodyCammrda: We aould love to have you there17:31
NobodyCammrda: agenda can always be found at : https://wiki.openstack.org/wiki/Meetings/Ironic#Agenda_for_next_meeting17:32
*** saju_m has joined #openstack-ironic17:32
*** romcheg1 has joined #openstack-ironic17:33
NobodyCamgitt'n mo coffee17:33
* mrda it's ok this week (am in Utah) but going forward it's 5:30am for me (home town is ADL)17:33
mrdabut I'll try and make it :)17:34
devanandamax_lobur: on 69135, let's extrapolate this to all the other async operations we do today17:34
devanandamax_lobur: and let's think, what is the cost & the benefit to calling validate() in each of them?17:34
*** jistr has quit IRC17:34
devanandamax_lobur: eg, just to turn the power on/off, do we really need to tickle the node first? with SSHPower, this will make an SSH connection and close it, just to test connectivity17:35
devanandamax_lobur: but we'd know about that failure during the change_power_staet anyway, and log it in node.last_error17:35
*** jistr has joined #openstack-ironic17:35
lucasagomesdevananda, on ur apache patch, I see ceilometer has something similar to that, and they also have a documentation teaching hw to install the api  behind mod_wsgi (https://github.com/openstack/ceilometer/blob/master/doc/source/install/mod_wsgi.rst)17:36
*** romcheg1 has quit IRC17:37
devanandamax_lobur: and same for IPMI power drivers. we're putting several TCP RTTs in the synchronous part of "tell the conductor to start this async work"17:37
devanandamax_lobur: and i dont think we're gaining anything from it17:37
lucasagomesdevananda, also the name apache2, it's debianism (on redhat systems it would be called httpd, /etc/httpd/...)17:37
devanandamax_lobur: L45 of https://review.openstack.org/#/c/69135/4/ironic/conductor/utils.py17:38
max_loburdevananda, I agree, I was going to start refactoring other ones once we agreed that 69135 is good17:38
* max_lobur looking17:38
devanandalucasagomes: yep, and yep17:39
mrdaHere's an easy review for some +2's :-)  https://review.openstack.org/#/c/71486/17:39
lucasagomesdevananda, heh mind copying there doc to our doc?17:39
lucasagomeson that patch I think it's quite useful17:40
max_loburdevananda, when we discussed this the last time17:40
max_loburI think our main point for synchronous validation was https://github.com/openstack/ironic/blob/master/ironic/api/controllers/v1/node.py#L121-L12817:40
devanandamax_lobur: yep17:41
max_loburso this should still be done synchronously right?17:42
max_loburI was going to move these lines to validation as well17:42
devanandamax_lobur: if we remove that check from the API side, and DONT add it anywhere else, what happens ...17:42
max_lobur(If we don't have them there yet)17:42
devanandamax_lobur: i think all we need is user to get synchronous feedback as to whether the task_manager lock was acquired or not17:43
devananda"did my request get received and started? if not, retry"17:43
max_loburwell, partially17:44
max_loburfailed validation doesn't mean started..17:44
max_loburor it does :)17:44
devanandathere's multiple "validation" that we could be referring to here, so lets clarify17:44
max_loburneed to decide what meaning do we want17:44
devanandadriver.power.validate --> can this node be controlled. if this is going to fail during driver.power.change_power_state, it should definitely go in last_error17:45
max_loburk, so driver.power.validate should be async17:45
devanandabecause we may lose that ability at any point in time, even if driver.power.validate() passed 1 second ago, due to network failure, etc17:45
devananda"is the input correct?" --> API should still enforce input validation, eg. for the requested power state, etc17:46
max_loburhmm true17:46
lucasagomesI think the only validation that _really_ needs to be sync is the vendor interface17:46
max_loburdevananda, +17:46
lucasagomesthe others can be async17:46
lucasagomeswe were thinking about making that sync because it's more convinient (better feedback for the client)17:47
max_loburRE because we may lose that ability at any point in time, even if driver.power.validate() passed 1 second ago, due to network failure, etc17:47
lucasagomesbut they could be async and use the last error (both power and provision)17:47
max_loburthis may be applied to both sync and async validation17:47
NobodyCamanother easy one looking for a +a https://review.openstack.org/#/c/7078917:48
*** mdurnosvistov_ has joined #openstack-ironic17:48
max_loburnever possible to guarantee that if server says it has started a task then it will definitely finish it. Anything can happen17:48
devanandalucasagomes: i agree that vendor interface needs to do a degree of synchronous validation -- is the request a known method, with the appropriate args, etc17:49
devanandalucasagomes: eg. the stuff I added in the multiplex example17:49
max_loburlucasagomes, devananda +17:49
lucasagomesdevananda, yes17:49
devanandalucasagomes: but I don't think any of the driver interfaces should, while holding a lock, reach out and tickle the machine to validate that it can perform something, then in the same lock, go do it17:49
lucasagomesbut if we make power + provision async17:49
devanandawe should just do it -- and handle the error reasonably17:50
lucasagomesdo you we need to use the greenthreads approach at all? or just use cast()?17:50
devanandabecause ultimately, there's no guarantee that, even in the same lock, between validate() and do() it's still going to work17:50
*** jistr has quit IRC17:50
devanandamax_lobur: right - can't guarantee it will finish17:50
devanandamax_lobur: the point of using threadpool is to guarantee to user that work *started*17:51
devanandauser should check return code17:51
devananda202 = ok, work started17:51
lucasagomesNobodyCam, I think u can go ahead and +a that :)17:51
lucasagomesNobodyCam, there's 2 +2 now17:52
NobodyCamYA just wanted the newbees to have a chance :-p17:52
max_lobur:)17:52
lucasagomesNobodyCam, ah, fair enough :)17:52
devananda409 - temporary conflict. please retry17:53
max_lobur3rd +2 landed17:53
devanandamax_lobur: so this way, clients like the nova driver can handle when there is a temporary conflict with eg. a periodic_task17:53
NobodyCammax_lobur: feel the power :-p lol....17:53
max_lobur:D17:54
max_loburdevananda, so, anyway we still have some parts of validation for sync right?17:54
max_loburlike if rpc_node.target_power_state is not None:17:55
max_loburor vendor methods17:55
devanandayep17:55
max_loburmaybe to have have two-stage validation in conductor17:55
lucasagomesNobodyCam, Ironic driver has a new patch-set #20, with all tests and some refactors17:57
mrdaNobodyCam and lucasagomes: you guys are aweseome! \o/17:57
lucasagomesNobodyCam, tested here and it's working, so I'll leave it open for reviews17:58
NobodyCamlucasagomes: AWESOME!!!!!17:58
mrdaand you too devananda :)17:58
*** igor_ has joined #openstack-ironic17:58
*** matty_dubs|lunch is now known as matty_dubs17:58
*** harlowja_away is now known as harlowja17:58
*** martyntaylor has quit IRC17:59
max_loburdevananda, lucasagomes so for change_power_state:17:59
lucasagomesmrda, :D thank u for fixing that!17:59
max_lobur1. if rpc_node.target_power_state is not None: - sync17:59
max_lobur2. Anything else - async17:59
max_loburmakes sense?17:59
lucasagomesmakes sense... just wondering about the complexity we are adding in order to make a simply check like that (checking whether the target_power_state is None)18:00
max_loburthe main point of CALL is lock tracking18:00
max_loburthat's why we agree on that complexity18:01
max_loburor trying to agree :)18:01
devanandayep18:01
lucasagomesyup yea I understand and agree as well18:01
devanandamain point for me is: return 202 to user when a conductor has actually started the work18:01
lucasagomesbut makes me wonder whether we would find a simpler solution18:02
max_loburyup18:02
*** derekh has quit IRC18:02
devanandaFWIW, this isn't a permanent solution18:02
lucasagomesdevananda, yea there's also that, because in cast() u dunno if the message was delivered18:02
*** igor_ has quit IRC18:02
lucasagomesdevananda, +118:02
max_loburdevananda, +18:02
devanandait solves the problem we have today where a client doesn't know if their requested action got dropped completely18:02
devanandacast + oh-noes-i-couldnt-get-taskmanager-lock18:03
devananda== lost requests18:03
max_lobur:)18:03
lucasagomesheh yea, well it can be tracked by looking at the states18:03
lucasagomesI mean cast() pool the states for a while18:03
lucasagomescheck if the target_*_state is now set with the state requested18:03
lucasagomesbut it's a lot on the clients back18:03
max_loburyea, doubles workload18:04
lucasagomesyea18:04
devanandathat is not a functional API18:04
devanandai mean, dropping requests silently on a regular basis is not a functional service18:05
max_loburso, the final verdict for change node power state:18:05
max_lobur1. if rpc_node.target_power_state is not None: - sync 2. Anything else - async18:05
lucasagomesack for me18:06
devanandamax_lobur: so, when will (1) ever be true inside of a task_manager lock?18:06
max_loburwe can do it outside of lock18:07
lucasagomescall() -> check the target_power_state -> spawn the greenthread -> return18:07
max_loburit doesn't require lock18:07
devanandaactually, nvm -- someone could implement a driver differently. yea, do that outside of lock and ++ from me18:07
max_loburbut..18:07
max_loburanother race :)18:07
devanandaright. that's why i asked18:07
max_loburyep, should be inside of lock18:07
max_loburcurrently I don't see other way to prevent race with target_power_state18:08
max_loburmaybe db transaction - but it's the same18:08
max_loburjust more complex to read18:08
lucasagomesyea I was thinking about testing after the lock18:09
devanandamax_lobur: https://github.com/openstack/ironic/blob/master/ironic/conductor/utils.py#L8718:09
lucasagomesthe sync will do 2 things: test if we can get a lock and if the target_node_state is already set... both would return 40918:09
lucasagomesrest async18:09
devanandamax_lobur: so target_power_state should always be set to None before lock is released, regardless of success or failure of the power driver18:09
*** romcheg1 has joined #openstack-ironic18:10
*** ifarkas_ has quit IRC18:10
devanandamax_lobur: so checking it inside of lock is not going to do anything -- if we got the lock, and target_power_state is not none -- it means we hit a bug or a conductor has crashed somewhere else and left a lock open18:10
devanandas/and left a lock open//18:10
devanandawe hit a bug18:10
max_loburhmm18:10
max_loburyou're right18:10
max_loburvery true18:10
max_loburso how do you guys think18:11
max_loburwhat should we do if we have node dropped in the middle of power change18:11
max_loburlet's assume it remain powered on18:12
max_loburbut targed_power_state is off18:12
*** saju_m has quit IRC18:12
max_loburhow should we process f.e. reboot request for that?18:12
devanandamax_lobur: so, in that case, node.reservation is not None18:12
devanandalock is left open18:12
max_loburtrue18:12
devanandawhat should happen is, when taht conductor's heartbeat times out18:12
devanandathe node is remapped onto the ring, another cdr takes over18:13
*** martyntaylor has joined #openstack-ironic18:13
devanandaand triggers the "take over" code path18:13
devanandawhich hasn't been written yet -- but that code will recognize a power operation was in progress18:13
devanandatarget_power_state != None && target_power_state != current_power_state18:13
devanandaand so it will try to finish the task18:13
max_loburcool18:14
lucasagomeshmm that also makes me think if breaking the lock also would need to restart the target_*states18:14
lucasagomesrestart I mean set to None18:14
max_loburso, for change power state - nothing left for async validation18:14
devanandalucasagomes: so this is where automatic lock breaking during takeover makes a lot of sense18:14
devanandalucasagomes: and where exposing it in API gets really awkward18:14
max_lobur* for sync18:14
devanandamax_lobur: right. just take the lock sync, then start all work asycn18:15
max_loburdevananda, +18:15
lucasagomesdevananda, yea18:15
devanandamax_lobur: and log any errors in node.last_error18:15
max_loburyup18:15
max_loburcall() -> acquire lock -> spawn the greenthread -> return 20218:15
devanandamax_lobur: for deploy, i think it is the same. only vendor_passthru is really going to need sync request validation to determine if the requested method even exists18:16
devanandathat part of API is undefined, so we should let users know when they make unsupported requests18:16
devanandarather than just 202 and drop them on the back end...18:16
devanandamax_lobur: yes18:16
*** athomas has quit IRC18:16
max_loburk, I'll update my patch18:17
max_loburlucasagomes, call() -> acquire lock -> spawn the greenthread -> return 20218:17
max_loburmakes sense to you?18:17
lucasagomesyup makes sense18:17
max_loburcool :)18:17
lucasagomesif node is already locked make sure it does return 40918:17
max_loburyup, Node locked exception is a child of Conflict18:18
max_loburwhich is 40918:18
lucasagomes:)18:18
max_loburk guys, I'll join meeting from home18:19
max_loburwill back in ~40 minutes18:19
NobodyCam:)18:20
max_loburwill back just in time :D18:20
devanandabbiab as well18:22
*** rloo has quit IRC18:22
*** max_lobur is now known as max_lobur_afk18:23
*** lucasagomes is now known as lucas-afk18:26
*** saju_m has joined #openstack-ironic18:29
*** wusWWW has joined #openstack-ironic18:29
NobodyCamt minus 3018:30
*** rwsu has quit IRC18:36
*** jdob_ has quit IRC18:37
*** jdob has joined #openstack-ironic18:37
*** zigo has quit IRC18:45
*** aignatov_ is now known as aignatov18:46
NobodyCamt minus 1418:46
romcheg1*is trying to get home in time*18:48
NobodyCamheehe18:49
*** zigo has joined #openstack-ironic18:49
*** rwsu has joined #openstack-ironic18:51
*** JoshNang has joined #openstack-ironic18:51
*** saju_m has quit IRC18:51
*** saju_m has joined #openstack-ironic18:52
*** rloo has joined #openstack-ironic18:53
*** haomeng2 has joined #openstack-ironic18:54
NobodyCamt - 518:55
matty_dubsopenstack-meeting-alt?18:55
* matty_dubs can never remember which meetings are in -alt and which aren't18:55
NobodyCam- #openstack-meeting18:56
matty_dubsAh, thanks18:56
NobodyCam:)18:56
jrollNobodyCam: this meeting is on goals for I3 etc, right?18:56
NobodyCamjroll: https://wiki.openstack.org/wiki/Meetings/Ironic#Agenda_for_next_meeting18:56
jrollthanks18:56
NobodyCam^^ is full agenda18:56
NobodyCami3 is on there18:57
jrollyep18:57
devanandalucas-afk: re: 70863, do you feel it needs another iteration, or just add tests in a second patch? If so, can you give some feedback on the review about what tests you feel are missing?18:57
*** saju_m has quit IRC18:58
*** max_lobur_cell has joined #openstack-ironic18:58
*** lucas-afk is now known as lucasagomes18:59
NobodyCamt - 118:59
NobodyCamwb lucasagomes / devananda18:59
max_lobur_cellStill on road :-/18:59
NobodyCam:-P18:59
max_lobur_cellBut here :)18:59
* NobodyCam heads over to other channel19:00
lucasagomesdevananda, will do19:00
lucasagomesgoing to the meeting19:00
*** max_lobur_cell has quit IRC19:12
*** digambar has quit IRC19:19
*** martyntaylor has quit IRC19:24
*** epim has joined #openstack-ironic19:25
*** thedodd has quit IRC19:30
openstackgerritA change was merged to openstack/python-ironicclient: Fix node-create help requiring chassis uuid  https://review.openstack.org/7078919:32
openstackgerritA change was merged to openstack/ironic: Ensure parameter order of assertEqual correct  https://review.openstack.org/7148619:33
*** saju_m has joined #openstack-ironic19:38
*** haomeng2 has quit IRC19:46
*** zigo has quit IRC19:48
*** Haomeng has left #openstack-ironic19:54
*** Haomeng has joined #openstack-ironic19:55
*** rongze has joined #openstack-ironic19:59
NobodyCamGreat meeting all20:00
*** max_lobur has joined #openstack-ironic20:00
Haomeng:)20:00
*** Wanyen has joined #openstack-ironic20:00
lucasagomesthanks all20:00
max_loburso20:00
lucasagomesso devananda max_lobur20:00
max_loburget rid of dict interface20:00
devanandaWanyen: welcome! :)20:01
WanyenThanks!20:01
lucasagomesit's not that we need it, but I think it would be nice to modify the objects/base.py for preventing other people from using the dict-like behavior for e.g20:01
*** saju_m has quit IRC20:01
max_loburIIRC we agreed that we will merge them20:01
lucasagomesack20:01
max_loburexcept last20:01
max_loburwhich removes dict interface20:01
*** openstack has joined #openstack-ironic21:32
* devananda heads out to a dentist appt.... bbl21:32
NobodyCami'd say enjoy but....21:33
NobodyCam:-p21:33
devananda:p21:34
*** martyntaylor has joined #openstack-ironic21:37
max_lobur:D21:40
*** martyntaylor has left #openstack-ironic21:42
*** jrist has quit IRC21:44
*** aignatov is now known as aignatov_21:50
openstackgerritGhe Rivero proposed a change to openstack/ironic: Move _set_boot_device to VendorPassthru class  https://review.openstack.org/7158521:56
*** aignatov_ is now known as aignatov21:57
*** jrist has joined #openstack-ironic21:58
*** jrist has quit IRC22:09
*** jdob has quit IRC22:18
*** aignatov is now known as aignatov_22:34
*** lucas-dinner has quit IRC22:40
NobodyCambrb22:41
*** max_lobur1 has joined #openstack-ironic22:44
*** max_lobur has quit IRC22:46
openstackgerritGhe Rivero proposed a change to openstack/ironic: Move ipminative _set_boot_device to VendorPassthru  https://review.openstack.org/7249522:46
*** mdurnosvistov_ has quit IRC22:52
*** rongze has joined #openstack-ironic22:57
*** pquerna has joined #openstack-ironic22:59
*** rongze has quit IRC23:02
*** romcheg1 has quit IRC23:04
NobodyCamwalkies time23:07
NobodyCambbiafm23:07
*** thedodd has quit IRC23:13
*** matty_dubs is now known as matty_dubs|gone23:22
*** jog0 has joined #openstack-ironic23:38
jog0devananda: https://review.openstack.org/#/c/58940/23:38
*** max_lobur1 has quit IRC23:39
jog0hoping to get a +1 from one of the ironic cores23:39
NobodyCamlol it had one from me :-p23:46
NobodyCambut I don't have a esxi test env atm23:47
*** rloo has quit IRC23:47
*** mrda is now known as mrda_away23:50
mrda_awaytime to go, ttyall tomorrow23:51
NobodyCamnight mrda_away23:51
NobodyCam:)23:51
*** ndipanov has quit IRC23:57
NobodyCamjog0: do you happen to know if vim-cmd is installed by default23:57
*** rongze has joined #openstack-ironic23:57
devanandajog0: i can't speak to the VMware specific commands therein, but the approach looks sound and he's fixed my earlier -123:59
devanandajog0: also, i thought ya'll were moving away from using \ to extend lines?23:59
devanandathere's several of those23:59

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