17:02:25 <boris-42> #startmeeting Rally 17:02:25 <openstack> Meeting started Tue Nov 18 17:02:25 2014 UTC and is due to finish in 60 minutes. The chair is boris-42. Information about MeetBot at http://wiki.debian.org/MeetBot. 17:02:26 <openstack> Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 17:02:29 <openstack> The meeting name has been set to 'rally' 17:02:52 <boris-42> #topic OpenStack summit 17:03:05 <boris-42> Okay OpenStack summit was quite productive as usually 17:03:24 <boris-42> and I would like just to share with some interesting documents 17:03:43 <boris-42> #link https://etherpad.openstack.org/p/kilo-rally-osprofiler 17:03:57 <boris-42> result of Rally design session 17:04:34 <boris-42> #link http://www.youtube.com/watch?v=77B9Un4xtK0 (one talk) 17:05:04 <boris-42> #link http://www.youtube.com/watch?v=_uOnZKu7OSY (another talk) 17:05:56 <boris-42> #link http://www.youtube.com/watch?v=iNKKvLFhkpE (and one more time a bit about rally) 17:06:35 <boris-42> As well there were nonofficial discussions 17:06:42 <boris-42> about benchmarking Network with Rally 17:06:48 <boris-42> and Rally as a Service 17:06:55 <boris-42> we decide to do both=) 17:07:06 <boris-42> Any questions?) 17:07:21 <boris-42> (so I'll start mailing list threads about this) 17:07:27 <zhiyan> yes 17:07:32 <boris-42> zhiyan: ?) 17:07:46 <andreykurilin_> hi all:) 17:07:50 <zhiyan> for osprofiler integration, i would like to take trove and zaqar 17:08:11 <boris-42> zhiyan: okay 17:08:13 <zhiyan> actually trove ones are under review already 17:08:22 <boris-42> zhiyan: let's change topic 17:08:28 <boris-42> #topic OSprofiler integration 17:08:38 <boris-42> zhiyan: so could you share links on reviews? 17:09:12 <zhiyan> another one is about adding a new mongodb based notifier 17:09:17 <zhiyan> yes, 2 secs pls 17:09:32 <zhiyan> https://review.openstack.org/#/c/116653/ 17:09:49 <zhiyan> https://review.openstack.org/#/c/116654/ 17:09:55 <boris-42> #link https://review.openstack.org/#/c/116653/ 17:10:02 <boris-42> #link https://review.openstack.org/#/c/116654/ 17:10:09 <zhiyan> https://review.openstack.org/#/c/116671/ 17:10:15 <zhiyan> oops, thanks 17:10:19 <boris-42> ya 17:10:39 <boris-42> So I will try to find time to review those patches 17:10:57 <boris-42> zhiyan: about mongodb backend we will need to setup dsvm functional job 17:11:04 <zhiyan> btw, i have talked them with trove team closely, them all agreed to land osprofiler stuff asap in k 17:11:05 <boris-42> zhiyan: for osprofiler before doing it.. 17:11:16 <boris-42> zhiyan: nice 17:11:23 <boris-42> zhiyan: btw what about using trove for backend?) 17:11:26 <zhiyan> you are late.. lol 17:11:34 <boris-42> zhiyan: where where?) 17:12:06 <zhiyan> i'm making it locally, just verifiying it before your ping :) 17:12:15 <zhiyan> ok, i see your idea 17:12:44 <zhiyan> i mean dsvm one 17:12:58 <boris-42> zhiyan: I am late with what?) 17:13:03 <boris-42> zhiyan: adding job? 17:13:05 <zhiyan> but probably i need to know more details 17:13:37 <zhiyan> joke, because i already started doing it 17:14:25 <boris-42> zhiyan: ah okay, so actually before we land your work we need to have functional testing 17:14:43 <boris-42> zhiyan: cause it's already merged to heat, cinder, glance and I don't won't to break whole world= 17:14:54 <zhiyan> make sense 17:15:01 <boris-42> zhiyan: okay I'll look at your patches when you publish them=) 17:15:07 <boris-42> so let's move to next topic=) 17:15:08 <zhiyan> thanks! 17:15:14 <boris-42> #topic Generic cleanup 17:15:38 <boris-42> Okay we finally finished refactoring of generic cleanup mechanism 17:15:53 <boris-42> so now it's resource oriented and it's really simple to extend by plugins 17:16:15 <boris-42> all plugins are here https://github.com/stackforge/rally/blob/master/rally/benchmark/context/cleanup/resources.py 17:16:29 <boris-42> so it's just about making subclasses and overriding probably some functions.. 17:16:58 <boris-42> This new cleanup engine is much safer and it has repeats and speed limiations and better logging of non deleted resources 17:17:06 <boris-42> so one more nice improvments 17:17:43 <boris-42> Any questions?) 17:18:06 <boris-42> okay seem no questions lol 17:18:17 <boris-42> #topic Next steps for generic cleanup 17:18:50 <boris-42> So there is only one left step, to make disaster cleanup, when another instance of Rally can clean up everthing in case of failure 17:19:00 <boris-42> msdubov is going to work on this 17:19:31 <boris-42> msdubov_: aorund? 17:20:03 <boris-42> okay seems like he is not around=) 17:20:07 <boris-42> let's move to next topic 17:20:11 <zhiyan> lol 17:20:17 <boris-42> zhiyan: ya=) 17:20:31 <boris-42> #topic New better Rally reports and future steps 17:20:37 <boris-42> amaretskiy: could you share with updates 17:20:51 <amaretskiy> https://review.openstack.org/#/c/131844/ 17:21:01 <amaretskiy> here are a lot of improvements 17:21:06 <amaretskiy> + bugfix 17:21:33 <amaretskiy> SLA, Failues, Scenario output 17:21:36 <amaretskiy> etc... 17:22:00 <amaretskiy> http://logs.openstack.org/44/131844/18/check/gate-rally-dsvm-rally/9872f9c/ 17:22:16 <amaretskiy> http://logs.openstack.org/44/131844/18/check/gate-rally-dsvm-rally/9872f9c/rally-plot/results.html.gz#/VMTasks.boot_runcommand_delete 17:22:28 <amaretskiy> http://logs.openstack.org/44/131844/18/check/gate-rally-dsvm-rally/9872f9c/rally-plot/results.html.gz#/Dummy.dummy_exception_probability#failures 17:22:45 <boris-42> amaretskiy: --verbose plese tell us what are you doing 17:22:52 <boris-42> lol 17:23:00 <amaretskiy> there are links above 17:23:05 <amaretskiy> take a look at tabs 17:23:22 <amaretskiy> Failures - we see there an exceptions 17:23:35 <amaretskiy> that happened during the scenario run 17:23:45 <amaretskiy> another Tab - Output 17:24:02 <amaretskiy> this is where we see scenario output (if any) 17:24:21 <amaretskiy> Also there is a SLA data at the top of Overview tab 17:25:00 <amaretskiy> there are also another improvements, like re-styling of page http://logs.openstack.org/44/131844/18/check/gate-rally-dsvm-rally/9872f9c/ 17:25:41 <amaretskiy> That is what is going to be merged soon (I hope :) ) 17:25:51 <amaretskiy> And there ar esome plans for next patch 17:25:53 <boris-42> amaretskiy: so what about future stuff that you are going to do?) 17:26:09 <amaretskiy> I'm going to introduce "overview page" 17:26:31 <amaretskiy> where we can observe all scenarion within the benchmark in condensed view 17:26:46 <amaretskiy> so there will be more easy to compare the results 17:27:23 <boris-42> amaretskiy: nice 17:27:47 <amaretskiy> and I'm going to aggregare Failures - do not repeat similar 17:28:01 <amaretskiy> just show differebt failures and their count 17:28:32 <amaretskiy> + fix browser back-forward buttons behavoir 17:28:46 <amaretskiy> now there is no effect - that is an issue 17:30:14 <amaretskiy> boris-42, that's all from my side :) 17:31:14 <boris-42> amaretskiy: great work on reports 17:31:21 <boris-42> amaretskiy: now our bosses are happy=) 17:31:30 <amaretskiy> :) 17:31:42 <boris-42> arcimboldo: hi hi 17:31:45 <arcimboldo> hi all 17:31:50 <arcimboldo> happy to join you 17:32:03 <amaretskiy> arcimboldo hi 17:32:17 <boris-42> arcimboldo: so we have here some kind of weekly meeting 17:32:42 <msdubov_> Sorry seems like I've had some connection issues 17:32:43 <boris-42> arcimboldo: where we are trying to share updates and dicuss different stuff 17:33:07 <boris-42> #topic Dropping root requirements for rally setup.py 17:33:25 <arcimboldo> ok I think I can start 17:33:28 <boris-42> arcimboldo: so your idea is to use better locations for files * 17:33:38 <arcimboldo> yes, right now, there are two issues: 17:33:46 <arcimboldo> 1) the install script fails if you are not root 17:33:58 <arcimboldo> 2) setup.cfg tries to install the completion file in /etc/bash_completion.d 17:34:10 <arcimboldo> however, rally does not need to run as root, so I would suggest the following: 17:34:24 <arcimboldo> 1) replace /etc/bash_completion with etc/bash_completion in setup.cfg. 17:34:44 <arcimboldo> this will install in either VIRTUALENV_PATH/etc/bash_completion, if you are running inside a virtualenv, or in /usr/local/etc/bash_completion otherwise 17:35:03 <arcimboldo> 2) the install script will check if you are root or not, and if you are installing in a virtualenv 17:35:05 <boris-42> hm maybe ~/etc/bash_completion ? 17:35:14 <boris-42> otherwise it may produce some issues? 17:35:16 <arcimboldo> it's not standard 17:35:24 <boris-42> ah 17:35:32 <boris-42> aahhh I see 17:35:43 <arcimboldo> if you are running as root, _and_ not installing in a virtualenv, it makes sense to copy the file in /etc/bash_completion 17:35:50 <arcimboldo> this could be done by teh script 17:35:57 <boris-42> arcimboldo: yep 17:36:07 <boris-42> amaretskiy: one more question, what about rally.conf 17:36:09 <arcimboldo> if you are running as a user, a line can be added to the .bashrc 17:36:16 <boris-42> arcimboldo: ^ 17:36:56 <arcimboldo> well, rally.conf is not automatically copied in /etc/ as far as I understand, right? 17:37:13 <arcimboldo> it's copied by the script 17:37:14 <amaretskiy> rally.conf can be installed into user $HOME dir. I think 17:37:33 <arcimboldo> so again, if the script is run as normal user can be copied in ~/.rally/rally.conf 17:37:43 <arcimboldo> (which is where rally is looking for the configuration file) 17:38:11 <boris-42> arcimboldo: okay I think this totally makes sense 17:38:11 <amaretskiy> maybe it is reasonable to store rally.conf in virtualenv root dir? 17:38:29 <rediskin> imo nothing to discuss here. it is enough to file a bug, and assign it to amaretskiy or me 17:38:29 <boris-42> amaretskiy: good point=) 17:38:45 <boris-42> rediskin: arcimboldo is going to try to do it=) 17:38:54 <boris-42> arcimboldo: are you?) 17:38:56 <arcimboldo> amaretskiy, well, data files are usually installed in the virtualenv, but configuration files arent, as far as I know 17:39:02 <arcimboldo> boris-42, yes I can do it 17:39:20 <boris-42> arcimboldo: great so you can actually file a bug it's quite simple to do 17:39:44 <boris-42> arcimboldo: https://bugs.launchpad.net/rally 17:39:51 <boris-42> arcimboldo: and then try to fix it 17:39:56 <arcimboldo> ok 17:40:01 <boris-42> arcimboldo: as far as I remember I shared with you HowTo? 17:40:09 <arcimboldo> yes 17:40:22 <arcimboldo> reading it it's in my todo list :) 17:40:24 <boris-42> arcimboldo: first time it's a bit painfull=) 17:40:49 <oanufriev> https://github.com/openstack/oslo.config/blob/master/oslo/config/cfg.py#L476 17:41:13 <oanufriev> olso.config looks for configs not only at /etc 17:42:03 <boris-42> oanufriev: yep 17:42:13 <arcimboldo> oanufriev, I've already installed rally as standard user, and put my configuration in ~/.rally/rally.conf, so it works already 17:42:18 <arcimboldo> the only issue is with the installation 17:43:35 <boris-42> arcimboldo: so okay I think we discussed this well= 17:43:56 <boris-42> arcimboldo: btw did you run sucessfully against Folsom?) 17:44:08 <arcimboldo> boris-42, yes! 17:44:13 <boris-42> arcimboldo: WTF 17:44:14 <boris-42> =) 17:44:28 <arcimboldo> I've put a try/execpt around call that was raising an exception 17:44:37 <boris-42> arcimboldo: http://m.memegen.com/6vu5mf.jpg =) 17:44:58 <boris-42> arcimboldo: I think we should do that in upstream 17:45:04 <arcimboldo> inside _remove_associated_networks, around the to utils.check_service_status 17:45:10 <boris-42> arcimboldo: yep 17:45:14 <arcimboldo> but I only tested creation of virtual machines 17:45:15 <boris-42> arcimboldo: another good patch to do 17:45:24 <boris-42> arcimboldo: at least something works! 17:45:26 <arcimboldo> I don't know what else could fail 17:45:41 <boris-42> arcimboldo: but at least something works that is great=) 17:46:08 <boris-42> arcimboldo: so it makes sense to put try/except there 17:46:18 <boris-42> arcimboldo: one more patch for u=) 17:46:20 <arcimboldo> but the try/except should probably stay in benchmarks.utils, inside function check_service_status 17:46:40 <arcimboldo> if anything throws an exception, it should returns false. 17:47:16 <boris-42> arcimboldo: not sure about that, cause it can hide evil bugs 17:47:50 <boris-42> arcimboldo: maybe just put in user context on removing networks.. 17:48:15 <arcimboldo> what about logging the exception raised? 17:48:29 <boris-42> arcimboldo: ya something like that 17:48:30 <arcimboldo> raising an exception there is quite nasty, because you cannot cleanup 17:48:47 <arcimboldo> I had to delete the tenant by hand 17:49:00 <boris-42> arcimboldo: hm 17:49:08 <boris-42> arcimboldo: that shouldn't happend 17:49:14 <arcimboldo> so either you run it *before* creating anything, or you try to continue and then decide if perform the tests or just exit 17:49:20 <arcimboldo> (after proper cleanup) 17:50:08 <boris-42> arcimboldo: ah yep 17:50:10 <boris-42> arcimboldo: https://github.com/stackforge/rally/blob/master/rally/benchmark/context/users.py#L199 17:50:21 <boris-42> arcimboldo: msdubov_ ^ you forgot to put there try/excpet 17:50:42 <boris-42> arcimboldo: so the idea is to log failures * 17:50:55 <boris-42> arcimboldo: or at least warning there and put there try/except 17:51:11 <arcimboldo> It seems to me that this failure is not critical, since you can proceed even if you don't get the list of the services. 17:51:16 <arcimboldo> so you should continue 17:51:33 <arcimboldo> at least, in this very specific case: Folsom with nova-network 17:51:54 <boris-42> arcimboldo: so this code _remove_associated stuff is realted only to nova-network 17:51:58 <msdubov_> boris-42 As far as I remember it wasn't there before this patch? I tried not to change anything related to this 17:52:01 <boris-42> arcimboldo: and shouldn't be run agiant nova + neutron 17:52:22 <boris-42> msdubov_: hm you were last person who touched that piece of code 17:52:25 <boris-42> msdubov_: so=) 17:53:00 <msdubov_> https://github.com/stackforge/rally/blob/9089ea4e56a8426538303a7c4abaa4884576a90d/rally/benchmark/context/users.py that's the previos version 17:53:08 <msdubov_> https://github.com/stackforge/rally/blob/9089ea4e56a8426538303a7c4abaa4884576a90d/rally/benchmark/context/users.py#L173 17:53:09 <boris-42> msdubov_: doesn't matter =) 17:53:30 <msdubov_> There is try..except in the look 17:53:32 <msdubov_> *loop 17:53:42 <boris-42> msdubov_: it doesn't delete anything 17:53:47 <boris-42> msdubov_: if it raises exception 17:54:27 <msdubov_> boris-42 hm it just logs a warning, doesn't it? 17:54:29 <boris-42> arcimboldo: so as you found that bug, could you add some try/excpet good patch for beggign 17:54:32 <msdubov_> https://github.com/stackforge/rally/blob/master/rally/benchmark/context/users.py#L130 17:54:54 <msdubov_> boris-42 Exception is in the nova client initialization? 17:54:55 <boris-42> msdubov_: https://github.com/stackforge/rally/blob/master/rally/benchmark/context/users.py#L120 and what if this raises exception 17:55:04 <boris-42> msdubov_: ^ that line 17:55:09 <msdubov_> boris-42 Okay 17:56:03 <boris-42> Okay so meeting is quite close to end 17:56:07 <boris-42> #topic Free discussion 17:56:19 <boris-42> any questions? ideas? proposals?) 17:56:41 <msdubov_> Well since I missed some part of the meeting, I don't know whether you discussed rally info 17:56:58 <msdubov_> There is going to be an update: https://review.openstack.org/#/c/134666/ 17:57:12 <msdubov_> It introduces some explanatory texts about main entities in Rally 17:57:22 <msdubov_> and improves the overall user experience with this command 17:57:26 <msdubov_> Just to share 17:57:55 <msdubov_> As well as I'm hoping to finish soon covering Rally with docstrings, so that "rally info find ..." will return info for any query 17:58:06 <boris-42> msdubov_: nice 17:58:25 <boris-42> okay we have to end meeting 17:58:29 <boris-42> #endmeeting